[llvm-commits] CVS: llvm/lib/ExecutionEngine/JIT/JIT.h TargetSelect.cpp

Chris Lattner lattner at cs.uiuc.edu
Sun Dec 28 03:45:01 PST 2003


Changes in directory llvm/lib/ExecutionEngine/JIT:

JIT.h updated: 1.22 -> 1.23
TargetSelect.cpp updated: 1.1 -> 1.2

---
Log message:

Pass around IntrinsicLowering instances as appropriate.
Reimplement the Interpreters implementation of va_* to be more direct.


---
Diffs of the changes:  (+8 -5)

Index: llvm/lib/ExecutionEngine/JIT/JIT.h
diff -u llvm/lib/ExecutionEngine/JIT/JIT.h:1.22 llvm/lib/ExecutionEngine/JIT/JIT.h:1.23
--- llvm/lib/ExecutionEngine/JIT/JIT.h:1.22	Fri Dec 26 00:13:47 2003
+++ llvm/lib/ExecutionEngine/JIT/JIT.h	Sun Dec 28 03:44:37 2003
@@ -44,9 +44,11 @@
   ~JIT();
 
   /// create - Create an return a new JIT compiler if there is one available
-  /// for the current target.  Otherwise, return null.
+  /// for the current target.  Otherwise, return null.  If the JIT is created
+  /// successfully, it takes responsibility for deleting the specified
+  /// IntrinsicLowering implementation.
   ///
-  static ExecutionEngine *create(ModuleProvider *MP);
+  static ExecutionEngine *create(ModuleProvider *MP, IntrinsicLowering *IL = 0);
 
   /// run - Start execution with the specified function and arguments.
   ///


Index: llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp
diff -u llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp:1.1 llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp:1.2
--- llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp:1.1	Fri Dec 19 19:46:27 2003
+++ llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp	Sun Dec 28 03:44:37 2003
@@ -53,8 +53,9 @@
 /// create - Create an return a new JIT compiler if there is one available
 /// for the current target.  Otherwise, return null.
 ///
-ExecutionEngine *JIT::create(ModuleProvider *MP) {
-  TargetMachine* (*TargetMachineAllocator)(const Module &) = 0;
+ExecutionEngine *JIT::create(ModuleProvider *MP, IntrinsicLowering *IL) {
+  TargetMachine* (*TargetMachineAllocator)(const Module &,
+                                           IntrinsicLowering *IL) = 0;
 
   // Allow a command-line switch to override what *should* be the default target
   // machine for this platform. This allows for debugging a Sparc JIT on X86 --
@@ -80,7 +81,7 @@
 #endif
 
   // Allocate a target...
-  TargetMachine *Target = TargetMachineAllocator(*MP->getModule());
+  TargetMachine *Target = TargetMachineAllocator(*MP->getModule(), IL);
   assert(Target && "Could not allocate target machine!");
 
   // If the target supports JIT code generation, return a new JIT now.





More information about the llvm-commits mailing list