| /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/ |
| MemorySSAUpdater.h | 58 MemorySSA *MSSA; 68 MemorySSAUpdater(MemorySSA *MSSA) : MSSA(MSSA) {} 225 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) 249 MemorySSA* getMemorySSA() const { return MSSA; }
|
| LoopAnalysisManager.h | 61 MemorySSA *MSSA; 117 /// Mark MemorySSA as used so we can invalidate self if MSSA is invalidated.
|
| MemorySSA.h | 932 Result(std::unique_ptr<MemorySSA> &&MSSA) : MSSA(std::move(MSSA)) {} 934 MemorySSA &getMSSA() { return *MSSA.get(); } 936 std::unique_ptr<MemorySSA> MSSA; 969 MemorySSA &getMSSA() { return *MSSA; } 970 const MemorySSA &getMSSA() const { return *MSSA; } 978 std::unique_ptr<MemorySSA> MSSA; 1022 MemoryAccess *MA = MSSA->getMemoryAccess(I); 1053 friend class MemorySSA; // For updating MSSA pointer in MemorySSA mov [all...] |
| /src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Scalar/ |
| MemCpyOptimizer.h | 48 MemorySSA *MSSA = nullptr; 59 MemorySSA *MSSA);
|
| /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/ |
| AMDGPUAnnotateUniformValues.cpp | 31 MemorySSA *MSSA; 74 const MemoryAccess *MA = MSSA->getWalker()->getClobberingMemoryAccess(Load); 75 return !MSSA->isLiveOnEntryDef(MA); 141 MSSA = &getAnalysis<MemorySSAWrapperPass>().getMSSA();
|
| /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/ |
| LoopInstSimplify.cpp | 80 MemorySSA *MSSA = MSSAU ? MSSAU->getMemorySSA() : nullptr; 85 MSSA->verifyMemorySSA(); 139 if (MemoryAccess *MA = MSSA->getMemoryAccess(&I)) 140 if (MemoryAccess *ReplacementMA = MSSA->getMemoryAccess(SimpleI)) 159 MSSA->verifyMemorySSA(); 198 MemorySSA *MSSA = nullptr; 201 MSSA = &getAnalysis<MemorySSAWrapperPass>().getMSSA(); 202 MSSAU = MemorySSAUpdater(MSSA); 228 if (AR.MSSA) { 229 MSSAU = MemorySSAUpdater(AR.MSSA); [all...] |
| LoopDeletion.cpp | 143 LoopInfo &LI, MemorySSA *MSSA, 154 breakLoopBackedge(L, DT, SE, LI, MSSA); 174 MemorySSA *MSSA, 207 deleteDeadLoop(L, &DT, &SE, &LI, MSSA); 250 deleteDeadLoop(L, &DT, &SE, &LI, MSSA); 267 auto Result = deleteLoopIfDead(&L, AR.DT, AR.SE, AR.LI, AR.MSSA, ORE); 274 AR.MSSA, ORE)); 283 if (AR.MSSA) 322 MemorySSA *MSSA = nullptr; 324 MSSA = &MSSAAnalysis->getMSSA() [all...] |
| LoopSink.cpp | 74 "enable-mssa-in-loop-sink", cl::Hidden, cl::init(true), 78 "enable-mssa-in-legacy-loop-sink", cl::Hidden, cl::init(false), 284 MemorySSA *MSSA) { 302 if (MSSA) { 303 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA); 305 std::make_unique<SinkAndHoistLICMFlags>(/*IsSink=*/true, &L, MSSA); 361 MemorySSA *MSSA = EnableMSSAInLoopSink 396 CurAST.get(), MSSA); 405 if (MSSA) { 409 MSSA->verifyMemorySSA() [all...] |
| LoopSimplifyCFG.cpp | 704 if (AR.MSSA) 705 MSSAU = MemorySSAUpdater(AR.MSSA); 716 if (AR.MSSA) 738 MemorySSA *MSSA = &getAnalysis<MemorySSAWrapperPass>().getMSSA(); 739 MSSAU = MemorySSAUpdater(MSSA); 741 MSSA->verifyMemorySSA();
|
| EarlyCSE.cpp | 81 "earlycse-mssa-optimization-cap", cl::init(500), cl::Hidden, 525 MemorySSA *MSSA; 604 AssumptionCache &AC, MemorySSA *MSSA) 605 : TLI(TLI), TTI(TTI), DT(DT), AC(AC), SQ(DL, &TLI, &DT, &AC), MSSA(MSSA), 606 MSSAUpdater(std::make_unique<MemorySSAUpdater>(MSSA)) {} 955 if (!MSSA) 958 MSSA->verifyMemorySSA(); 995 if (!MSSA) 1005 auto *EarlierMA = MSSA->getMemoryAccess(EarlierInst) [all...] |
| GVNHoist.cpp | 262 MemoryDependenceResults *MD, MemorySSA *MSSA) 263 : DT(DT), PDT(PDT), AA(AA), MD(MD), MSSA(MSSA), 264 MSSAUpdater(std::make_unique<MemorySSAUpdater>(MSSA)) {} 282 MemorySSA *MSSA; 535 auto &MSSA = getAnalysis<MemorySSAWrapperPass>().getMSSA(); 537 GVNHoist G(&DT, &PDT, &AA, &MD, &MSSA); 634 const MemorySSA::AccessList *Acc = MSSA->getBlockAccesses(BB); 770 if (NewBB == DBB && !MSSA->isLiveOnEntryDef(D)) 787 assert(MSSA->locallyDominates(D, U)) [all...] |
| MemCpyOptimizer.cpp | 356 static bool writtenBetween(MemorySSA *MSSA, MemoryLocation Loc, 360 MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess( 362 return !MSSA->dominates(Clobber, Start); 610 // Find MSSA insertion point. Normally P will always have a corresponding 612 // pipelines, there may be a mismatch between AA and MSSA, in which case we 615 // TODO: Simplify this once P will be determined by MSSA, in which case the 683 // TODO: Can use MSSA for this. 751 MSSA->getWalker()->getClobberingMemoryAccess(LI))) { 768 if (accessedBetween(*AA, StoreLoc, MSSA->getMemoryAccess(C), 769 MSSA->getMemoryAccess(SI)) [all...] |
| DeadStoreElimination.cpp | 851 MemorySSA &MSSA; 878 DSEState(Function &F, AliasAnalysis &AA, MemorySSA &MSSA, DominatorTree &DT, 880 : F(F), AA(AA), BatchAA(AA), MSSA(MSSA), DT(DT), PDT(PDT), TLI(TLI), 883 static DSEState get(Function &F, AliasAnalysis &AA, MemorySSA &MSSA, 886 DSEState State(F, AA, MSSA, DT, PDT, TLI); 893 MemoryAccess *MA = MSSA.getMemoryAccess(&I); 1310 if (!MSSA.isLiveOnEntryDef(Current) && isa<MemoryUseOrDef>(Current)) 1317 if (MSSA.isLiveOnEntryDef(Current)) { 1375 return !MSSA.dominates(StartAccess, UseOrDef) & [all...] |
| GVN.cpp | 672 auto *MSSA = AM.getCachedResult<MemorySSAAnalysis>(F); 675 MSSA ? &MSSA->getMSSA() : nullptr); 681 if (MSSA) 1199 auto *MSSA = MSSAU->getMemorySSA(); 1203 auto *LoadAcc = MSSA->getMemoryAccess(Load); 2439 OptimizationRemarkEmitter *RunORE, MemorySSA *MSSA) { 2452 MemorySSAUpdater Updater(MSSA); 2453 MSSAU = MSSA ? &Updater : nullptr; 2500 if (MSSA && VerifyMemorySSA [all...] |
| IndVarSimplify.cpp | 175 TargetTransformInfo *TTI, MemorySSA *MSSA, bool WidenIndVars) 178 if (MSSA) 179 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA); 1927 IndVarSimplify IVS(&AR.LI, &AR.SE, &AR.DT, DL, &AR.TLI, &AR.TTI, AR.MSSA, 1934 if (AR.MSSA) 1961 MemorySSA *MSSA = nullptr; 1963 MSSA = &MSSAAnalysis->getMSSA(); 1965 IndVarSimplify IVS(LI, SE, DT, DL, TLI, TTI, MSSA, AllowIVWidening);
|
| LICM.cpp | 137 "licm-mssa-optimization-cap", cl::init(100), cl::Hidden, 145 "licm-mssa-max-acc-promotion", cl::init(250), cl::Hidden, 146 cl::desc("[LICM & MemorySSA] When MSSA in LICM is disabled, this has no " 147 "effect. When MSSA in LICM is enabled, then this is the maximum " 173 static bool pointerInvalidatedByLoopWithMSSA(MemorySSA *MSSA, MemoryUse *MU, 176 static bool pointerInvalidatedByBlockWithMSSA(BasicBlock &BB, MemorySSA &MSSA, 189 static void foreachMemoryAccess(MemorySSA *MSSA, Loop *L, 192 collectPromotionCandidates(MemorySSA *MSSA, AliasAnalysis *AA, Loop *L); 198 TargetTransformInfo *TTI, ScalarEvolution *SE, MemorySSA *MSSA, 231 MemorySSA *MSSA = EnableMSSALoopDependenc [all...] |
| LoopIdiomRecognize.cpp | 166 const TargetTransformInfo *TTI, MemorySSA *MSSA, 170 if (MSSA) 171 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA); 286 MemorySSA *MSSA = nullptr; 288 MSSA = &MSSAAnalysis->getMSSA(); 295 LoopIdiomRecognize LIR(AA, DT, LI, SE, TLI, TTI, MSSA, DL, ORE); 327 AR.MSSA, DL, ORE); 332 if (AR.MSSA)
|
| LoopUnswitch.cpp | 194 MemorySSA *MSSA = nullptr; 543 MSSA = &getAnalysis<MemorySSAWrapperPass>().getMSSA(); 544 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA); 554 if (MSSA && VerifyMemorySSA) 555 MSSA->verifyMemorySSA(); 560 if (MSSA && VerifyMemorySSA) 561 MSSA->verifyMemorySSA(); 566 if (MSSA && VerifyMemorySSA) 567 MSSA->verifyMemorySSA(); 848 if (MSSA & [all...] |
| NewGVN.cpp | 497 MemorySSA *MSSA = nullptr; 661 TargetLibraryInfo *TLI, AliasAnalysis *AA, MemorySSA *MSSA, 663 : F(F), DT(DT), TLI(TLI), AA(AA), MSSA(MSSA), AC(AC), DL(DL), 940 auto *Result = MSSA->getMemoryAccess(I); 946 return MSSA->getMemoryAccess(BB); 1398 StoreRHS = MSSA->getLiveOnEntryDef(); 1527 if (!MSSA->isLiveOnEntryDef(DefiningAccess)) { 1609 if (auto *MA = MSSA->getMemoryAccess(CI)) { 1612 } else // MSSA determined that CI does not access memory [all...] |
| SimpleLoopUnswitch.cpp | 492 // Temporarily clone the terminator, to make MSSA update cheaper by 920 if (MSSAU) // Possible early exit with MSSA 2029 // Get blocks in RPO order for MSSA update, before changing the CFG. 2124 // Keep a clone of the terminator for MSSA updates. 2230 // Perform MSSA cloning updates. 2880 /// The `MSSA` analysis is also updated if valid (i.e. its use is enabled). 2979 if (AR.MSSA) { 2980 MSSAU = MemorySSAUpdater(AR.MSSA); 2982 AR.MSSA->verifyMemorySSA(); 2988 if (AR.MSSA && VerifyMemorySSA [all...] |
| LoopStrengthReduce.cpp | 5919 MemorySSA *MSSA) { 5923 if (MSSA) 5924 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA); 5974 MemorySSA *MSSA = nullptr; 5976 MSSA = &MSSAAnalysis->getMSSA(); 5977 return ReduceLoopStrength(L, IU, SE, DT, LI, TTI, AC, TLI, MSSA); 5984 AR.DT, AR.LI, AR.TTI, AR.AC, AR.TLI, AR.MSSA)) 5988 if (AR.MSSA)
|
| /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/ |
| LoopVersioning.cpp | 357 MemorySSA *MSSA = EnableMSSALoopDependency 364 TLI, TTI, nullptr, MSSA};
|
| LoopSimplify.cpp | 815 MemorySSA *MSSA = nullptr; 820 MSSA = &MSSAAnalysis->getMSSA(); 821 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA); 851 auto *MSSA = &MSSAAnalysis->getMSSA(); 852 MSSAU = std::make_unique<MemorySSAUpdater>(MSSA);
|
| /src/external/apache2/llvm/dist/llvm/lib/CodeGen/ |
| InterleavedLoadCombinePass.cpp | 66 InterleavedLoadCombineImpl(Function &F, DominatorTree &DT, MemorySSA &MSSA, 68 : F(F), DT(DT), MSSA(MSSA), 84 MemorySSA &MSSA; 1186 auto FMA = MSSA.getMemoryAccess(First); 1188 auto MADef = MSSA.getMemoryAccess(LI)->getDefiningAccess(); 1189 if (!MSSA.dominates(MADef, FMA)) 1228 auto MSSAU = MemorySSAUpdater(&MSSA); 1230 LI, nullptr, MSSA.getMemoryAccess(InsertionPoint)));
|
| /src/external/apache2/llvm/dist/llvm/lib/Analysis/ |
| MemorySSA.cpp | 65 DotCFGMSSA("dot-cfg-mssa", 95 "enable-mssa-loop-dependency", cl::Hidden, cl::init(true), 109 const MemorySSA *MSSA; 112 MemorySSAAnnotatedWriter(const MemorySSA *M) : MSSA(M) {} 116 if (MemoryAccess *MA = MSSA->getMemoryAccess(BB)) 122 if (MemoryAccess *MA = MSSA->getMemoryAccess(I)) 382 /// \param MSSA The MemorySSA instance that Start and ClobberAt belong to. 390 const MemoryLocation &StartLoc, const MemorySSA &MSSA, 393 assert(MSSA.dominates(ClobberAt, Start) && "Clobber doesn't dominate start?"); 395 if (MSSA.isLiveOnEntryDef(Start)) [all...] |