[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: Starting a JIT backend for Ravi yet again
- From: Dibyendu Majumdar <mobile@...>
- Date: Wed, 13 Sep 2017 21:08:20 +0100
On 13 September 2017 at 20:49, Sean Conner <firstname.lastname@example.org> wrote:
> It was thus said that the Great Dibyendu Majumdar once stated:
>> 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.
> What's wrong with using DynASM from LuaJIT? That might be a good place to
Dynasm is an assembler so that is even worse than writing LLVM IR -
you have to write assembly code for each architecture you wish to
> There's also TCC (Tiny C compiler) which can be used as a library to
> compile C code directly into memory, but the license is LGPL. I have two
> modules that wraps up TCC  that you can look at though.
Right now I am using a C front end based on Linux Sparse, and as of
now my fork of Sparse (named dmrC after Dennis M Ritchie) has two
backends - LLVM and NanoJIT. I might look at TCC at some point too,
although the license is not ideal.