]> granicus.if.org Git - llvm/commitdiff
LoopLoadElimination should preserve GlobalsAA.
authorEli Friedman <efriedma@codeaurora.org>
Fri, 16 Sep 2016 17:58:07 +0000 (17:58 +0000)
committerEli Friedman <efriedma@codeaurora.org>
Fri, 16 Sep 2016 17:58:07 +0000 (17:58 +0000)
Avoids losing GlobalsAA in the standard pass pipeline.

Differential Revision: https://reviews.llvm.org/D24094

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@281757 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/LoopLoadElimination.cpp

index 358253266eb6fc5706660f594824afe4f5ecf8fb..c586cb53f0e3ea1c0f6ee14abe6edaa9789f7eb1 100644 (file)
@@ -21,6 +21,7 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/ADT/Statistic.h"
+#include "llvm/Analysis/GlobalsModRef.h"
 #include "llvm/Analysis/LoopAccessAnalysis.h"
 #include "llvm/Analysis/LoopInfo.h"
 #include "llvm/Analysis/ScalarEvolutionExpander.h"
@@ -580,6 +581,7 @@ public:
     AU.addRequired<ScalarEvolutionWrapperPass>();
     AU.addRequired<DominatorTreeWrapperPass>();
     AU.addPreserved<DominatorTreeWrapperPass>();
+    AU.addPreserved<GlobalsAAWrapperPass>();
   }
 
   static char ID;