Hello Folks,
I would be interested in writing a good JIT for japhar. I have a lot of
experiences with java bytecode, due to writing a decompiler.
I have looked a bit into the internal structures and found things that
should be improved, before I even start writing a jit.
I have written some ideas at
http://www.informatik.uni-oldenburg.de/~delwi/japhar/ideas
Here are the main points:
Make HungryEnv* and JNIEnv* the same! (SUN designed it that way)
New vtable design, that improves instanceof operator.
Put the vtable directly in the object instead of the clazz reference.
Put a method_entry into MethodStruct* that can be called. This entry
points directly to the interpreter/JNI wrapper/class resolver/JIT method.
A JIT->JIT method call should be possible without intermediate layers.
Look at the web page above and give me your comments.
Jochen