New methods implemented
authorChris Lattner <sabre@nondot.org>
Mon, 22 Nov 2004 20:24:42 +0000 (20:24 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 22 Nov 2004 20:24:42 +0000 (20:24 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18121 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9JITInfo.h

index 510984a00e8db2c53203a1f0eaf79433b1f1e6b1..6ec3e53e5ef34e734a62fcef85e19c34c7c3f1b3 100644 (file)
@@ -38,6 +38,24 @@ namespace llvm {
     /// code.
     ///
     virtual void replaceMachineCodeForFunction (void *Old, void *New);
+
+
+    /// emitFunctionStub - Use the specified MachineCodeEmitter object to emit a
+    /// small native function that simply calls the function at the specified
+    /// address.  Return the address of the resultant function.
+    virtual void *emitFunctionStub(void *Fn, MachineCodeEmitter &MCE);
+
+    /// getLazyResolverFunction - This method is used to initialize the JIT,
+    /// giving the target the function that should be used to compile a
+    /// function, and giving the JIT the target function used to do the lazy
+    /// resolving.
+    virtual LazyResolverFn getLazyResolverFunction(JITCompilerFn);
+
+    /// relocate - Before the JIT can run a block of code that has been emitted,
+    /// it must rewrite the code to contain the actual addresses of any
+    /// referenced global symbols.
+    virtual void relocate(void *Function, MachineRelocation *MR,
+                          unsigned NumRelocs);
   };
 }