Add new getJITStubForFunction method, which may optionally be implemented by
authorChris Lattner <sabre@nondot.org>
Fri, 12 Dec 2003 07:10:32 +0000 (07:10 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 12 Dec 2003 07:10:32 +0000 (07:10 +0000)
targets for better performance.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10429 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetMachine.h

index c0771a17468f22cee3fcada7199602d7cbbe0462..758feb2088e1f9c89ad24caea121c6b2587b70e7 100644 (file)
@@ -111,12 +111,21 @@ public:
 
   /// replaceMachineCodeForFunction - Make it so that calling the
   /// function whose machine code is at OLD turns into a call to NEW,
-  /// perhaps by overwriting OLD with a branch to NEW. FIXME: this is
-  /// JIT-specific.
+  /// perhaps by overwriting OLD with a branch to NEW.
+  ///
+  /// FIXME: this is JIT-specific.
   ///
   virtual void replaceMachineCodeForFunction (void *Old, void *New) {
     assert (0 && "Current target cannot replace machine code for functions");
   }
+
+  /// getJITStubForFunction - Create or return a stub for the specified
+  /// function.  This stub acts just like the specified function, except that it
+  /// allows the "address" of the function to be taken without having to
+  /// generate code for it.
+  virtual void *getJITStubForFunction(Function *F, MachineCodeEmitter &MCE) {
+    return 0;
+  }
 };
 
 } // End llvm namespace