[llvm] r271934 - [PM] Preserve the correct set of analyses for GVN.

Davide Italiano via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 6 13:01:50 PDT 2016


Author: davide
Date: Mon Jun  6 15:01:50 2016
New Revision: 271934

URL: http://llvm.org/viewvc/llvm-project?rev=271934&view=rev
Log:
[PM] Preserve the correct set of analyses for GVN.

Modified:
    llvm/trunk/lib/Transforms/Scalar/GVN.cpp

Modified: llvm/trunk/lib/Transforms/Scalar/GVN.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/GVN.cpp?rev=271934&r1=271933&r2=271934&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/GVN.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/GVN.cpp Mon Jun  6 15:01:50 2016
@@ -594,7 +594,12 @@ PreservedAnalyses GVN::run(Function &F,
   auto &AA = AM.getResult<AAManager>(F);
   auto &MemDep = AM.getResult<MemoryDependenceAnalysis>(F);
   bool Changed = runImpl(F, AC, DT, TLI, AA, &MemDep);
-  return Changed ? PreservedAnalyses::none() : PreservedAnalyses::all();
+  if (!Changed)
+    return PreservedAnalyses::all();
+  PreservedAnalyses PA;
+  PA.preserve<DominatorTreeAnalysis>();
+  PA.preserve<GlobalsAA>();
+  return PA;
 }
 
 LLVM_DUMP_METHOD




More information about the llvm-commits mailing list