[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Starting a JIT backend for Ravi yet again
- From: Dibyendu Majumdar <mobile@...>
- Date: Tue, 12 Sep 2017 11:17:55 +0100
Hi,
On 10 September 2017 at 21:45, Dibyendu Majumdar <mobile@majumdar.org.uk> 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!
Regards
Dibyendu