RFR(S): 8144723: MethodHandleImpl.initStatics is no longer needed
Remi Forax
forax at univ-mlv.fr
Mon Dec 7 11:42:23 UTC 2015
Hi Claes,
Makers should be declared 'private', so the constructor by default will be private.
You should remove 'private' in front of TYPED_COLLECTORS, PRODUCE_BLOCK_INLINING_FORM and PRODUCE_REINVOKER_FORM because otherwise the compiler will generate methods access$xxx inside Makers to access to these fields. Those methods are unnecessary here.
In TYPED_COLLECTORS, it should be
return new MethodHandle[1 + MAX_JVM_ARITY];
otherwise, changes look fine.
Rémi
----- Mail original -----
> De: "Claes Redestad" <claes.redestad at oracle.com>
> À: "core-libs-dev" <core-libs-dev at openjdk.java.net>
> Envoyé: Vendredi 4 Décembre 2015 17:28:04
> Objet: RFR(S): 8144723: MethodHandleImpl.initStatics is no longer needed
>
> Hi,
>
> please review this issue to remove explicit initialization of
> MethodHandleImpl, which doesn't seem to be needed after recent
> j.l.invoke bootstrap improvements.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8144723
> Webrev: http://cr.openjdk.java.net/~redestad/8144723/webrev.01/
>
> This removes 21 classes from jdk9/dev startup. I additionally identified
> a few eagerly initialized functions that can be made lazily initialized,
> which defers 6 classes from loading eagerly in startup tests that use
> lambdas explicitly.
>
> Thanks!
>
> /Claes
>
More information about the core-libs-dev
mailing list