RFR: 8164044: Generate corresponding simple DelegatingMethodHandles when generating a DirectMethodHandle
Michael Haupt
michael.haupt at oracle.com
Thu Aug 18 13:55:17 UTC 2016
Hi Claes,
thumbs up.
Best,
Michael
> Am 17.08.2016 um 23:33 schrieb Claes Redestad <claes.redestad at oracle.com>:
>
> Hi,
>
> please review this change which adds pre-generation of simple DelegatingMethodHandles corresponding to the DirectMethodHandles we already pre-generate during linking.
>
> webrev: http://cr.openjdk.java.net/~redestad/8164044/webrev.02/
> bug: https://bugs.openjdk.java.net/browse/JDK-8164044
>
> This also includes some cleanup suggested by Vladimir during internal review, such as:
>
> - adding an enum to control this behavior, which allows removing the special version of LF.compileToBytecode introduced by JDK-8163369
> - refactored resolution of pregenerated code to the InvokerBytecodeGenerator
> - removing reliance on the LF.debugName (which we have some loose ideas to remove from LF and tuck away in a map we only create and initialize when actually debugging).
>
> This patch removes 11 out of the 39 classes generated on first use of the StringConcatFactory in a simple test, amounting to a ~10ms speedup on my machine.
>
> Thanks!
>
> /Claes
--
<http://www.oracle.com/>
Dr. Michael Haupt | Principal Member of Technical Staff
Phone: +49 331 200 7277 | Fax: +49 331 200 7561
Oracle Java Platform Group | LangTools Team | Nashorn
Oracle Deutschland B.V. & Co. KG | Schiffbauergasse 14 | 14467 Potsdam, Germany
ORACLE Deutschland B.V. & Co. KG | Hauptverwaltung: Riesstraße 25, D-80992 München
Registergericht: Amtsgericht München, HRA 95603
Komplementärin: ORACLE Deutschland Verwaltung B.V. | Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Nederland, Nr. 30143697
Geschäftsführer: Alexander van der Ven, Jan Schultheiss, Val Maher
<http://www.oracle.com/commitment> Oracle is committed to developing practices and products that help protect the environment
More information about the core-libs-dev
mailing list