Jochen Hoenicke <[EMAIL PROTECTED]> writes:

> I have nice ideas of generating a jit that will cache most values in
> register, so that load instructions aren't translated at all.  This
> should give almost optimal code.  I want to code something that

Did not yet look on your web pages, but this sounds interesting.
For TYA I always searched a way to keep track on registers, but 
en detail I did not found simple ways to differ between CPU register stuff
and NPU registers because there are some Java bytecodes independent of
data type, for example "DUP2" is one of them. (And the x86 architecture
doesn't give help in fast move data from one or two 32bit general purpose
registers into the NPU stack, as far as I know.)

> My JITed methods will not use the JNI interface, but use the
> internals directly.  The reason is speed.  I want the JIT compiler be

agree for 100%

> as fast as possible, without going through several layers, just to
> call a virtual method or access a field.  It should be _faster_ than
> good programmed JNI.
This should be possible, because JNI has some overhead to carry itself.

> 
> Look at tya, and you see that it uses a lot of undocumented things to
> make virtual method calls fast.  It _does not_ create valid JNI code,
> and this is the main reason, why it is so fast.
True, and IMHO it's really not neccessary as long you stay "inside"
JITted methods.

>   Jochen
Hope for some success you'll have. 
Cheers,
Albrecht

Reply via email to