Searched defs:ExitBlocks (Results 1 - 13 of 13) sorted by relevance

/external/llvm/lib/Transforms/Scalar/
H A DLoopInstSimplify.cpp73 SmallVector<BasicBlock*, 8> ExitBlocks; local
74 L->getUniqueExitBlocks(ExitBlocks);
75 array_pod_sort(ExitBlocks.begin(), ExitBlocks.end());
157 bool IsExitBlock = std::binary_search(ExitBlocks.begin(),
158 ExitBlocks.end(), SuccBB);
H A DLICM.cpp185 SmallVectorImpl<BasicBlock*> &ExitBlocks,
276 SmallVector<BasicBlock *, 8> ExitBlocks; local
282 PromoteAliasSet(*I, ExitBlocks, InsertPts);
482 SmallVector<BasicBlock*, 8> ExitBlocks; local
483 CurLoop->getUniqueExitBlocks(ExitBlocks);
493 if (ExitBlocks.size() == 1) {
494 if (!DT->dominates(I.getParent(), ExitBlocks[0])) {
506 I.moveBefore(ExitBlocks[0]->getFirstInsertionPt());
516 if (ExitBlocks.empty()) {
538 // ExitBlocks lis
722 PromoteAliasSet(AliasSet &AS, SmallVectorImpl<BasicBlock*> &ExitBlocks, SmallVectorImpl<Instruction*> &InsertPts) argument
[all...]
H A DLoopIdiomRecognize.cpp148 SmallVectorImpl<BasicBlock*> &ExitBlocks);
679 SmallVector<BasicBlock*, 8> ExitBlocks; local
680 CurLoop->getUniqueExitBlocks(ExitBlocks);
694 MadeChange |= runOnLoopBlock(*BI, BECount, ExitBlocks);
730 SmallVectorImpl<BasicBlock*> &ExitBlocks) {
734 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i)
735 if (!DT->dominates(BB, ExitBlocks[i]))
729 runOnLoopBlock(BasicBlock *BB, const SCEV *BECount, SmallVectorImpl<BasicBlock*> &ExitBlocks) argument
H A DLoopUnswitch.cpp199 void SplitExitEdges(Loop *L, const SmallVectorImpl<BasicBlock *> &ExitBlocks);
756 const SmallVectorImpl<BasicBlock *> &ExitBlocks){
758 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) {
759 BasicBlock *ExitBlock = ExitBlocks[i];
800 SmallVector<BasicBlock*, 8> ExitBlocks; local
801 L->getUniqueExitBlocks(ExitBlocks);
805 SplitExitEdges(L, ExitBlocks);
808 ExitBlocks.clear();
809 L->getUniqueExitBlocks(ExitBlocks);
812 LoopBlocks.insert(LoopBlocks.end(), ExitBlocks
755 SplitExitEdges(Loop *L, const SmallVectorImpl<BasicBlock *> &ExitBlocks) argument
[all...]
H A DIndVarSimplify.cpp481 SmallVector<BasicBlock*, 8> ExitBlocks; local
482 L->getUniqueExitBlocks(ExitBlocks);
487 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) {
488 BasicBlock *ExitBB = ExitBlocks[i];
/external/llvm/lib/Transforms/Utils/
H A DBreakCriticalEdges.cpp318 SmallVector<BasicBlock *, 4> ExitBlocks; local
319 TIL->getExitBlocks(ExitBlocks);
320 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) {
325 BasicBlock *Exit = ExitBlocks[i];
H A DLCSSA.cpp78 const SmallVectorImpl<BasicBlock*> &ExitBlocks);
106 const SmallVectorImpl<BasicBlock*> &ExitBlocks,
109 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i)
110 if (DT->dominates(DomNode, DT->getNode(ExitBlocks[i])))
126 SmallVector<BasicBlock*, 8> ExitBlocks; local
127 L->getExitBlocks(ExitBlocks);
129 if (ExitBlocks.empty())
148 if (!BlockDominatesAnExit(BB, ExitBlocks, DT))
160 MadeChange |= ProcessInstruction(I, ExitBlocks);
178 const SmallVectorImpl<BasicBlock*> &ExitBlocks) {
105 BlockDominatesAnExit(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &ExitBlocks, DominatorTree *DT) argument
177 isExitBlock(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &ExitBlocks) argument
188 ProcessInstruction(Instruction *Inst, const SmallVectorImpl<BasicBlock*> &ExitBlocks) argument
[all...]
H A DLoopSimplify.cpp223 SmallVector<BasicBlock*, 8> ExitBlocks; local
224 L->getExitBlocks(ExitBlocks);
226 SmallSetVector<BasicBlock *, 8> ExitBlockSet(ExitBlocks.begin(),
227 ExitBlocks.end());
294 if (!ExitBlocks.empty())
295 for (unsigned i = 1, e = ExitBlocks.size(); i != e; ++i)
296 if (ExitBlocks[i] != ExitBlocks[0]) {
H A DCodeExtractor.cpp722 SmallPtrSet<BasicBlock *, 1> ExitBlocks; local
727 ExitBlocks.insert(*SI);
728 NumExitBlocks = ExitBlocks.size();
/external/llvm/lib/Transforms/IPO/
H A DLoopExtractor.cpp109 SmallVector<BasicBlock*, 8> ExitBlocks; local
110 L->getExitBlocks(ExitBlocks);
111 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i)
112 if (!isa<ReturnInst>(ExitBlocks[i]->getTerminator())) {
123 SmallVector<BasicBlock*, 8> ExitBlocks; local
124 L->getExitBlocks(ExitBlocks);
125 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i)
126 if (ExitBlocks[i]->isLandingPad()) {
/external/llvm/include/llvm/Analysis/
H A DLoopInfoImpl.h67 getExitBlocks(SmallVectorImpl<BlockT*> &ExitBlocks) const {
80 ExitBlocks.push_back(*I);
87 SmallVector<BlockT*, 8> ExitBlocks; local
88 getExitBlocks(ExitBlocks);
89 if (ExitBlocks.size() == 1)
90 return ExitBlocks[0];
/external/llvm/lib/Analysis/
H A DLoopInfo.cpp345 SmallVector<BasicBlock *, 4> ExitBlocks; local
346 getExitBlocks(ExitBlocks);
347 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i)
348 for (pred_iterator PI = pred_begin(ExitBlocks[i]),
349 PE = pred_end(ExitBlocks[i]); PI != PE; ++PI)
361 Loop::getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const {
386 // then only insert exit block in to the output ExitBlocks vector.
388 // ExitBlocks vector.
396 ExitBlocks.push_back(*I);
401 // only one edge in ExitBlocks
[all...]
/external/llvm/lib/CodeGen/
H A DMachineLICM.cpp84 SmallVector<MachineBasicBlock*, 8> ExitBlocks; member in class:__anon22096::MachineLICM
87 return std::find(ExitBlocks.begin(), ExitBlocks.end(), MBB) !=
88 ExitBlocks.end();
359 ExitBlocks.clear();
368 CurLoop->getExitBlocks(ExitBlocks);

Completed in 834 milliseconds