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

Brian Gaeke gaeke at cs.uiuc.edu
Thu Oct 23 22:56:01 PDT 2003


Changes in directory llvm/lib/ExecutionEngine/JIT:

VM.cpp updated: 1.11 -> 1.12

---
Log message:

Destroy MachineFunction for any Function that we are about to
recompile and relink. This keeps it from failing an assertion when
it goes and tries to construct a new MachineFunction for that Function.


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

Index: llvm/lib/ExecutionEngine/JIT/VM.cpp
diff -u llvm/lib/ExecutionEngine/JIT/VM.cpp:1.11 llvm/lib/ExecutionEngine/JIT/VM.cpp:1.12
--- llvm/lib/ExecutionEngine/JIT/VM.cpp:1.11	Mon Oct 20 14:43:16 2003
+++ llvm/lib/ExecutionEngine/JIT/VM.cpp	Thu Oct 23 22:55:37 2003
@@ -15,6 +15,7 @@
 #include "VM.h"
 #include "llvm/Function.h"
 #include "llvm/ModuleProvider.h"
+#include "llvm/CodeGen/MachineFunction.h"
 #include "llvm/CodeGen/MachineCodeEmitter.h"
 #include "llvm/Target/TargetMachine.h"
 
@@ -91,6 +92,7 @@
 
   void *OldAddr = Addr;
   Addr = 0;
+  MachineFunction::destruct (F);
   runJITOnFunction (F);
   assert(Addr && "Code generation didn't add function to GlobalAddress table!");
   TM.replaceMachineCodeForFunction (OldAddr, Addr);





More information about the llvm-commits mailing list