summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-05-08 21:53:57 +0000
committerChris Lattner <sabre@nondot.org>2003-05-08 21:53:57 +0000
commite79e4c8147b4fcd8b66b5fcb039f069a7dd64e7c (patch)
treef3f8763f1a338abbfae2321dec4497c8cc439e57 /llvm
parent037f1e58bdf437282d12daf188c4c72ecc0bde3b (diff)
downloadbcm5719-llvm-e79e4c8147b4fcd8b66b5fcb039f069a7dd64e7c.tar.gz
bcm5719-llvm-e79e4c8147b4fcd8b66b5fcb039f069a7dd64e7c.zip
Add new methods for stub generation
llvm-svn: 6053
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/CodeGen/MachineCodeEmitter.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/include/llvm/CodeGen/MachineCodeEmitter.h b/llvm/include/llvm/CodeGen/MachineCodeEmitter.h
index 572772dde70..7fa73e5f5d4 100644
--- a/llvm/include/llvm/CodeGen/MachineCodeEmitter.h
+++ b/llvm/include/llvm/CodeGen/MachineCodeEmitter.h
@@ -39,6 +39,18 @@ struct MachineCodeEmitter {
///
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.
///
OpenPOWER on IntegriCloud