classpath
[Top][All Lists]
Advanced

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

Re: JIT pluggability


From: Artur Biesiadowski
Subject: Re: JIT pluggability
Date: Fri, 09 Jan 2004 20:19:34 +0100
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5) Gecko/20030925

Tom Tromey wrote:

> One thing we talked about is the possibility of defining a standard
> pluggable JIT interface, making it easier to mix-and-match JITs and
> interpreters across VMs.
[..snip...]

One quite important thing you have not stressed is gc interface - unless gc is supposed to be part of jit, there is a lot of issues to be solved (IMHO harder than jit <-> core jvm/classes interface).

For a jumpstart I would suggest looking at orp jit interface.
http://sourceforge.net/projects/orp/
Directory interface, all .h files there.

jit_runtime_support.h - number of jvm function which need to be called from _generated_ code

jit_intf.h - jit use these function to discover info about classes it needs to compile

jit_export.h - jvm call these methods on jit to request method compilation, synchronize gc events and discover stack info

There are gc interface there, but AFAIK, orp never managed to get them really pluggable - there was still a number of ifdefs in both jvm and jit code depending on type of gc used. In fact, I'm not sure if gc/jit/jvm can be separated through abstract interface and do not impose any restrictions on implementation.

While orp code uses C for interfaces, I'm not proposing sticking to it here - just to scavenge their headers to get a list of functions which were needed to implement working, pluggable jit.


Artur





reply via email to

[Prev in Thread] Current Thread [Next in Thread]