RFR: 8255493: Support for pre-generated java.lang.invoke classes in CDS dynamic archive [v11]
Yumin Qi
minqi at openjdk.java.net
Thu Apr 29 22:30:40 UTC 2021
> 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)
>
> Tests: tier1,tier2,tier3,tier4
>
> Thanks
> Yumin
Yumin Qi has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 16 additional commits since the last revision:
- Changed DynamicArchive::dump as static counterpart. Suppressed exceptions in LambdaFormInvokers::regenerate_holder_classes except for oom
- Merge branch 'master' into jdk-8255493
- Merge branch 'master' of ssh://github.com/yminqi/jdk into jdk-8255493
- Only store four lambda invoker (which will be regenerated in dynamic dump) lines in static archive
- Removed TRAP from regenerate_holder_classes, also correct SharedLambdaDictionaryPrinter index
- Merge branch 'master' into jdk-8255493
- Restore filemap.[ch]pp
- Remove unnecessary file header including
- Removed unused function static_archive_invokers(), add back accidentally deleted empty line
- Changed DEBUG_ONLY to log_debug, make small changes for format, added bug tag to test
- ... and 6 more: https://git.openjdk.java.net/jdk/compare/ca9b4f7b...0846f121
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/3611/files
- new: https://git.openjdk.java.net/jdk/pull/3611/files/05a7ca93..0846f121
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3611&range=10
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3611&range=09-10
Stats: 2388 lines in 80 files changed: 1802 ins; 389 del; 197 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