LLVM-Lua, is a JIT and static Lua compiler that uses [Low Level Virtual Machine (LLVM)] as the compiler backend.
[Project home page.]
Features
- JIT compile Lua scripts to native code using LLVM's JIT engine. JIT supports x86, x86_64, PowerPC 32/64 processors.
- Compile Lua scripts to native(to any cpu architecture supported by LLVM) executables.
File
Requires
- [LLVM] 2.4 release.
- llvm-gcc 4.2.x from LLVM 2.4 or higher.
Patches to the included Lua 5.1.3 code
TODO list
- Add support to compile Lua scripts to Lua native modules (.so or .dll).
- Add option to enable Lua debug hooks (line & count hooks don't work right now).
- Inline nil/boolean/number constants to improve performance.
- Move for loop's number type loop counters to cstack and convert it to 'int' from 'double'.
- Add support for tailcalls.
- Remove requirement of bitcode file "lua_vm_ops.bc" needing to be in working directory.
- Remove globals in llvm-compiler.cpp to make thread-safe.
- Add debug info to generated LLVM IR.
FindPage · RecentChanges · preferences
edit · history
Last edited October 8, 2008 6:21 am GMT (diff)