Initialize AnalysisImpls for ImmutablePass.
authorDevang Patel <dpatel@apple.com>
Tue, 12 Dec 2006 22:21:37 +0000 (22:21 +0000)
committerDevang Patel <dpatel@apple.com>
Tue, 12 Dec 2006 22:21:37 +0000 (22:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32498 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/PassManager.cpp

index dea2d919e1c103f13c3828436b05cf5b67919ead..db38eaadce848bdee5be9625c4c620ea18259454 100644 (file)
@@ -399,7 +399,9 @@ public:
       // top level manager. Set up analysis resolver to connect them.
       AnalysisResolver_New *AR = new AnalysisResolver_New(*this);
       P->setResolver(AR);
+      initializeAnalysisImpl(P);
       addImmutablePass(IP);
+      recordAvailableAnalysis(IP);
     } 
     else 
       addPass(P);
@@ -504,7 +506,9 @@ public:
       // top level manager. Set up analysis resolver to connect them.
       AnalysisResolver_New *AR = new AnalysisResolver_New(*this);
       P->setResolver(AR);
+      initializeAnalysisImpl(P);
       addImmutablePass(IP);
+      recordAvailableAnalysis(IP);
     }
     else 
       addPass(P);
@@ -634,7 +638,6 @@ void PMDataManager::addPassToManager(Pass *P,
 
     // Take a note of analysis required and made available by this pass.
     // Remove the analysis not preserved by this pass
-    initializeAnalysisImpl(P);
     removeNotPreservedAnalysis(P);
     recordAvailableAnalysis(P);
   }