Home
last modified time | relevance | path

Searched refs:ExitingBB (Results 1 – 17 of 17) sorted by relevance

/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DIndVarSimplify.cpp1076 if (ExitingBB == L->getLoopLatch()) { in linearFunctionTestReplace()
1442 for (auto *ExitingBB : ExitingBlocks) { in canonicalizeExitCondition() local
1488 for (auto *ExitingBB : ExitingBlocks) { in canonicalizeExitCondition() local
1573 if (LI->getLoopFor(ExitingBB) != L) in optimizeLoopExits()
1629 for (BasicBlock *ExitingBB : ExitingBlocks) { in optimizeLoopExits()
1676 foldExit(L, ExitingBB, true, DeadInsts); in optimizeLoopExits()
1696 foldExit(L, ExitingBB, false, DeadInsts); in optimizeLoopExits()
1747 auto BadExit = [&](BasicBlock *ExitingBB) { in predicateLoopExits() argument
1751 if (LI->getLoopFor(ExitingBB) != L) in predicateLoopExits()
1986 if (LI->getLoopFor(ExitingBB) != L) in run()
[all …]
H A DLoopPredication.cpp1072 for (BasicBlock *ExitingBB : ExitingBlocks) { in getMinAnalyzeableBackedgeTakenCount()
1073 const SCEV *ExitCount = SE.getExitCount(L, ExitingBB); in getMinAnalyzeableBackedgeTakenCount()
1076 assert(DT.dominates(ExitingBB, L->getLoopLatch()) && in getMinAnalyzeableBackedgeTakenCount()
1137 for (auto *ExitingBB : ExitingBlocks) { in predicateLoopExits() local
1138 if (LI->getLoopFor(ExitingBB) != L) in predicateLoopExits()
1141 auto *BI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in predicateLoopExits()
1185 for (BasicBlock *ExitingBB : ExitingBlocks) { in predicateLoopExits()
1189 if (LI->getLoopFor(ExitingBB) != L) in predicateLoopExits()
1193 auto *BI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in predicateLoopExits()
1201 const SCEV *ExitCount = SE->getExitCount(L, ExitingBB); in predicateLoopExits()
[all …]
H A DLoopBoundSplit.cpp201 BasicBlock *ExitingBB = L.getExitingBlock(); in canSplitLoopBound() local
203 if (!ExitingBB) in canSplitLoopBound()
206 BranchInst *ExitingBI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in canSplitLoopBound()
H A DLoopUnrollPass.cpp639 BasicBlock *ExitingBB, *ExitBB; in analyzeLoopUnrollCost() local
640 std::tie(ExitingBB, ExitBB) = ExitWorklist.pop_back_val(); in analyzeLoopUnrollCost()
647 Value *Op = PN->getIncomingValueForBlock(ExitingBB); in analyzeLoopUnrollCost()
H A DSimpleLoopUnswitch.cpp195 static bool areLoopExitPHIsLoopInvariant(Loop &L, BasicBlock &ExitingBB, in areLoopExitPHIsLoopInvariant() argument
205 if (!L.isLoopInvariant(PN->getIncomingValueForBlock(&ExitingBB))) in areLoopExitPHIsLoopInvariant()
/llvm-project-15.0.7/polly/lib/CodeGen/
H A DUtils.cpp116 BasicBlock *ExitingBB = S.getExitingBlock(); in executeScopConditionally() local
118 assert(ExitingBB && "Must be a simple region"); in executeScopConditionally()
120 splitEdge(ExitingBB, ExitBB, ".merge_new_and_old", &DT, &LI, &RI); in executeScopConditionally()
H A DCodeGeneration.cpp265 auto *ExitingBB = S.getExitingBlock(); in generateCode() local
266 assert(ExitingBB); in generateCode()
267 DT.changeImmediateDominator(MergeBlock, ExitingBB); in generateCode()
H A DBlockGenerators.cpp1419 for (auto ExitingBB : predecessors(R->getExit())) { in isDominatingSubregionExit() local
1421 if (!R->contains(ExitingBB)) in isDominatingSubregionExit()
1424 if (!DT.dominates(BB, ExitingBB)) in isDominatingSubregionExit()
1435 for (auto ExitingBB : predecessors(R->getExit())) { in findExitDominator() local
1437 if (!R->contains(ExitingBB)) in findExitDominator()
1442 Common = ExitingBB; in findExitDominator()
1446 Common = DT.findNearestCommonDominator(Common, ExitingBB); in findExitDominator()
H A DPPCGCodeGeneration.cpp3533 auto *ExitingBB = S->getExitingBlock(); in generateCode() local
3534 assert(ExitingBB); in generateCode()
3536 DT->changeImmediateDominator(MergeBlock, ExitingBB); in generateCode()
/llvm-project-15.0.7/polly/lib/Support/
H A DScopHelper.cpp107 BasicBlock *ExitingBB = R->getExitingBlock(); in simplifyRegionExit() local
116 if (!ExitingBB) { in simplifyRegionExit()
126 ExitingBB = in simplifyRegionExit()
135 RI->setRegionFor(ExitingBB, R); in simplifyRegionExit()
138 R->replaceExitRecursive(ExitingBB); in simplifyRegionExit()
141 assert(ExitingBB == R->getExitingBlock()); in simplifyRegionExit()
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DMachineBlockPlacement.cpp2180 MachineBasicBlock *ExitingBB = nullptr; in findBestLoopExit() local
2199 MachineBasicBlock *OldExitingBB = ExitingBB; in findBestLoopExit()
2240 if (!ExitingBB || SuccLoopDepth > BestExitLoopDepth || in findBestLoopExit()
2245 ExitingBB = MBB; in findBestLoopExit()
2251 ExitingBB = OldExitingBB; in findBestLoopExit()
2257 if (!ExitingBB) { in findBestLoopExit()
2271 !BlocksExitingToOuterLoop.count(ExitingBB)) in findBestLoopExit()
2277 return ExitingBB; in findBestLoopExit()
2323 if (!ExitingBB) in rotateLoop()
2330 if (Bottom == ExitingBB) in rotateLoop()
[all …]
H A DModuloSchedule.cpp1743 MachineBasicBlock *ExitingBB = CreateLCSSAExitingBlock(); in peelPrologAndEpilogs() local
1744 EliminateDeadPhis(ExitingBB, MRI, LIS, /*KeepSingleSrcPhi=*/true); in peelPrologAndEpilogs()
1836 EliminateDeadPhis(ExitingBB, MRI, LIS); in peelPrologAndEpilogs()
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DLoopSimplify.cpp620 for (auto *ExitingBB : ExitingBlocks) in simplifyOneLoop() local
621 for (auto *SuccBB : successors(ExitingBB)) { in simplifyOneLoop()
/llvm-project-15.0.7/llvm/lib/Transforms/Vectorize/
H A DVPlan.cpp337 BasicBlock *ExitingBB = State->CFG.VPBB2IRBB[ExitingVPBB]; in execute() local
340 cast<BranchInst>(ExitingBB->getTerminator())->setSuccessor(0, NewBB); in execute()
H A DLoopVectorize.cpp8676 BasicBlock *ExitingBB = OrigLoop->getExitingBlock(); in addUsersInExitBlock() local
8678 if (!ExitBB || !ExitBB->getSinglePredecessor() || !ExitingBB) in addUsersInExitBlock()
8684 ExitPhi.getIncomingValueForBlock(ExitingBB); in addUsersInExitBlock()
/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DScalarEvolution.h1739 BasicBlock *ExitingBB,
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DScalarEvolution.cpp7114 auto *ExitingBB = L->getExitingBlock(); in isAddRecNeverPoison() local
7116 if (!ExitingBB || !LatchBB || ExitingBB != LatchBB) in isAddRecNeverPoison()
8061 for (auto *ExitingBB : ExitingBlocks) { in getSmallConstantTripMultiple() local
8062 unsigned Multiple = getSmallConstantTripMultiple(L, ExitingBB); in getSmallConstantTripMultiple()
14517 for (BasicBlock *ExitingBB : ExitingBlocks) { in computeSymbolicMaxBackedgeTakenCount()
14518 const SCEV *ExitCount = getExitCount(L, ExitingBB); in computeSymbolicMaxBackedgeTakenCount()
14520 ExitCount = getExitCount(L, ExitingBB, in computeSymbolicMaxBackedgeTakenCount()
14523 assert(DT.dominates(ExitingBB, L->getLoopLatch()) && in computeSymbolicMaxBackedgeTakenCount()