summaryrefslogtreecommitdiff
path: root/include/llvm/PassManager.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-09-04 04:07:39 +0000
committerChris Lattner <sabre@nondot.org>2006-09-04 04:07:39 +0000
commitb2cd4bac87b7d5514101660507ffac34370b7a3a (patch)
tree1596f31930bf29f3ba79849eaa7b1ee25ea3f93c /include/llvm/PassManager.h
parent3199af2874ac10b534b0306fe4e57d20a5c6b028 (diff)
downloadllvm-b2cd4bac87b7d5514101660507ffac34370b7a3a.tar.gz
llvm-b2cd4bac87b7d5514101660507ffac34370b7a3a.tar.bz2
llvm-b2cd4bac87b7d5514101660507ffac34370b7a3a.tar.xz
Add explicit doInitialization/doFinalization methods instead of making
the FunctionPassManager redo this for each function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30079 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/PassManager.h')
-rw-r--r--include/llvm/PassManager.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/llvm/PassManager.h b/include/llvm/PassManager.h
index 47b49adeb8..7d4a2df6d1 100644
--- a/include/llvm/PassManager.h
+++ b/include/llvm/PassManager.h
@@ -70,11 +70,19 @@ public:
///
void add(ImmutablePass *IP);
+ /// doInitialization - Run all of the initializers for the function passes.
+ ///
+ bool doInitialization();
+
/// run - Execute all of the passes scheduled for execution. Keep
/// track of whether any of the passes modifies the function, and if
/// so, return true.
///
bool run(Function &F);
+
+ /// doFinalization - Run all of the initializers for the function passes.
+ ///
+ bool doFinalization();
};
} // End llvm namespace