llvm/lib/ExecutionEngine/JIT
Misha Brukman 4e8c999518 ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT :::
The JIT is designed to code-generate a function at-a-time. That means that any
pass can only make local changes to its function. Period.

Because the Sparc PreSelection pass claims to be a BasicBlock pass while adding
globals to the Module, it cannot be run with the other passes, because by this
time, the globals have been output already by the JIT, and the addresses of any
globals appearing AFTER this point are not recognized.

However, the PreSelection pass is a requirement for correctness in the Sparc
codegen path, so it MUST be run.

::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT :::


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6650 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-06 06:59:55 +00:00
..
Intercept.cpp Sparc's dlsym() requires the special operand RTLD_SELF to find a symbol in the 2003-06-04 01:57:22 +00:00
JIT.cpp ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: HACK ALERT ::: 2003-06-06 06:59:55 +00:00
JIT.h * Removed SparcEmitter.cpp; rolled into lib/Target/Sparc/SparcV9CodeEmitter.cpp 2003-06-02 03:23:16 +00:00
JITEmitter.cpp Output function address as hex. 2003-06-06 06:52:35 +00:00
Makefile Initial checkin of new LLI with JIT compiler 2002-12-24 00:01:05 +00:00
VM.cpp Move target specific code to target files. The new MachineCodeEmitter 2003-06-01 23:24:36 +00:00
VM.h * Removed SparcEmitter.cpp; rolled into lib/Target/Sparc/SparcV9CodeEmitter.cpp 2003-06-02 03:23:16 +00:00