diff options
author | Arthur Eubanks <aeubanks@google.com> | 2021-01-20 16:53:03 -0800 |
---|---|---|
committer | Arthur Eubanks <aeubanks@google.com> | 2021-01-21 21:08:54 -0800 |
commit | 6699029b67bf0f5389896f9f929a344b64cfd9c7 (patch) | |
tree | 88005624f9260350bcf745d872d9d4bbe1871ba7 /llvm/lib/Analysis/BasicAliasAnalysis.cpp | |
parent | f9b5f6937ebed5dccabfc3c287f11d18b68a36f6 (diff) | |
download | llvm-6699029b67bf0f5389896f9f929a344b64cfd9c7.zip llvm-6699029b67bf0f5389896f9f929a344b64cfd9c7.tar.gz llvm-6699029b67bf0f5389896f9f929a344b64cfd9c7.tar.bz2 |
[NewPM][opt] Run the "default" AA pipeline by default
We tend to assume that the AA pipeline is by default the default AA
pipeline and it's confusing when it's empty instead.
PR48779
Initially reverted due to BasicAA running analyses in an unspecified
order (multiple function calls as parameters), fixed by fetching
analyses before the call to construct BasicAA.
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D95117
Diffstat (limited to 'llvm/lib/Analysis/BasicAliasAnalysis.cpp')
-rw-r--r-- | llvm/lib/Analysis/BasicAliasAnalysis.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/llvm/lib/Analysis/BasicAliasAnalysis.cpp b/llvm/lib/Analysis/BasicAliasAnalysis.cpp index 57e308b..3d638c1 100644 --- a/llvm/lib/Analysis/BasicAliasAnalysis.cpp +++ b/llvm/lib/Analysis/BasicAliasAnalysis.cpp @@ -1832,13 +1832,12 @@ bool BasicAAResult::constantOffsetHeuristic( AnalysisKey BasicAA::Key; BasicAAResult BasicAA::run(Function &F, FunctionAnalysisManager &AM) { - return BasicAAResult(F.getParent()->getDataLayout(), - F, - AM.getResult<TargetLibraryAnalysis>(F), - AM.getResult<AssumptionAnalysis>(F), - &AM.getResult<DominatorTreeAnalysis>(F), - AM.getCachedResult<LoopAnalysis>(F), - AM.getCachedResult<PhiValuesAnalysis>(F)); + auto &TLI = AM.getResult<TargetLibraryAnalysis>(F); + auto &AC = AM.getResult<AssumptionAnalysis>(F); + auto *DT = &AM.getResult<DominatorTreeAnalysis>(F); + auto *LI = AM.getCachedResult<LoopAnalysis>(F); + auto *PV = AM.getCachedResult<PhiValuesAnalysis>(F); + return BasicAAResult(F.getParent()->getDataLayout(), F, TLI, AC, DT, LI, PV); } BasicAAWrapperPass::BasicAAWrapperPass() : FunctionPass(ID) { |