diff options
| author | Daniel Berlin <dberlin@dberlin.org> | 2015-05-22 00:13:05 +0000 |
|---|---|---|
| committer | Daniel Berlin <dberlin@dberlin.org> | 2015-05-22 00:13:05 +0000 |
| commit | b301533ef142ee7cb00c03e2fdb05ae9470a41d1 (patch) | |
| tree | 0aee85e788d4c7814d24250aa8f6dec0431716ba /llvm/lib | |
| parent | faf4b57e1d57af8a1dd1aa3d4dc76d553dad7421 (diff) | |
| download | bcm5719-llvm-b301533ef142ee7cb00c03e2fdb05ae9470a41d1.tar.gz bcm5719-llvm-b301533ef142ee7cb00c03e2fdb05ae9470a41d1.zip | |
MergedLoadStoreMotion preserves MemoryDependenceAnalysis, it does not require it.
(It already was coded assuming it can sometimes be null, so no other changes are necessary)
llvm-svn: 237978
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp b/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp index 73f42961cb1..611a941b0b2 100644 --- a/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp +++ b/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp @@ -117,8 +117,8 @@ private: // This transformation requires dominator postdominator info void getAnalysisUsage(AnalysisUsage &AU) const override { AU.addRequired<TargetLibraryInfoWrapperPass>(); - AU.addRequired<MemoryDependenceAnalysis>(); AU.addRequired<AliasAnalysis>(); + AU.addPreserved<MemoryDependenceAnalysis>(); AU.addPreserved<AliasAnalysis>(); } @@ -580,7 +580,7 @@ bool MergedLoadStoreMotion::mergeStores(BasicBlock *T) { /// \brief Run the transformation for each function /// bool MergedLoadStoreMotion::runOnFunction(Function &F) { - MD = &getAnalysis<MemoryDependenceAnalysis>(); + MD = getAnalysisIfAvailable<MemoryDependenceAnalysis>(); AA = &getAnalysis<AliasAnalysis>(); bool Changed = false; |

