Lines Matching defs:IV
2232 // Step 2: Insert new IV and loop condition:
2710 // Step 4: Rewrite the loop into a countable form, with canonical IV.
2714 auto *IV = Builder.CreatePHI(Ty, 2, CurLoop->getName() + ".iv");
2720 Builder.CreateAdd(IV, ConstantInt::get(Ty, 1), IV->getName() + ".next",
2729 // Populate the IV PHI.
2730 IV->addIncoming(ConstantInt::get(Ty, 0), LoopPreheaderBB);
2731 IV->addIncoming(IVNext, LoopHeaderBB);
2776 Intrinsic::ID &IntrinID, Instruction *&IV,
2824 if (match(NBits, m_c_Add(m_Instruction(IV),
2829 m_Sub(m_Instruction(IV),
2834 IV = NBits;
2839 auto *IVPN = dyn_cast<PHINode>(IV);
2947 Instruction *IV;
2951 if (!detectShiftUntilZeroIdiom(CurLoop, SE, ValShiftedIsZero, IntrID, IV,
2970 Builder.SetCurrentDebugLocation(IV->getDebugLoc());
2997 // Step 1: Compute the loop's final IV value / trip count.
3030 // induction variable's final value instead of the orig. IV itself.
3032 IV->replaceUsesOutsideBlock(IVFinal, LoopHeaderBB);
3034 // Step 3: Rewrite the loop into a countable form, with canonical IV.
3055 // The original IV, but rebased to be an offset to the CIV.
3058 IVDePHId->takeName(IV);
3065 // Populate the IV PHI.
3075 IV->replaceAllUsesWith(IVDePHId);
3076 IV->eraseFromParent();