reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
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);