Still crashity crashing

Charles Oliver Nutter headius at headius.com
Tue Aug 4 18:17:15 PDT 2009


On Tue, Aug 4, 2009 at 8:16 PM, Rémi Forax<forax at univ-mlv.fr> wrote:
> - remove the assertion that invokedynamic can only appear
>   in class 1.7 compatible (version 51.0) class,
>   currently your classes are not compiled with version 51.
>   BTW, John, It should not work with the JSR 292 RI too ?

Yes, ASM allows us to emit invokedynamic, and we always default our
generated bytecode to whatever version of JVM we're running on, so
it's possible we'll get a combination of <51 and indy if someone turns
that flag on for a lower JVM (as in this case).

We could certainly change that on our end too.

> - optimize concurrently with the running program
>   (hotspot do that, not the backport)

In most cases we run code immediately after generating it, so we're
not offloading compilation either. We'd probably want to consider
doing that so that we wouldn't now have the additional cost of waiting
for the backport to run.

> The main problem is that the backport is not able to optimize
> the produced method handle tree.
>
> One problem is that the method InvokeDynamicsupport.pollAndGetClass is
> private
> but exported by PGC. The backport has the same contraint that
> any Java code, so it is not able to optimize any method adapter tree
> that contains PGC.

Ahh...well I could certainly make it public if it would help the
optimization. I understand that this is a natural limitation of the
backport.

- Charlie



More information about the mlvm-dev mailing list