reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
 1254   BasicBlock *BBInsertLocation = LS.Latch->getNextNode();
 1255   RRI.ExitSelector = BasicBlock::Create(Ctx, Twine(LS.Tag) + ".exit.selector",
 1257   RRI.PseudoExit = BasicBlock::Create(Ctx, Twine(LS.Tag) + ".pseudo.exit", &F,
 1261   bool Increasing = LS.IndVarIncreasing;
 1262   bool IsSignedPredicate = LS.IsSignedPredicate;
 1279   Value *IndVarStart = NoopOrExt(LS.IndVarStart);
 1282   B.CreateCondBr(EnterLoopCond, LS.Header, RRI.PseudoExit);
 1285   LS.LatchBr->setSuccessor(LS.LatchBrExitIdx, RRI.ExitSelector);
 1285   LS.LatchBr->setSuccessor(LS.LatchBrExitIdx, RRI.ExitSelector);
 1286   B.SetInsertPoint(LS.LatchBr);
 1287   Value *IndVarBase = NoopOrExt(LS.IndVarBase);
 1290   Value *CondForBranch = LS.LatchBrExitIdx == 1
 1294   LS.LatchBr->setCondition(CondForBranch);
 1301   Value *LoopExitAt = NoopOrExt(LS.LoopExitAt);
 1303   B.CreateCondBr(IterationsLeft, RRI.PseudoExit, LS.LatchExit);
 1311   for (PHINode &PN : LS.Header->phis()) {
 1316     NewPHI->addIncoming(PN.getIncomingValueForBlock(LS.Latch),
 1328   LS.LatchExit->replacePhiUsesWith(LS.Latch, RRI.ExitSelector);
 1328   LS.LatchExit->replacePhiUsesWith(LS.Latch, RRI.ExitSelector);