Home
last modified time | relevance | path

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

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DIndVarSimplify.cpp1436 SmallVector<BasicBlock*, 16> ExitingBlocks; in canonicalizeExitCondition() local
1437 L->getExitingBlocks(ExitingBlocks); in canonicalizeExitCondition()
1439 for (auto *ExitingBB : ExitingBlocks) { in canonicalizeExitCondition()
1485 for (auto *ExitingBB : ExitingBlocks) { in canonicalizeExitCondition()
1561 SmallVector<BasicBlock*, 16> ExitingBlocks; in optimizeLoopExits() local
1562 L->getExitingBlocks(ExitingBlocks); in optimizeLoopExits()
1566 llvm::erase_if(ExitingBlocks, [&](BasicBlock *ExitingBB) { in optimizeLoopExits()
1594 if (ExitingBlocks.empty()) in optimizeLoopExits()
1605 llvm::sort(ExitingBlocks, [&](BasicBlock *A, BasicBlock *B) { in optimizeLoopExits()
1618 for (unsigned i = 1; i < ExitingBlocks.size(); i++) { in optimizeLoopExits()
[all …]
H A DLoopDeletion.cpp64 SmallVectorImpl<BasicBlock *> &ExitingBlocks, in isLoopDead() argument
76 Value *incoming = P.getIncomingValueForBlock(ExitingBlocks[0]); in isLoopDead()
83 all_of(ArrayRef(ExitingBlocks).slice(1), [&](BasicBlock *BB) { in isLoopDead()
485 SmallVector<BasicBlock *, 4> ExitingBlocks; in deleteLoopIfDead() local
486 L->getExitingBlocks(ExitingBlocks); in deleteLoopIfDead()
499 if (!isLoopDead(L, SE, ExitingBlocks, ExitBlock, Changed, Preheader, LI)) { in deleteLoopIfDead()
H A DLoopPredication.cpp1007 SmallVector<BasicBlock *, 16> ExitingBlocks; in isLoopProfitableToPredicate()
1008 L->getExitingBlocks(ExitingBlocks); in isLoopProfitableToPredicate()
1011 for (BasicBlock *ExitingBB : ExitingBlocks) { in isLoopProfitableToPredicate()
1050 SmallVector<BasicBlock *, 16> ExitingBlocks;
1051 L->getExitingBlocks(ExitingBlocks);
1053 if (ExitingBlocks.empty()) in FindWidenableTerminatorAboveLoop()
1076 for (auto *ExitingBB : ExitingBlocks) { in FindWidenableTerminatorAboveLoop()
1117 for (BasicBlock *ExitingBB : ExitingBlocks) { in predicateLoopExits()
1090 SmallVector<BasicBlock *, 16> ExitingBlocks; getMinAnalyzeableBackedgeTakenCount() local
1133 SmallVector<BasicBlock *, 16> ExitingBlocks; predicateLoopExits() local
H A DLoopUnrollPass.cpp1256 SmallVector<BasicBlock *, 8> ExitingBlocks; in tryToUnrollLoop() local
1257 L->getExitingBlocks(ExitingBlocks); in tryToUnrollLoop()
1258 for (BasicBlock *ExitingBlock : ExitingBlocks) in tryToUnrollLoop()
H A DLoopStrengthReduce.cpp2620 SmallVector<BasicBlock*, 8> ExitingBlocks; in OptimizeLoopTermCond() local
2621 L->getExitingBlocks(ExitingBlocks); in OptimizeLoopTermCond()
2622 if (!llvm::is_contained(ExitingBlocks, LatchBlock)) { in OptimizeLoopTermCond()
2629 for (BasicBlock *ExitingBlock : ExitingBlocks) { in OptimizeLoopTermCond()
5646 SmallVector<BasicBlock *, 4> ExitingBlocks; in AdjustInsertPositionForExpand() local
5647 PIL->getExitingBlocks(ExitingBlocks); in AdjustInsertPositionForExpand()
5648 if (!ExitingBlocks.empty()) { in AdjustInsertPositionForExpand()
5649 BasicBlock *BB = ExitingBlocks[0]; in AdjustInsertPositionForExpand()
5650 for (unsigned i = 1, e = ExitingBlocks.size(); i != e; ++i) in AdjustInsertPositionForExpand()
5651 BB = DT.findNearestCommonDominator(BB, ExitingBlocks[i]); in AdjustInsertPositionForExpand()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DUnifyLoopExits.cpp149 SetVector<BasicBlock *> ExitingBlocks; in unifyLoopExits() local
156 ExitingBlocks.insert(BB); in unifyLoopExits()
175 for (auto EB : ExitingBlocks) { in unifyLoopExits()
188 CreateControlFlowHub(&DTU, GuardBlocks, ExitingBlocks, Exits, "loop.exit", in unifyLoopExits()
191 restoreSSA(DT, L, ExitingBlocks, LoopExitBlock); in unifyLoopExits()
H A DLoopUnroll.cpp517 SmallVector<BasicBlock *> ExitingBlocks; in UnrollLoop() member
520 SmallVector<BasicBlock *, 4> ExitingBlocks; in UnrollLoop() local
521 L->getExitingBlocks(ExitingBlocks); in UnrollLoop()
522 for (auto *ExitingBlock : ExitingBlocks) { in UnrollLoop()
540 Info.ExitingBlocks.push_back(ExitingBlock); in UnrollLoop()
787 ExitInfoIt->second.ExitingBlocks.push_back(New); in UnrollLoop()
929 for (unsigned i = 0, e = Info.ExitingBlocks.size(); i != e; ++i) { in UnrollLoop()
936 Info.FirstExitingBlock = Info.ExitingBlocks[i]; in UnrollLoop()
947 Info.FirstExitingBlock = Info.ExitingBlocks[i]; in UnrollLoop()
951 SetDest(Info.ExitingBlocks[i], *KnownWillExit, Info.ExitOnTrue); in UnrollLoop()
[all …]
H A DLoopSimplify.cpp521 SmallVector<BasicBlock*, 8> ExitingBlocks; in simplifyOneLoop() local
522 L->getExitingBlocks(ExitingBlocks); in simplifyOneLoop()
523 for (BasicBlock *ExitingBlock : ExitingBlocks) in simplifyOneLoop()
619 for (auto *ExitingBB : ExitingBlocks) in simplifyOneLoop()
633 for (BasicBlock *ExitingBlock : ExitingBlocks) { in simplifyOneLoop()
895 SmallVector<BasicBlock*, 8> ExitingBlocks;
896 L->getExitingBlocks(ExitingBlocks);
897 for (unsigned i = 0, e = ExitingBlocks.size(); i != e; ++i) {
898 if (isa<IndirectBrInst>((ExitingBlocks[i])->getTerminator())) {
H A DLoopPeel.cpp325 SmallVector<BasicBlock *> ExitingBlocks; in peelToTurnInvariantLoadsDerefencebale() local
326 L.getExitingBlocks(ExitingBlocks); in peelToTurnInvariantLoadsDerefencebale()
327 if (any_of(ExitingBlocks, [&LoadUsers](BasicBlock *Exiting) { in peelToTurnInvariantLoadsDerefencebale()
699 SmallVector<BasicBlock *> ExitingBlocks; in initBranchWeights() local
700 L->getExitingBlocks(ExitingBlocks); in initBranchWeights()
701 for (BasicBlock *ExitingBlock : ExitingBlocks) { in initBranchWeights()
H A DLoopUtils.cpp1434 SmallVector<BasicBlock *, 4> ExitingBlocks; in canLoopBeDeleted() local
1435 L->getExitingBlocks(ExitingBlocks); in canLoopBeDeleted()
1438 if (ExitBlocks.size() != 1 || ExitingBlocks.size() != 1) in canLoopBeDeleted()
1444 Value *Incoming = P->getIncomingValueForBlock(ExitingBlocks[0]); in canLoopBeDeleted()
2054 SmallVector<BasicBlock *, 4> ExitingBlocks; in hasPartialIVCondition() local
2055 L.getExitingBlocks(ExitingBlocks); in hasPartialIVCondition()
2057 [&L, &AA, &AccessedLocs, &ExitingBlocks, &InstToDuplicate, in hasPartialIVCondition()
2131 for (auto *Exiting : ExitingBlocks) { in hasPartialIVCondition()
H A DLoopUnrollRuntime.cpp488 SmallVector<BasicBlock*, 4> ExitingBlocks; in canProfitablyUnrollMultiExitLoop() local
489 L->getExitingBlocks(ExitingBlocks); in canProfitablyUnrollMultiExitLoop()
490 if (ExitingBlocks.size() > 2) in canProfitablyUnrollMultiExitLoop()
H A DScalarEvolutionExpander.cpp1778 SmallVector<BasicBlock *, 4> ExitingBlocks; in hasRelatedExistingExpansion() local
1779 L->getExitingBlocks(ExitingBlocks); in hasRelatedExistingExpansion()
1782 for (BasicBlock *BB : ExitingBlocks) { in hasRelatedExistingExpansion()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DInstrProfiling.cpp564 SmallVector<BasicBlock *, 8> ExitingBlocks; in allowSpeculativeCounterPromotion() local
565 L.getExitingBlocks(ExitingBlocks); in allowSpeculativeCounterPromotion()
567 if (ExitingBlocks.size() == 1) in allowSpeculativeCounterPromotion()
569 if (ExitingBlocks.size() > SpeculativeCounterPromotionMaxExiting) in allowSpeculativeCounterPromotion()
602 SmallVector<BasicBlock *, 8> ExitingBlocks; in getMaxNumOfPromotionsInLoop() local
603 LP->getExitingBlocks(ExitingBlocks); in getMaxNumOfPromotionsInLoop()
610 if (ExitingBlocks.size() == 1) in getMaxNumOfPromotionsInLoop()
613 if (ExitingBlocks.size() > SpeculativeCounterPromotionMaxExiting) in getMaxNumOfPromotionsInLoop()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DRegionInfoImpl.h129 SmallVector<BlockT *, 8> ExitingBlocks; in contains() local
130 L->getExitingBlocks(ExitingBlocks); in contains()
132 for (BlockT *BB : ExitingBlocks) { in contains()
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCTargetTransformInfo.cpp369 SmallVector<BasicBlock*, 4> ExitingBlocks; in isHardwareLoopProfitable() local
370 L->getExitingBlocks(ExitingBlocks); in isHardwareLoopProfitable()
374 for (auto &BB : ExitingBlocks) { in isHardwareLoopProfitable()
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DGenericLoopInfoImpl.h34 SmallVectorImpl<BlockT *> &ExitingBlocks) const { in getExitingBlocks() argument
40 ExitingBlocks.push_back(BB); in getExitingBlocks()
H A DGenericLoopInfo.h265 void getExitingBlocks(SmallVectorImpl<BlockT *> &ExitingBlocks) const;
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DTargetTransformInfo.cpp128 SmallVector<BasicBlock *, 4> ExitingBlocks; in isHardwareLoopCandidate() local
129 L->getExitingBlocks(ExitingBlocks); in isHardwareLoopCandidate()
131 for (BasicBlock *BB : ExitingBlocks) { in isHardwareLoopCandidate()
H A DScalarEvolution.cpp8221 SmallVector<BasicBlock *, 8> ExitingBlocks; in getSmallConstantTripMultiple() local
8222 L->getExitingBlocks(ExitingBlocks); in getSmallConstantTripMultiple()
8225 for (auto *ExitingBB : ExitingBlocks) { in getSmallConstantTripMultiple()
8774 SmallVector<BasicBlock *, 8> ExitingBlocks; in computeBackedgeTakenCount() local
8775 L->getExitingBlocks(ExitingBlocks); in computeBackedgeTakenCount()
8785 bool IsOnlyExit = ExitingBlocks.size() == 1; in computeBackedgeTakenCount()
8790 for (BasicBlock *ExitBB : ExitingBlocks) { in computeBackedgeTakenCount()
8857 bool MaxOrZero = (MustExitMaxOrZero && ExitingBlocks.size() == 1); in computeBackedgeTakenCount()
13609 SmallVector<BasicBlock *, 8> ExitingBlocks; in PrintLoopInfo() local
13610 L->getExitingBlocks(ExitingBlocks); in PrintLoopInfo()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVTargetTransformInfo.cpp1841 SmallVector<BasicBlock *, 4> ExitingBlocks; in getUnrollingPreferences() local
1842 L->getExitingBlocks(ExitingBlocks); in getUnrollingPreferences()
1845 << "Exit blocks: " << ExitingBlocks.size() << "\n"); in getUnrollingPreferences()
1849 if (ExitingBlocks.size() > 2) in getUnrollingPreferences()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMTargetTransformInfo.cpp2465 SmallVector<BasicBlock*, 4> ExitingBlocks; in getUnrollingPreferences() local
2466 L->getExitingBlocks(ExitingBlocks); in getUnrollingPreferences()
2469 << "Exit blocks: " << ExitingBlocks.size() << "\n"); in getUnrollingPreferences()
2473 if (ExitingBlocks.size() > 2) in getUnrollingPreferences()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIInstrInfo.cpp213 SmallVector<MachineBasicBlock *, 1> ExitingBlocks; in isSafeToSink() local
214 FromCycle->getExitingBlocks(ExitingBlocks); in isSafeToSink()
217 for (MachineBasicBlock *ExitingBlock : ExitingBlocks) { in isSafeToSink()