/external/llvm/lib/Transforms/Utils/ |
H A D | LCSSA.cpp | 56 const SmallVectorImpl<BasicBlock *> &ExitBlocks) { 57 return find(ExitBlocks, BB) != ExitBlocks.end(); 64 const SmallVectorImpl<BasicBlock *> &ExitBlocks, 111 for (BasicBlock *ExitBB : ExitBlocks) { 165 if (isa<PHINode>(UserBB->begin()) && isExitBlock(UserBB, ExitBlocks)) { 209 const SmallVectorImpl<BasicBlock *> &ExitBlocks) { 211 return llvm::any_of(ExitBlocks, [&](BasicBlock * EB) { 221 SmallVector<BasicBlock *, 8> ExitBlocks; 222 L.getExitBlocks(ExitBlocks); 55 isExitBlock(BasicBlock *BB, const SmallVectorImpl<BasicBlock *> &ExitBlocks) argument 63 processInstruction(Loop &L, Instruction &Inst, DominatorTree &DT, const SmallVectorImpl<BasicBlock *> &ExitBlocks, PredIteratorCache &PredCache, LoopInfo *LI) argument 207 blockDominatesAnExit(BasicBlock *BB, DominatorTree &DT, const SmallVectorImpl<BasicBlock *> &ExitBlocks) argument [all...] |
H A D | LoopSimplify.cpp | 538 SmallVector<BasicBlock*, 8> ExitBlocks; local 539 L->getExitBlocks(ExitBlocks); 541 SmallSetVector<BasicBlock *, 8> ExitBlockSet(ExitBlocks.begin(), 542 ExitBlocks.end()); 614 if (!ExitBlocks.empty()) 615 for (unsigned i = 1, e = ExitBlocks.size(); i != e; ++i) 616 if (ExitBlocks[i] != ExitBlocks[0]) {
|
H A D | LoopUnroll.cpp | 264 SmallVector<BasicBlock *, 4> ExitBlocks; local 265 L->getExitBlocks(ExitBlocks); 275 std::any_of(ExitBlocks.begin(), ExitBlocks.end(),
|
H A D | CodeExtractor.cpp | 708 SmallPtrSet<BasicBlock *, 1> ExitBlocks; local 713 ExitBlocks.insert(*SI); 714 NumExitBlocks = ExitBlocks.size();
|
/external/llvm/lib/Transforms/IPO/ |
H A D | LoopExtractor.cpp | 115 SmallVector<BasicBlock*, 8> ExitBlocks; local 116 L->getExitBlocks(ExitBlocks); 117 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) 118 if (!isa<ReturnInst>(ExitBlocks[i]->getTerminator())) { 129 SmallVector<BasicBlock*, 8> ExitBlocks; local 130 L->getExitBlocks(ExitBlocks); 131 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) 132 if (ExitBlocks[i]->isEHPad()) {
|
/external/llvm/lib/Transforms/Scalar/ |
H A D | LoopInstSimplify.cpp | 80 SmallVector<BasicBlock*, 8> ExitBlocks; local 81 L->getUniqueExitBlocks(ExitBlocks); 82 array_pod_sort(ExitBlocks.begin(), ExitBlocks.end()); 170 bool IsExitBlock = std::binary_search(ExitBlocks.begin(), 171 ExitBlocks.end(), SuccBB);
|
H A D | LICM.cpp | 251 SmallVector<BasicBlock *, 8> ExitBlocks; local 258 AS, ExitBlocks, InsertPts, PIC, LI, DT, TLI, L, CurAST, &SafetyInfo); 663 SmallVector<BasicBlock *, 32> ExitBlocks; local 664 CurLoop->getUniqueExitBlocks(ExitBlocks); 665 SmallPtrSet<BasicBlock *, 32> ExitBlockSet(ExitBlocks.begin(), 666 ExitBlocks.end()); 843 AliasSet &AS, SmallVectorImpl<BasicBlock *> &ExitBlocks, 1018 if (ExitBlocks.empty()) { 1019 CurLoop->getUniqueExitBlocks(ExitBlocks); 1021 InsertPts.reserve(ExitBlocks 842 promoteLoopAccessesToScalars( AliasSet &AS, SmallVectorImpl<BasicBlock *> &ExitBlocks, SmallVectorImpl<Instruction *> &InsertPts, PredIteratorCache &PIC, LoopInfo *LI, DominatorTree *DT, const TargetLibraryInfo *TLI, Loop *CurLoop, AliasSetTracker *CurAST, LoopSafetyInfo *SafetyInfo) argument [all...] |
H A D | LoopUnswitch.cpp | 237 const SmallVectorImpl<BasicBlock *> &ExitBlocks); 1009 const SmallVectorImpl<BasicBlock *> &ExitBlocks){ 1011 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { 1012 BasicBlock *ExitBlock = ExitBlocks[i]; 1048 SmallVector<BasicBlock*, 8> ExitBlocks; local 1049 L->getUniqueExitBlocks(ExitBlocks); 1053 SplitExitEdges(L, ExitBlocks); 1056 ExitBlocks.clear(); 1057 L->getUniqueExitBlocks(ExitBlocks); 1060 LoopBlocks.insert(LoopBlocks.end(), ExitBlocks 1008 SplitExitEdges(Loop *L, const SmallVectorImpl<BasicBlock *> &ExitBlocks) argument [all...] |
H A D | IndVarSimplify.cpp | 511 SmallVector<BasicBlock*, 8> ExitBlocks; local 512 L->getUniqueExitBlocks(ExitBlocks); 518 for (BasicBlock *ExitBB : ExitBlocks) { 674 SmallVector<BasicBlock *, 8> ExitBlocks; local 675 L->getUniqueExitBlocks(ExitBlocks); 679 for (auto *ExitBB : ExitBlocks) { 752 SmallVector<BasicBlock *, 8> ExitBlocks; local 753 L->getUniqueExitBlocks(ExitBlocks); 754 if (ExitBlocks.size() > 1 || ExitingBlocks.size() > 1) 757 BasicBlock *ExitBlock = ExitBlocks[ [all...] |
H A D | LoopIdiomRecognize.cpp | 106 SmallVectorImpl<BasicBlock *> &ExitBlocks); 255 SmallVector<BasicBlock *, 8> ExitBlocks; 256 CurLoop->getUniqueExitBlocks(ExitBlocks); 277 MadeChange |= runOnLoopBlock(BB, BECount, ExitBlocks); 461 SmallVectorImpl<BasicBlock *> &ExitBlocks) { 465 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) 466 if (!DT->dominates(BB, ExitBlocks[i])) 459 runOnLoopBlock( BasicBlock *BB, const SCEV *BECount, SmallVectorImpl<BasicBlock *> &ExitBlocks) argument
|
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/ |
H A D | LoopInstSimplify.cpp | 68 SmallVector<BasicBlock*, 8> ExitBlocks; local 69 L->getUniqueExitBlocks(ExitBlocks); 70 array_pod_sort(ExitBlocks.begin(), ExitBlocks.end()); 152 bool IsExitBlock = std::binary_search(ExitBlocks.begin(), 153 ExitBlocks.end(), SuccBB);
|
H A D | LoopIdiomRecognize.cpp | 80 SmallVectorImpl<BasicBlock*> &ExitBlocks); 202 SmallVector<BasicBlock*, 8> ExitBlocks; local 203 CurLoop->getUniqueExitBlocks(ExitBlocks); 217 MadeChange |= runOnLoopBlock(*BI, BECount, ExitBlocks); 226 SmallVectorImpl<BasicBlock*> &ExitBlocks) { 230 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) 231 if (!DT->dominates(BB, ExitBlocks[i])) 225 runOnLoopBlock(BasicBlock *BB, const SCEV *BECount, SmallVectorImpl<BasicBlock*> &ExitBlocks) argument
|
H A D | LICM.cpp | 445 SmallVector<BasicBlock*, 8> ExitBlocks; local 446 CurLoop->getUniqueExitBlocks(ExitBlocks); 456 if (ExitBlocks.size() == 1) { 457 if (!DT->dominates(I.getParent(), ExitBlocks[0])) { 469 I.moveBefore(ExitBlocks[0]->getFirstInsertionPt()); 479 if (ExitBlocks.empty()) { 501 // ExitBlocks list once. 505 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { 506 BasicBlock *ExitBlock = ExitBlocks[i]; 600 SmallVector<BasicBlock*, 8> ExitBlocks; 779 SmallVector<BasicBlock*, 8> ExitBlocks; local [all...] |
H A D | LoopUnswitch.cpp | 139 void SplitExitEdges(Loop *L, const SmallVector<BasicBlock *, 8> &ExitBlocks); 558 const SmallVector<BasicBlock *, 8> &ExitBlocks){ 560 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { 561 BasicBlock *ExitBlock = ExitBlocks[i]; 603 SmallVector<BasicBlock*, 8> ExitBlocks; local 604 L->getUniqueExitBlocks(ExitBlocks); 608 SplitExitEdges(L, ExitBlocks); 611 ExitBlocks.clear(); 612 L->getUniqueExitBlocks(ExitBlocks); 615 LoopBlocks.insert(LoopBlocks.end(), ExitBlocks 557 SplitExitEdges(Loop *L, const SmallVector<BasicBlock *, 8> &ExitBlocks) argument [all...] |
H A D | IndVarSimplify.cpp | 498 SmallVector<BasicBlock*, 8> ExitBlocks; local 499 L->getUniqueExitBlocks(ExitBlocks); 504 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { 505 BasicBlock *ExitBB = ExitBlocks[i];
|
/external/swiftshader/third_party/LLVM/lib/Transforms/Utils/ |
H A D | LCSSA.cpp | 76 const SmallVectorImpl<BasicBlock*> &ExitBlocks); 104 const SmallVectorImpl<BasicBlock*> &ExitBlocks, 107 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) 108 if (DT->dominates(DomNode, DT->getNode(ExitBlocks[i]))) 122 SmallVector<BasicBlock*, 8> ExitBlocks; local 123 L->getExitBlocks(ExitBlocks); 125 if (ExitBlocks.empty()) 144 if (!BlockDominatesAnExit(BB, ExitBlocks, DT)) 156 MadeChange |= ProcessInstruction(I, ExitBlocks); 168 const SmallVectorImpl<BasicBlock*> &ExitBlocks) { 103 BlockDominatesAnExit(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &ExitBlocks, DominatorTree *DT) argument 167 isExitBlock(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &ExitBlocks) argument 178 ProcessInstruction(Instruction *Inst, const SmallVectorImpl<BasicBlock*> &ExitBlocks) argument [all...] |
H A D | BreakCriticalEdges.cpp | 347 SmallVector<BasicBlock *, 4> ExitBlocks; local 348 TIL->getExitBlocks(ExitBlocks); 349 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { 354 BasicBlock *Exit = ExitBlocks[i];
|
H A D | LoopSimplify.cpp | 214 SmallVector<BasicBlock*, 8> ExitBlocks; local 215 L->getExitBlocks(ExitBlocks); 217 SmallSetVector<BasicBlock *, 8> ExitBlockSet(ExitBlocks.begin(), 218 ExitBlocks.end()); 285 if (!ExitBlocks.empty()) 286 for (unsigned i = 1, e = ExitBlocks.size(); i != e; ++i) 287 if (ExitBlocks[i] != ExitBlocks[0]) {
|
H A D | CodeExtractor.cpp | 209 std::set<BasicBlock*> ExitBlocks; local 234 ExitBlocks.insert(TI->getSuccessor(i)); 237 NumExitBlocks = ExitBlocks.size();
|
/external/llvm/include/llvm/Analysis/ |
H A D | LoopInfoImpl.h | 64 getExitBlocks(SmallVectorImpl<BlockT*> &ExitBlocks) const { 72 ExitBlocks.push_back(*I); 79 SmallVector<BlockT*, 8> ExitBlocks; local 80 getExitBlocks(ExitBlocks); 81 if (ExitBlocks.size() == 1) 82 return ExitBlocks[0];
|
/external/llvm/lib/CodeGen/ |
H A D | ShrinkWrap.cpp | 364 SmallVector<MachineBasicBlock*, 4> ExitBlocks; local 365 MLI->getLoopFor(Restore)->getExitingBlocks(ExitBlocks); 369 for (MachineBasicBlock *LoopExitBB: ExitBlocks) {
|
H A D | MachineLICM.cpp | 92 SmallVector<MachineBasicBlock*, 8> ExitBlocks; member in class:__anon13931::MachineLICM 95 return std::find(ExitBlocks.begin(), ExitBlocks.end(), MBB) != 96 ExitBlocks.end(); 302 ExitBlocks.clear(); 311 CurLoop->getExitBlocks(ExitBlocks);
|
/external/swiftshader/third_party/LLVM/lib/Transforms/IPO/ |
H A D | LoopExtractor.cpp | 109 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/swiftshader/third_party/LLVM/lib/Analysis/ |
H A D | LoopInfo.cpp | 308 SmallVector<BasicBlock *, 4> ExitBlocks; local 309 getExitBlocks(ExitBlocks); 310 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) 311 for (pred_iterator PI = pred_begin(ExitBlocks[i]), 312 PE = pred_end(ExitBlocks[i]); PI != PE; ++PI) 324 Loop::getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const { 349 // then only insert exit block in to the output ExitBlocks vector. 351 // ExitBlocks vector. 359 ExitBlocks.push_back(*I); 364 // only one edge in ExitBlocks [all...] |
/external/swiftshader/third_party/LLVM/include/llvm/Analysis/ |
H A D | LoopInfo.h | 216 void getExitBlocks(SmallVectorImpl<BlockT*> &ExitBlocks) const { 229 ExitBlocks.push_back(*I); 235 SmallVector<BlockT*, 8> ExitBlocks; local 236 getExitBlocks(ExitBlocks); 237 if (ExitBlocks.size() == 1) 238 return ExitBlocks[0]; 621 void getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const;
|