[llvm-commits] CVS: llvm/lib/Target/SparcV9/SparcV9JITInfo.h

Chris Lattner lattner at cs.uiuc.edu
Mon Nov 22 12:24:54 PST 2004



Changes in directory llvm/lib/Target/SparcV9:

SparcV9JITInfo.h updated: 1.6 -> 1.7
---
Log message:

New methods implemented



---
Diffs of the changes:  (+18 -0)

Index: llvm/lib/Target/SparcV9/SparcV9JITInfo.h
diff -u llvm/lib/Target/SparcV9/SparcV9JITInfo.h:1.6 llvm/lib/Target/SparcV9/SparcV9JITInfo.h:1.7
--- llvm/lib/Target/SparcV9/SparcV9JITInfo.h:1.6	Fri Nov 19 22:19:47 2004
+++ llvm/lib/Target/SparcV9/SparcV9JITInfo.h	Mon Nov 22 14:24:42 2004
@@ -38,6 +38,24 @@
     /// 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);
   };
 }
 






More information about the llvm-commits mailing list