Hi all,
Jochen seems to focus on method calls in JITing bytecode.
Why do you focus on that and not on overall byte code ->
native code jit compilation?
Jochen, do you like to treat jit compiled methods like
native (JNI) methods? Isn't there an other way?
I would have expected that jitting is quite easy and
gives in a first approach sufficient speed improvements if
you replace the bytecode by jumps into the JMV code.
So the interpreter would have to execute a sequence of
JSRs generated by the JIT compiler.
Angelo
Jochen Hoenicke wrote:
>
> 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
--
---------------------------------------------------------------------
Angelo Schneider OOAD/UML [EMAIL PROTECTED]
Putlitzstr. 24 Patterns/FrameWorks Fon: +49 721 9812465
76137 Karlsruhe C++/JAVA Fax: +49 721 9812467