Lines Matching defs:Exit
246 BasicBlock *Exit = BI->getSuccessor(1);
247 if (L->contains(Exit))
248 Exit = BI->getSuccessor(0);
251 if (!Exit->getPostdominatingDeoptimizeCall())
307 // Exit Loop | | Loop |
312 // Exit
520 BasicBlock *Exit = BI->getSuccessor(0);
522 bool BISuccsSwapped = L->contains(Exit);
524 std::swap(Exit, NewHeader);
526 assert(L->contains(NewHeader) && !L->contains(Exit) &&
821 // The OrigPreheader branches to the NewHeader and Exit now. Then, inform
824 Updates.push_back({DominatorTree::Insert, OrigPreheader, Exit});
865 // Preserve canonical loop form, which means that 'Exit' should have only
866 // one predecessor. Note that Exit could be an exit block for multiple
869 SmallVector<BasicBlock *, 4> ExitPreds(predecessors(Exit));
874 if (!PredLoop || PredLoop->contains(Exit) ||
879 ExitPred, Exit,
881 ExitSplit->moveBefore(Exit);
888 // simpler. The first step is to remove the extra edge to the Exit block.
889 Exit->removePredecessor(OrigPreheader, true /*preserve LCSSA*/);
895 if (DT) DT->deleteEdge(OrigPreheader, Exit);
899 MSSAU->removeEdge(OrigPreheader, Exit);