[LLVMbugs] [Bug 176] NEW: LLVM JIT needs to be cleaned up/refactored
bugzilla-daemon at zion.cs.uiuc.edu
bugzilla-daemon at zion.cs.uiuc.edu
Thu Dec 11 22:57:56 PST 2003
http://llvm.cs.uiuc.edu/bugs/show_bug.cgi?id=176
Summary: LLVM JIT needs to be cleaned up/refactored
Product: libraries
Version: 1.0
Platform: All
OS/Version: All
Status: NEW
Severity: minor
Priority: P2
Component: Target-Independent JIT
AssignedTo: gaeke+bugs at uiuc.edu
ReportedBy: sabre at nondot.org
The LLVM JIT is sort-of clean, but has some code which has creeped into places
it really shouldn't be. In particular, the following should be changed:
1. Instead of piling cruft into TargetMachine, there should be a TargetJITInfo
class. This class get provide the following target-specific methods which
are required by the JIT and are currently in TargetMachine:
addPassesToJITCompile, replaceMachineCodeForFunction, getJITStubForFunction.
TargetMachine should then have a new getJITInfo() method which is
implemented by targets with JIT support, but defaults to returning a null
pointer.
2. lib/ExecutionEngine/JIT needs to be cleaned up. In particular, VM.h needs
to be renamed to JIT.h and VM.cpp needs to be folded into JIT.cpp. There
are other likely cleanups that could be performed, but those are the major
ones that make working on the JIT more confusing than it should be.
3. MachineCodeEmitter::forceRecompilationOf needs to be moved somewhere else.
I'm not sure exactly how the backend should call back into the JIT, but
this is currently nothing more than a convenient hack.
-Chris
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the llvm-bugs
mailing list