aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/CodeGen/MachineFunctionPass.h
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2007-07-05 20:39:35 +0000
committerDan Gohman <gohman@apple.com>2007-07-05 20:39:35 +0000
commitd27df628cc6fa29605fa221a2f0b03b4592caf03 (patch)
treec1a348af76e8d94ded66d2c00716f92e8b8c73b3 /include/llvm/CodeGen/MachineFunctionPass.h
parent4304bcc1edd75c8db64b46c3f99871a8bb4515a7 (diff)
Make MachineFunctionPass::runOnFunction non-virtual. Subclasses override
the virtual function runOnMachineFunction instead. And add access specifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37924 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/MachineFunctionPass.h')
-rw-r--r--include/llvm/CodeGen/MachineFunctionPass.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/llvm/CodeGen/MachineFunctionPass.h b/include/llvm/CodeGen/MachineFunctionPass.h
index 9a8d29b3c8..f90c696738 100644
--- a/include/llvm/CodeGen/MachineFunctionPass.h
+++ b/include/llvm/CodeGen/MachineFunctionPass.h
@@ -28,17 +28,20 @@ struct MachineFunctionPass : public FunctionPass {
explicit MachineFunctionPass(intptr_t ID) : FunctionPass(ID) {}
+protected:
/// runOnMachineFunction - This method must be overloaded to perform the
/// desired machine code transformation or analysis.
///
virtual bool runOnMachineFunction(MachineFunction &MF) = 0;
+public:
// FIXME: This pass should declare that the pass does not invalidate any LLVM
// passes.
- virtual bool runOnFunction(Function &F) {
+ bool runOnFunction(Function &F) {
return runOnMachineFunction(MachineFunction::get(&F));
}
+private:
virtual void virtfn(); // out of line virtual fn to give class a home.
};