Lines Matching refs:ExitingBB
152 bool linearFunctionTestReplace(Loop *L, BasicBlock *ExitingBB,
2014 static ICmpInst *getLoopTest(Loop *L, BasicBlock *ExitingBB) { in getLoopTest() argument
2021 BranchInst *BI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in getLoopTest()
2029 static bool needsLFTR(Loop *L, BasicBlock *ExitingBB) { in needsLFTR() argument
2031 ICmpInst *Cond = getLoopTest(L, ExitingBB); in needsLFTR()
2195 static PHINode *FindLoopCounter(Loop *L, BasicBlock *ExitingBB, in FindLoopCounter() argument
2200 Value *Cond = cast<BranchInst>(ExitingBB->getTerminator())->getCondition(); in FindLoopCounter()
2236 if (ICmpInst *Cond = getLoopTest(L, ExitingBB)) in FindLoopCounter()
2251 !mustExecuteUBIfPoisonOnPathTo(Phi, ExitingBB->getTerminator(), DT)) in FindLoopCounter()
2282 static Value *genLoopLimit(PHINode *IndVar, BasicBlock *ExitingBB, in genLoopLimit() argument
2309 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in genLoopLimit()
2351 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in genLoopLimit()
2370 linearFunctionTestReplace(Loop *L, BasicBlock *ExitingBB, in linearFunctionTestReplace() argument
2385 if (ExitingBB == L->getLoopLatch()) { in linearFunctionTestReplace()
2392 if (ICmpInst *LoopTest = getLoopTest(L, ExitingBB)) in linearFunctionTestReplace()
2397 mustExecuteUBIfPoisonOnPathTo(IncVar, ExitingBB->getTerminator(), DT); in linearFunctionTestReplace()
2427 IndVar, ExitingBB, ExitCount, UsePostInc, L, Rewriter, SE); in linearFunctionTestReplace()
2433 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in linearFunctionTestReplace()
2681 if (auto *ExitingBB = L->getExitingBlock()) in run() local
2682 ExitingBlocks.push_back(ExitingBB); in run()
2683 for (BasicBlock *ExitingBB : ExitingBlocks) { in run()
2685 if (!isa<BranchInst>(ExitingBB->getTerminator())) in run()
2688 if (!needsLFTR(L, ExitingBB)) in run()
2691 const SCEV *ExitCount = SE->getExitCount(L, ExitingBB); in run()
2699 PHINode *IndVar = FindLoopCounter(L, ExitingBB, ExitCount, SE, DT); in run()
2719 Changed |= linearFunctionTestReplace(L, ExitingBB, in run()