Lines Matching refs:upper_expr
617 InductionInfo* upper_expr = b; in VisitCondition() local
627 if (cmp == kCondNE && ((stride_value == +1 && IsTaken(lower_expr, upper_expr, kCondLE)) || in VisitCondition()
628 (stride_value == -1 && IsTaken(lower_expr, upper_expr, kCondGE)))) { in VisitCondition()
636 !FitsNarrowerControl(lower_expr, upper_expr, stride_value, a->type, cmp)) { in VisitCondition()
644 VisitTripCount(loop, lower_expr, upper_expr, stride_expr, stride_value, type, cmp); in VisitCondition()
651 InductionInfo* upper_expr, in VisitTripCount() argument
682 InductionInfo* trip_count = upper_expr; in VisitTripCount()
683 const bool is_taken = IsTaken(lower_expr, upper_expr, cmp); in VisitTripCount()
684 const bool is_finite = IsFinite(upper_expr, stride_value, type, cmp); in VisitTripCount()
717 InductionInfo* taken_test = CreateInvariantOp(op, lower_expr, upper_expr); in VisitTripCount()
724 InductionInfo* upper_expr, in IsTaken() argument
731 && IsAtLeast(upper_expr, &upper_value) in IsTaken()
735 && IsAtLeast(upper_expr, &upper_value) in IsTaken()
739 && IsAtMost(upper_expr, &upper_value) in IsTaken()
743 && IsAtMost(upper_expr, &upper_value) in IsTaken()
751 bool HInductionVarAnalysis::IsFinite(InductionInfo* upper_expr, in IsFinite() argument
762 (IsAtMost(upper_expr, &value) && value <= (max - stride_value + 1)); in IsFinite()
764 return (IsAtMost(upper_expr, &value) && value <= (max - stride_value)); in IsFinite()
767 (IsAtLeast(upper_expr, &value) && value >= (min - stride_value - 1)); in IsFinite()
769 return (IsAtLeast(upper_expr, &value) && value >= (min - stride_value)); in IsFinite()
777 InductionInfo* upper_expr, in FitsNarrowerControl() argument
797 IsAtLeast(upper_expr, &value) && value >= min && in FitsNarrowerControl()
798 IsAtMost(upper_expr, &value) && value <= max; in FitsNarrowerControl()