lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On 10 September 2017 at 21:45, Dibyendu Majumdar <> wrote:
> I have been trying to figure out a way to create a small JIT backend
> that trades size for performance. Additionally, writing the backend in
> IR is tedious and errorprone, so it would be better if the backend
> could be written in a language such as C.
> So now I am doing just that. The new backend is being written to
> generate C code, which gets translated to machine code at runtime
> using another project of mine - dmrC. Now dmrC supports two different
> JIT engines - LLVM and NanoJIT. The support for NanoJIT is recent, and
> not yet well tested. But what better way to test it than to use it for
> Ravi?

This is turning out to be fun and also revealing as some optimization
opportunities previously missed become apparent. I think that looking
at the LLVM IR output makes it quite hard to figure out if there are
missed opportunities. Examining the C "assember" output is far easier!