Add new -no-aa implementation
authorChris Lattner <sabre@nondot.org>
Wed, 26 Feb 2003 19:57:10 +0000 (19:57 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 26 Feb 2003 19:57:10 +0000 (19:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5641 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/AliasAnalysis.cpp

index 4816a67d102f8d6a487300b01651848f44fd06d5..a85d28daf2bf61fe82a6c97c690a6219248774ba 100644 (file)
@@ -97,3 +97,22 @@ bool AliasAnalysis::canInstructionRangeModify(const Instruction &I1,
 extern void BasicAAStub();
 static IncludeFile INCLUDE_BASICAA_CPP((void*)&BasicAAStub);
 
+
+namespace {
+  struct NoAA : public ImmutablePass, public AliasAnalysis {
+    virtual void getAnalysisUsage(AnalysisUsage &AU) const {
+      AliasAnalysis::getAnalysisUsage(AU);
+    }
+    
+    virtual void initializePass() {
+      InitializeAliasAnalysis(this);
+    }
+  };
+  // Register this pass...
+  RegisterOpt<NoAA>
+  X("no-aa", "No Alias Analysis (always returns 'may' alias)");
+
+  // Declare that we implement the AliasAnalysis interface
+  RegisterAnalysisGroup<AliasAnalysis, NoAA> Y;
+}  // End of anonymous namespace