From 1f25d8801f43752ee6dea6f2bfdf9430a46d20ee Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 8 May 2003 21:53:57 +0000 Subject: [PATCH] Add new methods for stub generation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6053 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineCodeEmitter.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/llvm/CodeGen/MachineCodeEmitter.h b/include/llvm/CodeGen/MachineCodeEmitter.h index 572772dde70..7fa73e5f5d4 100644 --- a/include/llvm/CodeGen/MachineCodeEmitter.h +++ b/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. ///