Lines Matching refs:induction_class
412 if (initial == nullptr || initial->induction_class != kInvariant) { in ClassifyNonTrivial()
490 switch (induction->induction_class) { in ClassifyNonTrivial()
529 if (induction->induction_class == kInvariant) { in RotatePeriodicInduction()
571 } else if (a->induction_class == kInvariant && b->induction_class == kInvariant) { in TransferAddSub()
573 } else if ((a->induction_class == kLinear && b->induction_class == kLinear) || in TransferAddSub()
574 (a->induction_class == kPolynomial && b->induction_class == kPolynomial)) { in TransferAddSub()
579 return CreateInduction(a->induction_class, a->operation, new_a, new_b, a->fetch, type_); in TransferAddSub()
581 } else if (a->induction_class == kInvariant) { in TransferAddSub()
585 if (b->induction_class == kWrapAround || b->induction_class == kPeriodic) { in TransferAddSub()
591 return CreateInduction(b->induction_class, b->operation, new_a, new_b, b->fetch, type_); in TransferAddSub()
593 } else if (b->induction_class == kInvariant) { in TransferAddSub()
597 if (a->induction_class == kWrapAround || a->induction_class == kPeriodic) { in TransferAddSub()
601 return CreateInduction(a->induction_class, a->operation, new_a, new_b, a->fetch, type_); in TransferAddSub()
614 } else if (a->induction_class == kInvariant) { in TransferNeg()
616 } else if (a->induction_class != kGeometric || a->operation == kMul) { in TransferNeg()
621 return CreateInduction(a->induction_class, a->operation, new_a, new_b, a->fetch, type_); in TransferNeg()
636 } else if (a->induction_class == kInvariant && b->induction_class == kInvariant) { in TransferMul()
638 } else if (a->induction_class == kInvariant && (b->induction_class != kGeometric || in TransferMul()
644 return CreateInduction(b->induction_class, b->operation, new_a, new_b, b->fetch, type_); in TransferMul()
646 } else if (b->induction_class == kInvariant && (a->induction_class != kGeometric || in TransferMul()
652 return CreateInduction(a->induction_class, a->operation, new_a, new_b, a->fetch, type_); in TransferMul()
667 a->induction_class == kLinear && in TransferConversion()
710 if (a != nullptr && a->induction_class == kInvariant) { in SolvePhiAllInputs()
716 if (b != nullptr && b->induction_class == kPeriodic) { in SolvePhiAllInputs()
734 if (b->induction_class == kInvariant) { in SolveAddSub()
743 if (a->induction_class == kInvariant) { in SolveAddSub()
747 } else if (b->induction_class == kLinear && b->type == type_) { in SolveAddSub()
771 if (a != nullptr && a->induction_class == kInvariant) { in SolveAddSub()
795 if (b != nullptr && b->induction_class == kInvariant && entry_phi == x) { in SolveOp()
799 if (a != nullptr && a->induction_class == kInvariant && entry_phi == y) { in SolveOp()
879 if (it != cycle_.end() && it->second->induction_class == kInvariant) { in SolveConversion()
926 if (a->induction_class == kInvariant && b->induction_class == kLinear) { in VisitCondition()
936 } else if (a->induction_class == kLinear && b->induction_class == kInvariant) { in VisitCondition()
1143 int c = LookupInfo(loop, cond->InputAt(0))->induction_class == kLinear ? 0 : 1; in RewriteBreakLoop()
1356 info->induction_class == kLinear && in IsNarrowingLinear()
1370 info1->induction_class == info2->induction_class && in InductionEqual()
1393 if (info->induction_class == kInvariant) { in InductionToString()
1419 if (info->induction_class == kLinear) { in InductionToString()
1424 } else if (info->induction_class == kPolynomial) { in InductionToString()
1429 } else if (info->induction_class == kGeometric) { in InductionToString()
1437 } else if (info->induction_class == kWrapAround) { in InductionToString()
1442 } else if (info->induction_class == kPeriodic) { in InductionToString()