[llvm-commits] CVS: llvm/lib/VMCore/PassManager.cpp
Devang Patel
dpatel at apple.com
Tue Dec 12 14:50:20 PST 2006
Changes in directory llvm/lib/VMCore:
PassManager.cpp updated: 1.79 -> 1.80
---
Log message:
findAnalysisPass().
First search all available passes before searching ImmutablePasses.
---
Diffs of the changes: (+13 -13)
PassManager.cpp | 26 +++++++++++++-------------
1 files changed, 13 insertions(+), 13 deletions(-)
Index: llvm/lib/VMCore/PassManager.cpp
diff -u llvm/lib/VMCore/PassManager.cpp:1.79 llvm/lib/VMCore/PassManager.cpp:1.80
--- llvm/lib/VMCore/PassManager.cpp:1.79 Tue Dec 12 16:47:13 2006
+++ llvm/lib/VMCore/PassManager.cpp Tue Dec 12 16:50:05 2006
@@ -512,6 +512,19 @@
Pass *PMTopLevelManager::findAnalysisPass(AnalysisID AID) {
Pass *P = NULL;
+ // Check pass managers
+ for (std::vector<Pass *>::iterator I = PassManagers.begin(),
+ E = PassManagers.end(); P == NULL && I != E; ++I) {
+ PMDataManager *PMD = dynamic_cast<PMDataManager *>(*I);
+ assert(PMD && "This is not a PassManager");
+ P = PMD->findAnalysisPass(AID, false);
+ }
+
+ // Check other pass managers
+ for (std::vector<PMDataManager *>::iterator I = IndirectPassManagers.begin(),
+ E = IndirectPassManagers.end(); P == NULL && I != E; ++I)
+ P = (*I)->findAnalysisPass(AID, false);
+
for (std::vector<ImmutablePass *>::iterator I = ImmutablePasses.begin(),
E = ImmutablePasses.end(); P == NULL && I != E; ++I) {
const PassInfo *PI = (*I)->getPassInfo();
@@ -529,19 +542,6 @@
}
}
- // Check pass managers
- for (std::vector<Pass *>::iterator I = PassManagers.begin(),
- E = PassManagers.end(); P == NULL && I != E; ++I) {
- PMDataManager *PMD = dynamic_cast<PMDataManager *>(*I);
- assert(PMD && "This is not a PassManager");
- P = PMD->findAnalysisPass(AID, false);
- }
-
- // Check other pass managers
- for (std::vector<PMDataManager *>::iterator I = IndirectPassManagers.begin(),
- E = IndirectPassManagers.end(); P == NULL && I != E; ++I)
- P = (*I)->findAnalysisPass(AID, false);
-
return P;
}
More information about the llvm-commits
mailing list