Searched refs:ExitingBlock (Results 1 – 7 of 7) sorted by relevance
| /freebsd-12.1/contrib/llvm/lib/Transforms/Utils/ |
| H A D | LoopSimplify.cpp | 502 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 D | LoopUnroll.cpp | 445 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 D | ScalarEvolution.h | 423 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 D | HexagonHardwareLoops.cpp | 410 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 D | LoopUnrollPass.cpp | 1024 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 D | LoopStrengthReduce.cpp | 2358 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 D | ScalarEvolution.cpp | 6524 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 …]
|