Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

LLVM CIL and Java Bytecode backend [closed]

I saw the http://vmkit.llvm.org/ project but it's not quite what I'm looking for. Don't want my code to run on yet another VM but on .NET's and Java's VM.

Are there any compiler backends for LLVM that generate .NET CIL and/or Java Bytecode?

like image 702
Richard Hitchens Avatar asked Jun 29 '11 21:06

Richard Hitchens


1 Answers

LLVM is on a much lower level than CIL and Java byte code. This means that it is difficult to map the LLVM instructions on to CIL and Java instructions, and nobody has really needed it yet so the work has not been done completely.

Some of the work has been done though. See http://llvm.1065342.n5.nabble.com/JVM-Backend-tp41356.html to see if it is useful to you.


EDIT 2020-09-03: Since this answer was written, WebAssembly has been defined which is essentially a cross platform machine language definition which runs in all major browsers and hopefully soon also natively on Linux and others. I would think that the future would be that everything distributes in this format and then is run on the appropriate virtual machine. This will most likely end the CPU wars.

like image 115
Thorbjørn Ravn Andersen Avatar answered Nov 16 '22 00:11

Thorbjørn Ravn Andersen