RFR: 8255493: Support for pre-generated java.lang.invoke classes in CDS dynamic archive
David Holmes
david.holmes at oracle.com
Thu Apr 22 01:57:31 UTC 2021
Hi Yumin,
On 22/04/2021 8:42 am, Yumin Qi wrote:
> Hi, Please review
>
> When do dynamic dump, the pre-generated lambda form classes from java.lang.invoke are not stored in dynamic archive. The patch will regenerate the four holder classes,
> "java.lang.invoke.Invokers$Holder",
> "java.lang.invoke.DirectMethodHandle$Holder",
> "java.lang.invoke.DelegatingMethodHandle$Holder",
> "java.lang.invoke.LambdaForm$Holder"
> which will include the versions in static archive and new loaded functions all together and stored in dynamic archive. New test case added.
> (Minor change to PrintSharedArchiveAtExit, which the index is not consecutive)
Meta questions:
- why are they not already stored?
- why do we need them to be stored?
- can we avoid hardwiring a set of classes that then tightly couples
our code to the JDK code in a way that we may not easily detect breakages?
Thanks,
David
> Tests: tier1,tier2,tier3,tier4
>
> Thanks
> Yumin
>
> -------------
>
> Commit messages:
> - 8255493: Support for pre-generated java.lang.invoke classes in CDS dynamic archive
>
> Changes: https://git.openjdk.java.net/jdk/pull/3611/files
> Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3611&range=00
> Issue: https://bugs.openjdk.java.net/browse/JDK-8255493
> Stats: 273 lines in 11 files changed: 238 ins; 14 del; 21 mod
> Patch: https://git.openjdk.java.net/jdk/pull/3611.diff
> Fetch: git fetch https://git.openjdk.java.net/jdk pull/3611/head:pull/3611
>
> PR: https://git.openjdk.java.net/jdk/pull/3611
>
More information about the hotspot-dev
mailing list