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; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits