Lines Matching refs:InductionVariable
77 void InductionVariable::AddUpperBound(Node* bound,
78 InductionVariable::ConstraintKind kind) {
87 void InductionVariable::AddLowerBound(Node* bound,
88 InductionVariable::ConstraintKind kind) {
163 AddCmpToLimits(&limits, cond, InductionVariable::kStrict, polarity);
166 AddCmpToLimits(&limits, cond, InductionVariable::kNonStrict, !polarity);
171 AddCmpToLimits(&limits, cond, InductionVariable::kNonStrict, polarity);
174 AddCmpToLimits(&limits, cond, InductionVariable::kStrict, !polarity);
183 VariableLimits* limits, Node* node, InductionVariable::ConstraintKind kind,
191 kind = (kind == InductionVariable::kStrict)
192 ? InductionVariable::kNonStrict
193 : InductionVariable::kStrict;
214 const InductionVariable* LoopVariableOptimizer::FindInductionVariable(
223 InductionVariable* LoopVariableOptimizer::TryGetInductionVariable(Node* phi) {
229 InductionVariable::ArithmeticType arithmeticType;
234 arithmeticType = InductionVariable::ArithmeticType::kAddition;
239 arithmeticType = InductionVariable::ArithmeticType::kSubtraction;
263 return zone()->New<InductionVariable>(phi, effect_phi, arith, incr, initial,
274 InductionVariable* induction_var = TryGetInductionVariable(phi);
288 InductionVariable* induction_var = entry.second;
316 InductionVariable* induction_var = entry.second;