[llvm-commits] CVS: llvm/lib/VMCore/PassManager.cpp

Devang Patel dpatel at apple.com
Tue Dec 12 15:09:47 PST 2006



Changes in directory llvm/lib/VMCore:

PassManager.cpp updated: 1.84 -> 1.85
---
Log message:

collectRequiredAnalysisPasses().

Include RequiredTrainsitiveSet also.


---
Diffs of the changes:  (+8 -0)

 PassManager.cpp |    8 ++++++++
 1 files changed, 8 insertions(+)


Index: llvm/lib/VMCore/PassManager.cpp
diff -u llvm/lib/VMCore/PassManager.cpp:1.84 llvm/lib/VMCore/PassManager.cpp:1.85
--- llvm/lib/VMCore/PassManager.cpp:1.84	Tue Dec 12 17:07:44 2006
+++ llvm/lib/VMCore/PassManager.cpp	Tue Dec 12 17:09:32 2006
@@ -678,6 +678,14 @@
     assert (AnalysisPass && "Analysis pass is not available");
     RP.push_back(AnalysisPass);
   }
+
+  const std::vector<AnalysisID> &IDs = AnUsage.getRequiredTransitiveSet();
+  for (std::vector<AnalysisID>::const_iterator I = IDs.begin(),
+         E = IDs.end(); I != E; ++I) {
+    Pass *AnalysisPass = findAnalysisPass(*I, true);
+    assert (AnalysisPass && "Analysis pass is not available");
+    RP.push_back(AnalysisPass);
+  }
 }
 
 // All Required analyses should be available to the pass as it runs!  Here






More information about the llvm-commits mailing list