]> granicus.if.org Git - llvm/commitdiff
[PM/MergedLoadStoreMotion] Preserve analyses more aggressively.
authorDavide Italiano <davide@freebsd.org>
Tue, 14 Jun 2016 01:23:31 +0000 (01:23 +0000)
committerDavide Italiano <davide@freebsd.org>
Tue, 14 Jun 2016 01:23:31 +0000 (01:23 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272611 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/MergedLoadStoreMotion.cpp

index 251650c5539c065d111bac4eaa1de6d49e792866..12ee3d8da6a7222fb82cc835eaf90c17ff0cccde 100644 (file)
@@ -520,7 +520,12 @@ MergedLoadStoreMotionPass::run(Function &F, AnalysisManager<Function> &AM) {
   auto *MD = AM.getCachedResult<MemoryDependenceAnalysis>(F);
   if (!runMergedLoadStoreMotion(F, &AA, MD))
     return PreservedAnalyses::all();
-  return PreservedAnalyses::none();
+  // FIXME: This pass should also 'preserve the CFG'.
+  // The new pass manager has currently no way to do it.
+  PreservedAnalyses PA;
+  PA.preserve<GlobalsAA>();
+  PA.preserve<MemoryDependenceAnalysis>();
+  return PA;
 }
 
 namespace {