Home
last modified time | relevance | path

Searched refs:ExitingBlocks (Results 1 – 19 of 19) sorted by relevance

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
H A DLoopDeletion.cpp55 SmallVectorImpl<BasicBlock *> &ExitingBlocks, in isLoopDead() argument
67 Value *incoming = P.getIncomingValueForBlock(ExitingBlocks[0]); in isLoopDead()
74 all_of(makeArrayRef(ExitingBlocks).slice(1), [&](BasicBlock *BB) { in isLoopDead()
214 SmallVector<BasicBlock *, 4> ExitingBlocks; in deleteLoopIfDead() local
215 L->getExitingBlocks(ExitingBlocks); in deleteLoopIfDead()
227 if (!isLoopDead(L, SE, ExitingBlocks, ExitBlock, Changed, Preheader)) { in deleteLoopIfDead()
H A DIndVarSimplify.cpp1398 SmallVector<BasicBlock*, 16> ExitingBlocks; in optimizeLoopExits() local
1399 L->getExitingBlocks(ExitingBlocks); in optimizeLoopExits()
1403 llvm::erase_if(ExitingBlocks, [&](BasicBlock *ExitingBB) { in optimizeLoopExits()
1426 if (ExitingBlocks.empty()) in optimizeLoopExits()
1437 llvm::sort(ExitingBlocks, [&](BasicBlock *A, BasicBlock *B) { in optimizeLoopExits()
1450 for (unsigned i = 1; i < ExitingBlocks.size(); i++) { in optimizeLoopExits()
1451 assert(DT->dominates(ExitingBlocks[i-1], ExitingBlocks[i])); in optimizeLoopExits()
1458 for (BasicBlock *ExitingBB : ExitingBlocks) { in optimizeLoopExits()
1553 SmallVector<BasicBlock*, 16> ExitingBlocks; in predicateLoopExits() local
1554 L->getExitingBlocks(ExitingBlocks); in predicateLoopExits()
[all …]
H A DLoopPredication.cpp1007 SmallVector<BasicBlock *, 16> ExitingBlocks; in getMinAnalyzeableBackedgeTakenCount() local
1008 L->getExitingBlocks(ExitingBlocks); in getMinAnalyzeableBackedgeTakenCount()
1011 for (BasicBlock *ExitingBB : ExitingBlocks) { in getMinAnalyzeableBackedgeTakenCount()
1050 SmallVector<BasicBlock *, 16> ExitingBlocks; in predicateLoopExits() local
1051 L->getExitingBlocks(ExitingBlocks); in predicateLoopExits()
1053 if (ExitingBlocks.empty()) in predicateLoopExits()
1077 for (auto *ExitingBB : ExitingBlocks) { in predicateLoopExits()
1120 for (BasicBlock *ExitingBB : ExitingBlocks) { in predicateLoopExits()
H A DLoopStrengthReduce.cpp2379 SmallVector<BasicBlock*, 8> ExitingBlocks; in OptimizeLoopTermCond() local
2380 L->getExitingBlocks(ExitingBlocks); in OptimizeLoopTermCond()
2381 if (llvm::all_of(ExitingBlocks, [&LatchBlock](const BasicBlock *BB) { in OptimizeLoopTermCond()
2390 for (BasicBlock *ExitingBlock : ExitingBlocks) { in OptimizeLoopTermCond()
5160 SmallVector<BasicBlock *, 4> ExitingBlocks; in AdjustInsertPositionForExpand() local
5161 PIL->getExitingBlocks(ExitingBlocks); in AdjustInsertPositionForExpand()
5162 if (!ExitingBlocks.empty()) { in AdjustInsertPositionForExpand()
5163 BasicBlock *BB = ExitingBlocks[0]; in AdjustInsertPositionForExpand()
5164 for (unsigned i = 1, e = ExitingBlocks.size(); i != e; ++i) in AdjustInsertPositionForExpand()
5165 BB = DT.findNearestCommonDominator(BB, ExitingBlocks[i]); in AdjustInsertPositionForExpand()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
H A DUnifyLoopExits.cpp144 SetVector<BasicBlock *> ExitingBlocks; in unifyLoopExits() local
151 ExitingBlocks.insert(BB); in unifyLoopExits()
170 for (auto EB : ExitingBlocks) { in unifyLoopExits()
182 auto LoopExitBlock = CreateControlFlowHub(&DTU, GuardBlocks, ExitingBlocks, in unifyLoopExits()
185 restoreSSA(DT, L, ExitingBlocks, LoopExitBlock); in unifyLoopExits()
H A DLoopUnroll.cpp547 std::vector<BasicBlock *> ExitingBlocks; in UnrollLoop() local
553 ExitingBlocks.push_back(ExitingBI->getParent()); in UnrollLoop()
656 if (*BB == ExitingBlocks[0]) in UnrollLoop()
657 ExitingBlocks.push_back(New); in UnrollLoop()
787 for (unsigned i = 0, e = ExitingBlocks.size(); i != e; ++i) { in UnrollLoop()
810 setDest(ExitingBlocks[i], ExitingSucc[i], ExitingSucc[i], NeedConditional, in UnrollLoop()
836 if (ExitingBI && BB == ExitingBlocks[0]) { in UnrollLoop()
846 NewIDom = ExitingBlocks.back(); in UnrollLoop()
847 for (unsigned i = 0, e = ExitingBlocks.size(); i != e; ++i) { in UnrollLoop()
848 Instruction *Term = ExitingBlocks[i]->getTerminator(); in UnrollLoop()
[all …]
H A DLoopSimplify.cpp528 SmallVector<BasicBlock*, 8> ExitingBlocks; in simplifyOneLoop() local
529 L->getExitingBlocks(ExitingBlocks); in simplifyOneLoop()
530 for (BasicBlock *ExitingBlock : ExitingBlocks) in simplifyOneLoop()
626 for (auto *ExitingBB : ExitingBlocks) in simplifyOneLoop()
640 for (unsigned i = 0, e = ExitingBlocks.size(); i != e; ++i) { in simplifyOneLoop()
641 BasicBlock *ExitingBlock = ExitingBlocks[i]; in simplifyOneLoop()
910 SmallVector<BasicBlock*, 8> ExitingBlocks;
911 L->getExitingBlocks(ExitingBlocks);
912 for (unsigned i = 0, e = ExitingBlocks.size(); i != e; ++i) {
913 if (isa<IndirectBrInst>((ExitingBlocks[i])->getTerminator())) {
H A DLoopUtils.cpp1250 SmallVector<BasicBlock *, 4> ExitingBlocks; in canLoopBeDeleted() local
1251 L->getExitingBlocks(ExitingBlocks); in canLoopBeDeleted()
1254 if (ExitBlocks.size() != 1 || ExitingBlocks.size() != 1) in canLoopBeDeleted()
1260 Value *Incoming = P->getIncomingValueForBlock(ExitingBlocks[0]); in canLoopBeDeleted()
1774 SmallVector<BasicBlock *, 4> ExitingBlocks; in hasPartialIVCondition() local
1775 L.getExitingBlocks(ExitingBlocks); in hasPartialIVCondition()
1777 [&L, &AA, &AccessedLocs, &ExitingBlocks, &InstToDuplicate, in hasPartialIVCondition()
1852 for (auto *Exiting : ExitingBlocks) { in hasPartialIVCondition()
H A DLoopUnrollRuntime.cpp494 SmallVector<BasicBlock*, 4> ExitingBlocks; in canProfitablyUnrollMultiExitLoop() local
495 L->getExitingBlocks(ExitingBlocks); in canProfitablyUnrollMultiExitLoop()
496 if (ExitingBlocks.size() > 2) in canProfitablyUnrollMultiExitLoop()
H A DScalarEvolutionExpander.cpp2190 SmallVector<BasicBlock *, 4> ExitingBlocks; in getRelatedExistingExpansion() local
2191 L->getExitingBlocks(ExitingBlocks); in getRelatedExistingExpansion()
2194 for (BasicBlock *BB : ExitingBlocks) { in getRelatedExistingExpansion()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
H A DLoopInfoImpl.h35 SmallVectorImpl<BlockT *> &ExitingBlocks) const { in getExitingBlocks() argument
41 ExitingBlocks.push_back(BB); in getExitingBlocks()
51 SmallVector<BlockT *, 8> ExitingBlocks; in getExitingBlock() local
52 getExitingBlocks(ExitingBlocks); in getExitingBlock()
53 if (ExitingBlocks.size() == 1) in getExitingBlock()
54 return ExitingBlocks[0]; in getExitingBlock()
H A DRegionInfoImpl.h131 SmallVector<BlockT *, 8> ExitingBlocks; in contains() local
132 L->getExitingBlocks(ExitingBlocks); in contains()
134 for (BlockT *BB : ExitingBlocks) { in contains()
H A DLoopInfo.h273 void getExitingBlocks(SmallVectorImpl<BlockT *> &ExitingBlocks) const;
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Instrumentation/
H A DInstrProfiling.cpp322 SmallVector<BasicBlock *, 8> ExitingBlocks; in allowSpeculativeCounterPromotion() local
323 L.getExitingBlocks(ExitingBlocks); in allowSpeculativeCounterPromotion()
325 if (ExitingBlocks.size() == 1) in allowSpeculativeCounterPromotion()
327 if (ExitingBlocks.size() > SpeculativeCounterPromotionMaxExiting) in allowSpeculativeCounterPromotion()
359 SmallVector<BasicBlock *, 8> ExitingBlocks; in getMaxNumOfPromotionsInLoop() local
360 LP->getExitingBlocks(ExitingBlocks); in getMaxNumOfPromotionsInLoop()
367 if (ExitingBlocks.size() == 1) in getMaxNumOfPromotionsInLoop()
370 if (ExitingBlocks.size() > SpeculativeCounterPromotionMaxExiting) in getMaxNumOfPromotionsInLoop()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/PowerPC/
H A DPPCTargetTransformInfo.cpp740 SmallVector<BasicBlock*, 4> ExitingBlocks; in isHardwareLoopProfitable() local
741 L->getExitingBlocks(ExitingBlocks); in isHardwareLoopProfitable()
745 for (auto &BB : ExitingBlocks) { in isHardwareLoopProfitable()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Analysis/
H A DTargetTransformInfo.cpp104 SmallVector<BasicBlock *, 4> ExitingBlocks; in isHardwareLoopCandidate() local
105 L->getExitingBlocks(ExitingBlocks); in isHardwareLoopCandidate()
107 for (BasicBlock *BB : ExitingBlocks) { in isHardwareLoopCandidate()
H A DScalarEvolution.cpp7482 SmallVector<BasicBlock *, 8> ExitingBlocks; in computeBackedgeTakenCount() local
7483 L->getExitingBlocks(ExitingBlocks); in computeBackedgeTakenCount()
7497 for (unsigned i = 0, e = ExitingBlocks.size(); i != e; ++i) { in computeBackedgeTakenCount()
7498 BasicBlock *ExitBB = ExitingBlocks[i]; in computeBackedgeTakenCount()
7556 bool MaxOrZero = (MustExitMaxOrZero && ExitingBlocks.size() == 1); in computeBackedgeTakenCount()
12249 SmallVector<BasicBlock *, 8> ExitingBlocks; in PrintLoopInfo() local
12250 L->getExitingBlocks(ExitingBlocks); in PrintLoopInfo()
12251 if (ExitingBlocks.size() != 1) in PrintLoopInfo()
12259 if (ExitingBlocks.size() > 1) in PrintLoopInfo()
12260 for (BasicBlock *ExitingBlock : ExitingBlocks) { in PrintLoopInfo()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/ARM/
H A DARMTargetTransformInfo.cpp2147 SmallVector<BasicBlock*, 4> ExitingBlocks; in getUnrollingPreferences() local
2148 L->getExitingBlocks(ExitingBlocks); in getUnrollingPreferences()
2151 << "Exit blocks: " << ExitingBlocks.size() << "\n"); in getUnrollingPreferences()
2155 if (ExitingBlocks.size() > 2) in getUnrollingPreferences()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp8093 SmallVector<BasicBlock*> ExitingBlocks; in collectTriviallyDeadInstructions() local
8094 OrigLoop->getExitingBlocks(ExitingBlocks); in collectTriviallyDeadInstructions()
8095 for (auto *BB : ExitingBlocks) { in collectTriviallyDeadInstructions()