Lines Matching defs:to
10 * Unless required by applicable law or agreed to in writing, software
26 * classification, the lexicographically first entry-phi is rotated to the front.
44 // If found, bring that entry-phi to front.
57 * Returns true if the from/to types denote a narrowing, integral conversion (precision loss).
59 static bool IsNarrowingIntegralConversion(Primitive::Type from, Primitive::Type to) {
62 return to == Primitive::kPrimByte || to == Primitive::kPrimShort
63 || to == Primitive::kPrimChar || to == Primitive::kPrimInt;
65 return to == Primitive::kPrimByte || to == Primitive::kPrimShort
66 || to == Primitive::kPrimChar;
69 return to == Primitive::kPrimByte;
100 // Detects sequence variables (generalized induction variables) during an outer to inner
101 // traversal of all loops using Gerlek's algorithm. The order is important to enable
115 // algorithm. Due to the descendant-first nature, classification happens "on-demand".
166 // Pop the stack to build the SCC for classification.
248 // Rotate proper entry-phi to front.
276 // temporary meaning to its nodes, seeded from the phi instruction and back.
311 // rotating each first element to the end. Lastly, phi is classified.
332 // in preparation of assigning this to the previous variable in the sequence.
360 // can be combined with an invariant to yield a similar result. Even two linear inputs can
396 // can be multiplied with an invariant to yield a similar but multiplied result.
449 Primitive::Type to) {
452 if (IsNarrowingIntegralConversion(from, to)) {
454 if (a->type == to || (a->type == from && IsNarrowingIntegralConversion(from, to))) {
455 return CreateInduction(kLinear, a->op_a, a->op_b, to);
493 // Otherwise, try to solve for a periodic seeded from phi onward.
494 // Only tight multi-statement cycles are considered in order to
520 // invariant value, seeded from phi, keeps adding to the stride of the induction.
558 Primitive::Type to = conversion->GetResultType();
560 // narrowest encountered type is recorded with the induction to account for the precision loss.
561 if (IsNarrowingIntegralConversion(from, to)) {
564 type_ = Narrowest(type_, to);
699 // Assign the trip-count expression to the loop control. Clients that use the information
792 // Note: The `value` is initialized to please valgrind - the compiler can reorder