Add new methods for stub generation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6053 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/llvm/CodeGen/MachineCodeEmitter.h b/include/llvm/CodeGen/MachineCodeEmitter.h
index 572772d..7fa73e5 100644
--- a/include/llvm/CodeGen/MachineCodeEmitter.h
+++ b/include/llvm/CodeGen/MachineCodeEmitter.h
@@ -39,6 +39,18 @@
///
virtual void startBasicBlock(MachineBasicBlock &BB) {}
+ /// startFunctionStub - This callback is invoked when the JIT needs the
+ /// address of a function that has not been code generated yet. The StubSize
+ /// specifies the total size required by the stub. Stubs are not allowed to
+ /// have constant pools, the can only use the other emit* methods.
+ ///
+ virtual void startFunctionStub(Function &F, unsigned StubSize) {}
+
+ /// finishFunctionStub - This callback is invoked to terminate a function
+ /// stub.
+ ///
+ virtual void finishFunctionStub(Function &F) {}
+
/// emitByte - This callback is invoked when a byte needs to be written to the
/// output stream.
///