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

Devang Patel dpatel at apple.com
Mon Feb 5 11:34:33 PST 2007



Changes in directory llvm/lib/VMCore:

PassManager.cpp updated: 1.133 -> 1.134
---
Log message:

Fix PR1158: http://llvm.org/PR1158 

Do not insert Analysis pass, if it is already available.


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

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


Index: llvm/lib/VMCore/PassManager.cpp
diff -u llvm/lib/VMCore/PassManager.cpp:1.133 llvm/lib/VMCore/PassManager.cpp:1.134
--- llvm/lib/VMCore/PassManager.cpp:1.133	Thu Feb  1 16:08:25 2007
+++ llvm/lib/VMCore/PassManager.cpp	Mon Feb  5 13:34:17 2007
@@ -377,6 +377,11 @@
   // TODO : Allocate function manager for this pass, other wise required set
   // may be inserted into previous function manager
 
+  // If this Analysis is already requested by one of the previous pass
+  // and it is still available then do not insert new pass in the queue again.
+  if (findAnalysisPass(P->getPassInfo()))
+      return;
+
   AnalysisUsage AnUsage;
   P->getAnalysisUsage(AnUsage);
   const std::vector<AnalysisID> &RequiredSet = AnUsage.getRequiredSet();






More information about the llvm-commits mailing list