Home
last modified time | relevance | path

Searched refs:ExitingBlock (Results 1 – 7 of 7) sorted by relevance

/freebsd-12.1/contrib/llvm/lib/Transforms/Utils/
H A DLoopSimplify.cpp502 for (BasicBlock *ExitingBlock : ExitingBlocks) in simplifyOneLoop()
509 << ExitingBlock->getName() << "\n"); in simplifyOneLoop()
606 BasicBlock *ExitingBlock = ExitingBlocks[i]; in simplifyOneLoop() local
607 if (!ExitingBlock->getSinglePredecessor()) continue; in simplifyOneLoop()
611 if (!CI || CI->getParent() != ExitingBlock) continue; in simplifyOneLoop()
646 << ExitingBlock->getName() << "\n"); in simplifyOneLoop()
648 assert(pred_begin(ExitingBlock) == pred_end(ExitingBlock)); in simplifyOneLoop()
650 LI->removeBlock(ExitingBlock); in simplifyOneLoop()
652 DomTreeNode *Node = DT->getNode(ExitingBlock); in simplifyOneLoop()
659 DT->eraseNode(ExitingBlock); in simplifyOneLoop()
[all …]
H A DLoopUnroll.cpp445 BasicBlock *ExitingBlock = L->getExitingBlock(); in UnrollLoop() local
446 assert(ExitingBlock && "Loop without exiting block?"); in UnrollLoop()
448 TripCount = SE->getSmallConstantTripCount(L, ExitingBlock); in UnrollLoop()
449 TripMultiple = SE->getSmallConstantTripMultiple(L, ExitingBlock); in UnrollLoop()
/freebsd-12.1/contrib/llvm/include/llvm/Analysis/
H A DScalarEvolution.h423 ExitLimitQuery(const Loop *L, BasicBlock *ExitingBlock, bool AllowPredicates)
424 : L(L), ExitingBlock(ExitingBlock), AllowPredicates(AllowPredicates) {}
427 BasicBlock *ExitingBlock;
441 return hash_combine(hash_combine(Val.L, Val.ExitingBlock),
446 return LHS.L == RHS.L && LHS.ExitingBlock == RHS.ExitingBlock &&
727 BasicBlock *ExitingBlock);
732 const SCEV *getExitCount(const Loop *L, BasicBlock *ExitingBlock);
1227 PoisoningVH<BasicBlock> ExitingBlock;
1231 explicit ExitNotTakenInfo(PoisoningVH<BasicBlock> ExitingBlock,
1234 : ExitingBlock(ExitingBlock), ExactNotTaken(ExactNotTaken),
[all …]
/freebsd-12.1/contrib/llvm/lib/Target/Hexagon/
H A DHexagonHardwareLoops.cpp410 MachineBasicBlock *ExitingBlock = L->findLoopControlBlock(); in findInductionRegister() local
411 if (!Header || !Preheader || !Latch || !ExitingBlock) in findInductionRegister()
591 MachineBasicBlock *ExitingBlock = L->findLoopControlBlock(); in getLoopTripCount() local
592 if (!ExitingBlock) in getLoopTripCount()
628 if (ExitingBlock != Latch && (TB == Latch || FB == Latch)) { in getLoopTripCount()
1221 MachineBasicBlock *ExitingBlock = L->findLoopControlBlock(); in convertToHardwareLoop() local
1223 if (ExitingBlock != L->getLoopLatch()) { in convertToHardwareLoop()
1610 MachineBasicBlock *ExitingBlock = L->findLoopControlBlock(); in fixupInductionVariable() local
1612 if (!(Header && Latch && ExitingBlock)) in fixupInductionVariable()
1867 if (!Latch || !ExitingBlock || Header->hasAddressTaken()) in createPreheaderForLoop()
[all …]
/freebsd-12.1/contrib/llvm/lib/Transforms/Scalar/
H A DLoopUnrollPass.cpp1024 BasicBlock *ExitingBlock = L->getLoopLatch(); in tryToUnrollLoop() local
1025 if (!ExitingBlock || !L->isLoopExiting(ExitingBlock)) in tryToUnrollLoop()
1026 ExitingBlock = L->getExitingBlock(); in tryToUnrollLoop()
1027 if (ExitingBlock) { in tryToUnrollLoop()
1028 TripCount = SE.getSmallConstantTripCount(L, ExitingBlock); in tryToUnrollLoop()
1029 TripMultiple = SE.getSmallConstantTripMultiple(L, ExitingBlock); in tryToUnrollLoop()
H A DLoopStrengthReduce.cpp2358 for (BasicBlock *ExitingBlock : ExitingBlocks) { in OptimizeLoopTermCond()
2364 BranchInst *TermBr = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in OptimizeLoopTermCond()
2388 if (!DT.dominates(ExitingBlock, LatchBlock)) in OptimizeLoopTermCond()
2393 if (LatchBlock != ExitingBlock) in OptimizeLoopTermCond()
2398 !DT.properlyDominates(UI->getUser()->getParent(), ExitingBlock)) { in OptimizeLoopTermCond()
2456 ExitingBlock->getInstList().insert(TermBr->getIterator(), Cond); in OptimizeLoopTermCond()
/freebsd-12.1/contrib/llvm/lib/Analysis/
H A DScalarEvolution.cpp6524 assert(L->isLoopExiting(ExitingBlock) && in getSmallConstantTripCount()
6527 dyn_cast<SCEVConstant>(getExitCount(L, ExitingBlock)); in getSmallConstantTripCount()
6561 assert(L->isLoopExiting(ExitingBlock) && in getSmallConstantTripMultiple()
6563 const SCEV *ExitCount = getExitCount(L, ExitingBlock); in getSmallConstantTripMultiple()
6594 return getBackedgeTakenInfo(L).getExact(ExitingBlock, this); in getExitCount()
6870 assert(SE->DT.dominates(ENT.ExitingBlock, Latch) && in getExact()
6891 if (ENT.ExitingBlock == ExitingBlock && ENT.hasAlwaysTruePredicate()) in getExact()
7084 if (!Latch || !DT.dominates(ExitingBlock, Latch)) in computeExitLimit()
7088 Instruction *Term = ExitingBlock->getTerminator(); in computeExitLimit()
7103 for (auto *SBB : successors(ExitingBlock)) in computeExitLimit()
[all …]