Update PassManagerImpl_New::analysisCurrentlyAvailable to check all
authorDevang Patel <dpatel@apple.com>
Mon, 13 Nov 2006 22:53:19 +0000 (22:53 +0000)
committerDevang Patel <dpatel@apple.com>
Mon, 13 Nov 2006 22:53:19 +0000 (22:53 +0000)
managed passmanagers.

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

lib/VMCore/PassManager.cpp

index 4a5c7f47a9c97a5dd74c266151ca4c80fefcd2c8..81753a11810c63127d4fe268fa7b0dc0c00801db 100644 (file)
@@ -484,8 +484,11 @@ bool ModulePassManager_New::analysisCurrentlyAvailable(AnalysisID AID) {
 /// Return true IFF AnalysisID AID is currently available.
 bool PassManagerImpl_New::analysisCurrentlyAvailable(AnalysisID AID) {
 
-  // TODO : Check inactive managers
-  return activeManager->analysisCurrentlyAvailable(AID);
+  bool available = false;
+  for (std::vector<ModulePassManager_New *>::iterator itr = PassManagers.begin(),
+         e = PassManagers.end(); !available && itr != e; ++itr)
+    available  = (*itr)->analysisCurrentlyAvailable(AID);
+  return available;
 }
 
 /// Schedule pass P for execution. Make sure that passes required by