Lines Matching refs:Preheader
526 auto *Preheader = L->getLoopPreheader();
527 assert(Preheader && "Preheader should exist!");
549 auto *OldBr = dyn_cast<BranchInst>(Preheader->getTerminator());
550 assert(OldBr && "Preheader must end with a branch");
551 assert(OldBr->isUnconditional() && "Preheader must have a single successor");
558 // 0. Preheader 1. Preheader 2. Preheader
582 // Rewrite phis in the exit block to get their inputs from the Preheader
589 P.setIncomingBlock(PredIndex, Preheader);
601 P.getIncomingBlock(PredIndex) == Preheader) &&
607 DTU.applyUpdates({{DominatorTree::Insert, Preheader, ExitBlock}});
609 MSSAU->applyUpdates({{DominatorTree::Insert, Preheader, ExitBlock}}, *DT);
616 Builder.SetInsertPoint(Preheader->getTerminator());
619 Preheader->getTerminator()->eraseFromParent();
622 DTU.applyUpdates({{DominatorTree::Delete, Preheader, L->getHeader()}});
624 MSSAU->applyUpdates({{DominatorTree::Delete, Preheader, L->getHeader()}},
1232 BasicBlock *Preheader = L->getLoopPreheader();
1234 if (!Preheader)