[llvm-commits] CVS: llvm/lib/VMCore/PassManager.cpp
Devang Patel
dpatel at apple.com
Tue Nov 7 14:57:19 PST 2006
Changes in directory llvm/lib/VMCore:
PassManager.cpp updated: 1.5 -> 1.6
---
Log message:
Update new pass managers to use PassManagerAnalysisHelper API.
---
Diffs of the changes: (+21 -6)
PassManager.cpp | 27 +++++++++++++++++++++------
1 files changed, 21 insertions(+), 6 deletions(-)
Index: llvm/lib/VMCore/PassManager.cpp
diff -u llvm/lib/VMCore/PassManager.cpp:1.5 llvm/lib/VMCore/PassManager.cpp:1.6
--- llvm/lib/VMCore/PassManager.cpp:1.5 Tue Nov 7 16:35:17 2006
+++ llvm/lib/VMCore/PassManager.cpp Tue Nov 7 16:56:50 2006
@@ -69,8 +69,13 @@
if (!BP)
return false;
- // TODO: Check if it suitable to manage P using this BasicBlockPassManager
- // or we need another instance of BasicBlockPassManager
+ // If this pass does not preserve anlysis that is used by other passes
+ // managed by this manager than it is not a suiable pass for this manager.
+ if (!manageablePass (P))
+ return false;
+
+ // Take a note of analysis required by this pass.
+ noteDownRequiredAnalysis(P);
// Add pass
PassVector.push_back(BP);
@@ -124,8 +129,13 @@
if (!FP)
return false;
- // TODO: Check if it suitable to manage P using this FunctionPassManager
- // or we need another instance of FunctionPassManager
+ // If this pass does not preserve anlysis that is used by other passes
+ // managed by this manager than it is not a suiable pass for this manager.
+ if (!manageablePass (P))
+ return false;
+
+ // Take a note of analysis required by this pass.
+ noteDownRequiredAnalysis(P);
PassVector.push_back(FP);
activeBBPassManager = NULL;
@@ -179,8 +189,13 @@
if (!MP)
return false;
- // TODO: Check if it suitable to manage P using this ModulePassManager
- // or we need another instance of ModulePassManager
+ // If this pass does not preserve anlysis that is used by other passes
+ // managed by this manager than it is not a suiable pass for this manager.
+ if (!manageablePass (P))
+ return false;
+
+ // Take a note of analysis required by this pass.
+ noteDownRequiredAnalysis(P);
PassVector.push_back(MP);
activeFunctionPassManager = NULL;
More information about the llvm-commits
mailing list