Searched refs:ExitingBlock (Results 1 – 7 of 7) sorted by relevance
| /minix3/external/bsd/llvm/dist/llvm/lib/Transforms/Utils/ |
| H A D | LoopSimplify.cpp | 642 BasicBlock *ExitingBlock = ExitingBlocks[i]; in simplifyOneLoop() local 643 if (!ExitingBlock->getSinglePredecessor()) continue; in simplifyOneLoop() 644 BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in simplifyOneLoop() 647 if (!CI || CI->getParent() != ExitingBlock) continue; in simplifyOneLoop() 653 for (BasicBlock::iterator I = ExitingBlock->begin(); &*I != BI; ) { in simplifyOneLoop() 684 << ExitingBlock->getName() << "\n"); in simplifyOneLoop() 693 assert(pred_begin(ExitingBlock) == pred_end(ExitingBlock)); in simplifyOneLoop() 695 LI->removeBlock(ExitingBlock); in simplifyOneLoop() 697 DomTreeNode *Node = DT->getNode(ExitingBlock); in simplifyOneLoop() 704 DT->eraseNode(ExitingBlock); in simplifyOneLoop() [all …]
|
| /minix3/external/bsd/llvm/dist/llvm/lib/Transforms/Scalar/ |
| H A D | LoopUnrollPass.cpp | 394 BasicBlock *ExitingBlock = L->getLoopLatch(); in runOnLoop() local 395 if (!ExitingBlock || !L->isLoopExiting(ExitingBlock)) in runOnLoop() 396 ExitingBlock = L->getExitingBlock(); in runOnLoop() 397 if (ExitingBlock) { in runOnLoop() 398 TripCount = SE->getSmallConstantTripCount(L, ExitingBlock); in runOnLoop() 399 TripMultiple = SE->getSmallConstantTripMultiple(L, ExitingBlock); in runOnLoop()
|
| H A D | LoopStrengthReduce.cpp | 2112 BasicBlock *ExitingBlock = ExitingBlocks[i]; in OptimizeLoopTermCond() local 2119 BranchInst *TermBr = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in OptimizeLoopTermCond() 2143 if (!DT.dominates(ExitingBlock, LatchBlock)) in OptimizeLoopTermCond() 2148 if (LatchBlock != ExitingBlock) in OptimizeLoopTermCond() 2153 !DT.properlyDominates(UI->getUser()->getParent(), ExitingBlock)) { in OptimizeLoopTermCond() 2206 ExitingBlock->getInstList().insert(TermBr, Cond); in OptimizeLoopTermCond()
|
| /minix3/external/bsd/llvm/dist/llvm/include/llvm/Analysis/ |
| H A D | ScalarEvolution.h | 285 AssertingVH<BasicBlock> ExitingBlock; 289 ExitNotTakenInfo() : ExitingBlock(nullptr), ExactNotTaken(nullptr) {} 330 return ExitNotTaken.ExitingBlock || !isa<SCEVCouldNotCompute>(Max); 343 const SCEV *getExact(BasicBlock *ExitingBlock, ScalarEvolution *SE) const; 447 ExitLimit ComputeExitLimit(const Loop *L, BasicBlock *ExitingBlock); 761 unsigned getSmallConstantTripCount(Loop *L, BasicBlock *ExitingBlock); 777 unsigned getSmallConstantTripMultiple(Loop *L, BasicBlock *ExitingBlock); 782 const SCEV *getExitCount(Loop *L, BasicBlock *ExitingBlock);
|
| /minix3/external/bsd/llvm/dist/llvm/test/Transforms/LoopVectorize/ |
| H A D | infiniteloop.ll | 13 ; // which this loop is *guaranteed not to exit* via ExitingBlock. Otherwise
|
| /minix3/external/bsd/llvm/dist/llvm/lib/Analysis/ |
| H A D | ScalarEvolution.cpp | 4388 BasicBlock *ExitingBlock) { in getSmallConstantTripCount() argument 4389 assert(ExitingBlock && "Must pass a non-null exiting block!"); in getSmallConstantTripCount() 4390 assert(L->isLoopExiting(ExitingBlock) && in getSmallConstantTripCount() 4393 dyn_cast<SCEVConstant>(getExitCount(L, ExitingBlock)); in getSmallConstantTripCount() 4429 BasicBlock *ExitingBlock) { in getSmallConstantTripMultiple() argument 4430 assert(ExitingBlock && "Must pass a non-null exiting block!"); in getSmallConstantTripMultiple() 4431 assert(L->isLoopExiting(ExitingBlock) && in getSmallConstantTripMultiple() 4433 const SCEV *ExitCount = getExitCount(L, ExitingBlock); in getSmallConstantTripMultiple() 4464 const SCEV *ScalarEvolution::getExitCount(Loop *L, BasicBlock *ExitingBlock) { in getExitCount() argument 4465 return getBackedgeTakenInfo(L).getExact(ExitingBlock, this); in getExitCount() [all …]
|
| /minix3/external/bsd/llvm/dist/llvm/test/Transforms/LoopSimplify/ |
| H A D | preserve-scev.ll | 52 ; Notify SCEV when removing an ExitingBlock.
|