/external/swiftshader/third_party/LLVM/lib/Transforms/Utils/ |
D | LCSSA.cpp | 76 const SmallVectorImpl<BasicBlock*> &ExitBlocks); 104 const SmallVectorImpl<BasicBlock*> &ExitBlocks, in BlockDominatesAnExit() argument 107 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in BlockDominatesAnExit() 108 if (DT->dominates(DomNode, DT->getNode(ExitBlocks[i]))) in BlockDominatesAnExit() 122 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 123 L->getExitBlocks(ExitBlocks); in runOnLoop() 125 if (ExitBlocks.empty()) in runOnLoop() 144 if (!BlockDominatesAnExit(BB, ExitBlocks, DT)) in runOnLoop() 156 MadeChange |= ProcessInstruction(I, ExitBlocks); in runOnLoop() 168 const SmallVectorImpl<BasicBlock*> &ExitBlocks) { in isExitBlock() argument [all …]
|
D | LoopSimplify.cpp | 214 SmallVector<BasicBlock*, 8> ExitBlocks; in ProcessLoop() local 215 L->getExitBlocks(ExitBlocks); in ProcessLoop() 217 SmallSetVector<BasicBlock *, 8> ExitBlockSet(ExitBlocks.begin(), in ProcessLoop() 218 ExitBlocks.end()); in ProcessLoop() 285 if (!ExitBlocks.empty()) in ProcessLoop() 286 for (unsigned i = 1, e = ExitBlocks.size(); i != e; ++i) in ProcessLoop() 287 if (ExitBlocks[i] != ExitBlocks[0]) { in ProcessLoop()
|
D | BreakCriticalEdges.cpp | 347 SmallVector<BasicBlock *, 4> ExitBlocks; in SplitCriticalEdge() local 348 TIL->getExitBlocks(ExitBlocks); in SplitCriticalEdge() 349 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { in SplitCriticalEdge() 354 BasicBlock *Exit = ExitBlocks[i]; in SplitCriticalEdge()
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/IPO/ |
D | LoopExtractor.cpp | 116 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 117 L->getExitBlocks(ExitBlocks); in runOnLoop() 118 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoop() 119 if (!isa<ReturnInst>(ExitBlocks[i]->getTerminator())) { in runOnLoop() 130 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 131 L->getExitBlocks(ExitBlocks); in runOnLoop() 132 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoop() 133 if (ExitBlocks[i]->isEHPad()) { in runOnLoop()
|
/external/llvm/lib/Transforms/Utils/ |
D | LCSSA.cpp | 56 const SmallVectorImpl<BasicBlock *> &ExitBlocks) { in isExitBlock() argument 57 return find(ExitBlocks, BB) != ExitBlocks.end(); in isExitBlock() 64 const SmallVectorImpl<BasicBlock *> &ExitBlocks, in processInstruction() argument 111 for (BasicBlock *ExitBB : ExitBlocks) { in processInstruction() 165 if (isa<PHINode>(UserBB->begin()) && isExitBlock(UserBB, ExitBlocks)) { in processInstruction() 209 const SmallVectorImpl<BasicBlock *> &ExitBlocks) { in blockDominatesAnExit() argument 211 return llvm::any_of(ExitBlocks, [&](BasicBlock * EB) { in blockDominatesAnExit() 221 SmallVector<BasicBlock *, 8> ExitBlocks; in formLCSSA() local 222 L.getExitBlocks(ExitBlocks); in formLCSSA() 224 if (ExitBlocks.empty()) in formLCSSA() [all …]
|
D | LoopSimplify.cpp | 538 SmallVector<BasicBlock*, 8> ExitBlocks; in simplifyOneLoop() local 539 L->getExitBlocks(ExitBlocks); in simplifyOneLoop() 541 SmallSetVector<BasicBlock *, 8> ExitBlockSet(ExitBlocks.begin(), in simplifyOneLoop() 542 ExitBlocks.end()); in simplifyOneLoop() 614 if (!ExitBlocks.empty()) in simplifyOneLoop() 615 for (unsigned i = 1, e = ExitBlocks.size(); i != e; ++i) in simplifyOneLoop() 616 if (ExitBlocks[i] != ExitBlocks[0]) { in simplifyOneLoop()
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/Utils/ |
D | LCSSA.cpp | 68 const SmallVectorImpl<BasicBlock *> &ExitBlocks) { in isExitBlock() argument 69 return is_contained(ExitBlocks, BB); in isExitBlock() 98 const SmallVectorImpl<BasicBlock *> &ExitBlocks = LoopExitBlocks[L]; in formLCSSAForInstructions() local 100 if (ExitBlocks.empty()) in formLCSSAForInstructions() 138 for (BasicBlock *ExitBB : ExitBlocks) { in formLCSSAForInstructions() 193 if (isa<PHINode>(UserBB->begin()) && isExitBlock(UserBB, ExitBlocks)) { in formLCSSAForInstructions() 261 Loop &L, DominatorTree &DT, SmallVector<BasicBlock *, 8> &ExitBlocks, in computeBlocksDominatingExits() argument 267 for (BasicBlock *BB : ExitBlocks) in computeBlocksDominatingExits() 309 SmallVector<BasicBlock *, 8> ExitBlocks; in formLCSSA() local 310 L.getExitBlocks(ExitBlocks); in formLCSSA() [all …]
|
/external/llvm/lib/Transforms/IPO/ |
D | LoopExtractor.cpp | 115 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 116 L->getExitBlocks(ExitBlocks); in runOnLoop() 117 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoop() 118 if (!isa<ReturnInst>(ExitBlocks[i]->getTerminator())) { in runOnLoop() 129 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 130 L->getExitBlocks(ExitBlocks); in runOnLoop() 131 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoop() 132 if (ExitBlocks[i]->isEHPad()) { in runOnLoop()
|
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/ |
D | LoopInstSimplify.cpp | 68 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 69 L->getUniqueExitBlocks(ExitBlocks); in runOnLoop() 70 array_pod_sort(ExitBlocks.begin(), ExitBlocks.end()); in runOnLoop() 152 bool IsExitBlock = std::binary_search(ExitBlocks.begin(), in runOnLoop() 153 ExitBlocks.end(), SuccBB); in runOnLoop()
|
D | LICM.cpp | 445 SmallVector<BasicBlock*, 8> ExitBlocks; in sink() local 446 CurLoop->getUniqueExitBlocks(ExitBlocks); in sink() 456 if (ExitBlocks.size() == 1) { in sink() 457 if (!DT->dominates(I.getParent(), ExitBlocks[0])) { in sink() 469 I.moveBefore(ExitBlocks[0]->getFirstInsertionPt()); in sink() 479 if (ExitBlocks.empty()) { in sink() 505 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { in sink() 506 BasicBlock *ExitBlock = ExitBlocks[i]; in sink() 600 SmallVector<BasicBlock*, 8> ExitBlocks; in isGuaranteedToExecute() local 601 CurLoop->getExitBlocks(ExitBlocks); in isGuaranteedToExecute() [all …]
|
D | LoopUnswitch.cpp | 139 void SplitExitEdges(Loop *L, const SmallVector<BasicBlock *, 8> &ExitBlocks); 558 const SmallVector<BasicBlock *, 8> &ExitBlocks){ in SplitExitEdges() argument 560 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { in SplitExitEdges() 561 BasicBlock *ExitBlock = ExitBlocks[i]; in SplitExitEdges() 603 SmallVector<BasicBlock*, 8> ExitBlocks; in UnswitchNontrivialCondition() local 604 L->getUniqueExitBlocks(ExitBlocks); in UnswitchNontrivialCondition() 608 SplitExitEdges(L, ExitBlocks); in UnswitchNontrivialCondition() 611 ExitBlocks.clear(); in UnswitchNontrivialCondition() 612 L->getUniqueExitBlocks(ExitBlocks); in UnswitchNontrivialCondition() 615 LoopBlocks.insert(LoopBlocks.end(), ExitBlocks.begin(), ExitBlocks.end()); in UnswitchNontrivialCondition() [all …]
|
D | LoopIdiomRecognize.cpp | 80 SmallVectorImpl<BasicBlock*> &ExitBlocks); 202 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 203 CurLoop->getUniqueExitBlocks(ExitBlocks); in runOnLoop() 217 MadeChange |= runOnLoopBlock(*BI, BECount, ExitBlocks); in runOnLoop() 226 SmallVectorImpl<BasicBlock*> &ExitBlocks) { in runOnLoopBlock() argument 230 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoopBlock() 231 if (!DT->dominates(BB, ExitBlocks[i])) in runOnLoopBlock()
|
/external/swiftshader/third_party/LLVM/lib/Transforms/IPO/ |
D | LoopExtractor.cpp | 109 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 110 L->getExitBlocks(ExitBlocks); in runOnLoop() 111 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoop() 112 if (!isa<ReturnInst>(ExitBlocks[i]->getTerminator())) { in runOnLoop() 123 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 124 L->getExitBlocks(ExitBlocks); in runOnLoop() 125 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in runOnLoop() 126 if (ExitBlocks[i]->isLandingPad()) { in runOnLoop()
|
/external/llvm/lib/Transforms/Scalar/ |
D | LoopInstSimplify.cpp | 80 SmallVector<BasicBlock*, 8> ExitBlocks; in runOnLoop() local 81 L->getUniqueExitBlocks(ExitBlocks); in runOnLoop() 82 array_pod_sort(ExitBlocks.begin(), ExitBlocks.end()); in runOnLoop() 170 bool IsExitBlock = std::binary_search(ExitBlocks.begin(), in runOnLoop() 171 ExitBlocks.end(), SuccBB); in runOnLoop()
|
D | LoopUnswitch.cpp | 237 const SmallVectorImpl<BasicBlock *> &ExitBlocks); 1009 const SmallVectorImpl<BasicBlock *> &ExitBlocks){ in SplitExitEdges() argument 1011 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { in SplitExitEdges() 1012 BasicBlock *ExitBlock = ExitBlocks[i]; in SplitExitEdges() 1048 SmallVector<BasicBlock*, 8> ExitBlocks; in UnswitchNontrivialCondition() local 1049 L->getUniqueExitBlocks(ExitBlocks); in UnswitchNontrivialCondition() 1053 SplitExitEdges(L, ExitBlocks); in UnswitchNontrivialCondition() 1056 ExitBlocks.clear(); in UnswitchNontrivialCondition() 1057 L->getUniqueExitBlocks(ExitBlocks); in UnswitchNontrivialCondition() 1060 LoopBlocks.insert(LoopBlocks.end(), ExitBlocks.begin(), ExitBlocks.end()); in UnswitchNontrivialCondition() [all …]
|
D | LICM.cpp | 251 SmallVector<BasicBlock *, 8> ExitBlocks; in runOnLoop() local 258 AS, ExitBlocks, InsertPts, PIC, LI, DT, TLI, L, CurAST, &SafetyInfo); in runOnLoop() 663 SmallVector<BasicBlock *, 32> ExitBlocks; in sink() local 664 CurLoop->getUniqueExitBlocks(ExitBlocks); in sink() 665 SmallPtrSet<BasicBlock *, 32> ExitBlockSet(ExitBlocks.begin(), in sink() 666 ExitBlocks.end()); in sink() 843 AliasSet &AS, SmallVectorImpl<BasicBlock *> &ExitBlocks, in promoteLoopAccessesToScalars() argument 1018 if (ExitBlocks.empty()) { in promoteLoopAccessesToScalars() 1019 CurLoop->getUniqueExitBlocks(ExitBlocks); in promoteLoopAccessesToScalars() 1021 InsertPts.reserve(ExitBlocks.size()); in promoteLoopAccessesToScalars() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/include/llvm/Analysis/ |
D | LoopInfoImpl.h | 64 SmallVectorImpl<BlockT *> &ExitBlocks) const { in getExitBlocks() argument 70 ExitBlocks.push_back(Succ); in getExitBlocks() 78 SmallVector<BlockT *, 8> ExitBlocks; in getExitBlock() local 79 getExitBlocks(ExitBlocks); in getExitBlock() 80 if (ExitBlocks.size() == 1) in getExitBlock() 81 return ExitBlocks[0]; in getExitBlock() 89 SmallVector<BlockT *, 4> ExitBlocks; in hasDedicatedExits() local 90 getExitBlocks(ExitBlocks); in hasDedicatedExits() 91 for (BlockT *EB : ExitBlocks) in hasDedicatedExits() 101 SmallVectorImpl<BlockT *> &ExitBlocks) const { in getUniqueExitBlocks() argument [all …]
|
/external/swiftshader/third_party/LLVM/lib/Analysis/ |
D | LoopInfo.cpp | 308 SmallVector<BasicBlock *, 4> ExitBlocks; in hasDedicatedExits() local 309 getExitBlocks(ExitBlocks); in hasDedicatedExits() 310 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) in hasDedicatedExits() 311 for (pred_iterator PI = pred_begin(ExitBlocks[i]), in hasDedicatedExits() 312 PE = pred_end(ExitBlocks[i]); PI != PE; ++PI) in hasDedicatedExits() 324 Loop::getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const { in getUniqueExitBlocks() 359 ExitBlocks.push_back(*I); in getUniqueExitBlocks() 369 ExitBlocks.push_back(*I); in getUniqueExitBlocks()
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/Scalar/ |
D | LICM.cpp | 292 SmallVector<BasicBlock *, 8> ExitBlocks; in runOnLoop() local 293 L->getUniqueExitBlocks(ExitBlocks); in runOnLoop() 296 bool HasCatchSwitch = llvm::any_of(ExitBlocks, [](BasicBlock *Exit) { in runOnLoop() 302 InsertPts.reserve(ExitBlocks.size()); in runOnLoop() 303 for (BasicBlock *ExitBlock : ExitBlocks) in runOnLoop() 327 Promoted |= promoteLoopAccessesToScalars(PointerMustAliases, ExitBlocks, in runOnLoop() 862 SmallVector<BasicBlock *, 32> ExitBlocks; in splitPredecessorsOfLoopExit() local 863 CurLoop->getUniqueExitBlocks(ExitBlocks); in splitPredecessorsOfLoopExit() 864 SmallPtrSet<BasicBlock *, 32> ExitBlockSet(ExitBlocks.begin(), in splitPredecessorsOfLoopExit() 865 ExitBlocks.end()); in splitPredecessorsOfLoopExit() [all …]
|
D | SimpleLoopUnswitch.cpp | 872 ArrayRef<BasicBlock *> ExitBlocks, BasicBlock *ParentBB, in buildClonedLoopBlocks() argument 879 NewBlocks.reserve(L.getNumBlocks() + ExitBlocks.size()); in buildClonedLoopBlocks() 913 for (auto *ExitBB : ExitBlocks) { in buildClonedLoopBlocks() 1101 static void buildClonedLoops(Loop &OrigL, ArrayRef<BasicBlock *> ExitBlocks, in buildClonedLoops() argument 1119 ClonedExitsInLoops.reserve(ExitBlocks.size()); in buildClonedLoops() 1120 for (auto *ExitBB : ExitBlocks) in buildClonedLoops() 1352 deleteDeadClonedBlocks(Loop &L, ArrayRef<BasicBlock *> ExitBlocks, in deleteDeadClonedBlocks() argument 1357 for (BasicBlock *BB : llvm::concat<BasicBlock *const>(L.blocks(), ExitBlocks)) in deleteDeadClonedBlocks() 1376 SmallVectorImpl<BasicBlock *> &ExitBlocks, in deleteDeadBlocksFromLoop() argument 1380 for (BasicBlock *BB : llvm::concat<BasicBlock *const>(L.blocks(), ExitBlocks)) in deleteDeadBlocksFromLoop() [all …]
|
D | LoopUnswitch.cpp | 235 const SmallVectorImpl<BasicBlock *> &ExitBlocks); 1184 const SmallVectorImpl<BasicBlock *> &ExitBlocks){ in SplitExitEdges() argument 1186 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { in SplitExitEdges() 1187 BasicBlock *ExitBlock = ExitBlocks[i]; in SplitExitEdges() 1225 SmallVector<BasicBlock*, 8> ExitBlocks; in UnswitchNontrivialCondition() local 1226 L->getUniqueExitBlocks(ExitBlocks); in UnswitchNontrivialCondition() 1230 SplitExitEdges(L, ExitBlocks); in UnswitchNontrivialCondition() 1233 ExitBlocks.clear(); in UnswitchNontrivialCondition() 1234 L->getUniqueExitBlocks(ExitBlocks); in UnswitchNontrivialCondition() 1237 LoopBlocks.insert(LoopBlocks.end(), ExitBlocks.begin(), ExitBlocks.end()); in UnswitchNontrivialCondition() [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Analysis/ |
D | MustExecute.cpp | 144 SmallVector<BasicBlock *, 8> ExitBlocks; in isGuaranteedToExecute() local 145 CurLoop->getExitBlocks(ExitBlocks); in isGuaranteedToExecute() 148 for (BasicBlock *ExitBlock : ExitBlocks) in isGuaranteedToExecute() 156 if (ExitBlocks.empty()) in isGuaranteedToExecute()
|
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/Instrumentation/ |
D | InstrProfiling.cpp | 174 BasicBlock *PH, ArrayRef<BasicBlock *> ExitBlocks, in PGOCounterPromoterHelper() argument 178 : LoadAndStorePromoter({L, S}, SSA), Store(S), ExitBlocks(ExitBlocks), in PGOCounterPromoterHelper() 186 for (unsigned i = 0, e = ExitBlocks.size(); i != e; ++i) { in doExtraRewritesBeforeFinalDeletion() 187 BasicBlock *ExitBlock = ExitBlocks[i]; in doExtraRewritesBeforeFinalDeletion() 217 ArrayRef<BasicBlock *> ExitBlocks; member in __anon2547670e0111::PGOCounterPromoterHelper 231 : LoopToCandidates(LoopToCands), ExitBlocks(), InsertPts(), L(CurLoop), in PGOCounterPromoter() 240 ExitBlocks.push_back(ExitBlock); in PGOCounterPromoter() 248 if (ExitBlocks.size() == 0) in run() 262 L.getLoopPreheader(), ExitBlocks, in run() 337 SmallVector<BasicBlock *, 8> ExitBlocks; member in __anon2547670e0111::PGOCounterPromoter
|
/external/llvm/include/llvm/Analysis/ |
D | LoopInfoImpl.h | 64 getExitBlocks(SmallVectorImpl<BlockT*> &ExitBlocks) const { in getExitBlocks() argument 72 ExitBlocks.push_back(*I); in getExitBlocks() 79 SmallVector<BlockT*, 8> ExitBlocks; in getExitBlock() local 80 getExitBlocks(ExitBlocks); in getExitBlock() 81 if (ExitBlocks.size() == 1) in getExitBlock() 82 return ExitBlocks[0]; in getExitBlock()
|
/external/llvm/lib/Analysis/ |
D | LoopInfo.cpp | 325 SmallVector<BasicBlock *, 4> ExitBlocks; in hasDedicatedExits() local 326 getExitBlocks(ExitBlocks); in hasDedicatedExits() 327 for (BasicBlock *BB : ExitBlocks) in hasDedicatedExits() 336 Loop::getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const { in getUniqueExitBlocks() 362 ExitBlocks.push_back(Successor); in getUniqueExitBlocks() 372 ExitBlocks.push_back(Successor); in getUniqueExitBlocks()
|