[llvm-dev] Does LLVM have java frontend?

David Chisnall via llvm-dev llvm-dev at lists.llvm.org
Tue Jan 12 03:08:41 PST 2016


It’s also worth noting that a Java front end is largely useless in isolation.  AoT-compiled Java will depend on a load of run-time infrastructure (for GC, cast-to-interface, down-cast, reflection, and so on).  In interpreted or JIT’d Java implementations, these are all highly specific to the JVM implementation (things like the layouts of classes are a bit more portable, but object layouts are very variable.  For example, a lot of JVMs - but not all - put non-pointer fields before the class pointer so that the GC won’t pull them into the cache).

You can have a Java bytecode to VMKit compiler, or a Java bytecode to OpenJDK compiler, but a stand-alone Java compiler in isolation is a largely meaningless concept.

David

> On 12 Jan 2016, at 09:19, Bruce Hoult via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> 
> There was such a front end as an option (called "portable mode") in the ART compiler for Android, but it's no longer used, I believe mostly because it was thought to be too slow to use on-device during app install or OS upgrade. Of course it's from Dalvik bytecodes not JDK ones.
> 
> On Tue, Jan 12, 2016 at 9:50 AM, Linhai Song via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> Hi,
> 
> 
> Does LLVM have java frontend which can change Java bytecode to LLVM IR?
> 
> 
> Thanks a lot!
> 
> 
> Best,
> 
> 
>                                                               Linhai
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

> On 12 Jan 2016, at 09:19, Bruce Hoult via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> 
> There was such a front end as an option (called "portable mode") in the ART compiler for Android, but it's no longer used, I believe mostly because it was thought to be too slow to use on-device during app install or OS upgrade. Of course it's from Dalvik bytecodes not JDK ones.
> 
> On Tue, Jan 12, 2016 at 9:50 AM, Linhai Song via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> Hi,
> 
> 
> Does LLVM have java frontend which can change Java bytecode to LLVM IR?
> 
> 
> Thanks a lot!
> 
> 
> Best,
> 
> 
>                                                                Linhai
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev



More information about the llvm-dev mailing list