Searched refs:ExitingBlock (Results 1 – 9 of 9) sorted by relevance
/external/llvm/lib/Transforms/Utils/ |
D | LoopSimplify.cpp | 629 BasicBlock *ExitingBlock = ExitingBlocks[i]; in simplifyOneLoop() local 630 if (!ExitingBlock->getSinglePredecessor()) continue; in simplifyOneLoop() 631 BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in simplifyOneLoop() 634 if (!CI || CI->getParent() != ExitingBlock) continue; in simplifyOneLoop() 640 for (BasicBlock::iterator I = ExitingBlock->begin(); &*I != BI; ) { in simplifyOneLoop() 672 << ExitingBlock->getName() << "\n"); in simplifyOneLoop() 681 assert(pred_begin(ExitingBlock) == pred_end(ExitingBlock)); in simplifyOneLoop() 683 LI->removeBlock(ExitingBlock); in simplifyOneLoop() 685 DomTreeNode *Node = DT->getNode(ExitingBlock); in simplifyOneLoop() 692 DT->eraseNode(ExitingBlock); in simplifyOneLoop() [all …]
|
/external/llvm/lib/Target/Hexagon/ |
D | HexagonHardwareLoops.cpp | 388 MachineBasicBlock *ExitingBlock = getExitingBlock(L); in findInductionRegister() local 389 if (!Header || !Preheader || !Latch || !ExitingBlock) in findInductionRegister() 437 bool NotAnalyzed = TII->AnalyzeBranch(*ExitingBlock, TB, FB, Cond, false); in findInductionRegister() 556 MachineBasicBlock *ExitingBlock = getExitingBlock(L); in getLoopTripCount() local 557 if (!ExitingBlock) in getLoopTripCount() 584 bool NotAnalyzed = TII->AnalyzeBranch(*ExitingBlock, TB, FB, Cond, false); in getLoopTripCount() 593 if (ExitingBlock != Latch && (TB == Latch || FB == Latch)) { in getLoopTripCount() 1181 MachineBasicBlock *ExitingBlock = getExitingBlock(L); in convertToHardwareLoop() local 1183 if (ExitingBlock != L->getLoopLatch()) { in convertToHardwareLoop() 1187 if (TII->AnalyzeBranch(*ExitingBlock, TB, FB, Cond, false)) in convertToHardwareLoop() [all …]
|
/external/llvm/include/llvm/Analysis/ |
D | ScalarEvolution.h | 429 AssertingVH<BasicBlock> ExitingBlock; 433 ExitNotTakenInfo() : ExitingBlock(nullptr), ExactNotTaken(nullptr) {} 473 return ExitNotTaken.ExitingBlock || !isa<SCEVCouldNotCompute>(Max); 486 const SCEV *getExact(BasicBlock *ExitingBlock, ScalarEvolution *SE) const; 599 ExitLimit computeExitLimit(const Loop *L, BasicBlock *ExitingBlock); 995 unsigned getSmallConstantTripCount(Loop *L, BasicBlock *ExitingBlock); 1011 unsigned getSmallConstantTripMultiple(Loop *L, BasicBlock *ExitingBlock); 1016 const SCEV *getExitCount(Loop *L, BasicBlock *ExitingBlock);
|
/external/llvm/lib/Transforms/Scalar/ |
D | LoopUnrollPass.cpp | 924 BasicBlock *ExitingBlock = L->getLoopLatch(); in runOnLoop() local 925 if (!ExitingBlock || !L->isLoopExiting(ExitingBlock)) in runOnLoop() 926 ExitingBlock = L->getExitingBlock(); in runOnLoop() 927 if (ExitingBlock) { in runOnLoop() 928 TripCount = SE->getSmallConstantTripCount(L, ExitingBlock); in runOnLoop() 929 TripMultiple = SE->getSmallConstantTripMultiple(L, ExitingBlock); in runOnLoop()
|
D | LoopStrengthReduce.cpp | 2091 for (BasicBlock *ExitingBlock : ExitingBlocks) { in OptimizeLoopTermCond() 2098 BranchInst *TermBr = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in OptimizeLoopTermCond() 2122 if (!DT.dominates(ExitingBlock, LatchBlock)) in OptimizeLoopTermCond() 2127 if (LatchBlock != ExitingBlock) in OptimizeLoopTermCond() 2132 !DT.properlyDominates(UI->getUser()->getParent(), ExitingBlock)) { in OptimizeLoopTermCond() 2187 ExitingBlock->getInstList().insert(TermBr->getIterator(), Cond); in OptimizeLoopTermCond()
|
/external/llvm/test/Transforms/LoopVectorize/ |
D | infiniteloop.ll | 13 ; // which this loop is *guaranteed not to exit* via ExitingBlock. Otherwise
|
/external/llvm/lib/Analysis/ |
D | ScalarEvolution.cpp | 4822 BasicBlock *ExitingBlock) { in getSmallConstantTripCount() argument 4823 assert(ExitingBlock && "Must pass a non-null exiting block!"); in getSmallConstantTripCount() 4824 assert(L->isLoopExiting(ExitingBlock) && in getSmallConstantTripCount() 4827 dyn_cast<SCEVConstant>(getExitCount(L, ExitingBlock)); in getSmallConstantTripCount() 4863 BasicBlock *ExitingBlock) { in getSmallConstantTripMultiple() argument 4864 assert(ExitingBlock && "Must pass a non-null exiting block!"); in getSmallConstantTripMultiple() 4865 assert(L->isLoopExiting(ExitingBlock) && in getSmallConstantTripMultiple() 4867 const SCEV *ExitCount = getExitCount(L, ExitingBlock); in getSmallConstantTripMultiple() 4897 const SCEV *ScalarEvolution::getExitCount(Loop *L, BasicBlock *ExitingBlock) { in getExitCount() argument 4898 return getBackedgeTakenInfo(L).getExact(ExitingBlock, this); in getExitCount() [all …]
|
/external/llvm/test/Transforms/LoopSimplify/ |
D | preserve-scev.ll | 55 ; Notify SCEV when removing an ExitingBlock.
|
/external/mesa3d/src/gallium/drivers/radeon/ |
D | AMDILCFGStructurizer.cpp | 320 void handleLoopbreak (BlockT *ExitingBlock, LoopT *ExitingLoop, 345 void mergeLoopbreakBlock(BlockT *ExitingBlock, BlockT *ExitBlock,
|