RFR: 8255493: Support for pre-generated java.lang.invoke classes in CDS dynamic archive [v14]

Calvin Cheung ccheung at openjdk.java.net
Tue May 4 15:40:55 UTC 2021


On Mon, 3 May 2021 18:14:10 GMT, Yumin Qi <minqi at openjdk.org> 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)
>> 
>>   Tests: tier1,tier2,tier3,tier4
>>   
>>   Thanks
>>   Yumin
>
> Yumin Qi has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Removed incorrect comment for regenerate_holder_classes

Latest version looks good. Just one nit.

Thanks,
Calvin

src/hotspot/share/cds/dynamicArchive.cpp line 350:

> 348:     ArchiveClassesAtExit = archive_name;
> 349:     if (Arguments::init_shared_archive_paths()) {
> 350:       DynamicArchive::dump(CHECK);

I think you can drop the `DynamicArchive::` in the above since it is called from the same class.

-------------

Marked as reviewed by ccheung (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/3611


More information about the hotspot-dev mailing list