Add new methods for stub generation
authorChris Lattner <sabre@nondot.org>
Thu, 8 May 2003 21:53:57 +0000 (21:53 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 8 May 2003 21:53:57 +0000 (21:53 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6053 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/MachineCodeEmitter.h

index 572772dde70ad1611a7e69d0ef2a73a1271029ce..7fa73e5f5d405a218871a70651ed3fb21871d3e3 100644 (file)
@@ -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.
   ///