RFR: 8252725: Refactor jlink GenerateJLIClassesPlugin code
sundararajan.athijegannathan at oracle.com
sundararajan.athijegannathan at oracle.com
Fri Sep 4 01:34:29 UTC 2020
Looks good to me.
Few minor comment:
* traceFileStream (and even the preexisting mainArgument) is accessed
only inside GenerateJLIClassesPlugin. Could be private?
-Sundar
On 04/09/20 3:41 am, Yumin Qi wrote:
> HI, Mandy
>
> Thanks for review and comment.
>
>
> Yumin
>
> On 9/3/20 9:13 AM, Mandy Chung wrote:
>>
>>
>> On 9/3/20 8:36 AM, Yumin Qi wrote:
>>> Hi, Please review
>>>
>>>
>>> bug: https://bugs.openjdk.java.net/browse/JDK-8252725
>>>
>>> webrev: http://cr.openjdk.java.net/~minqi/2020/8252725/webrev-01/
>>>
>>
>> Looks good to me. Sundar should also review it.
>>
>> A few things to mention compared to the proposed patch from 8247536:
>> we no longer log the error case for LF_RESOLVE since it's ignored
>> anyway. As the code is moved to java.lang.invoke, we also clean up
>> the code to use constants and methods defined in LambdaForm and
>> MethodTypeForm and BasicType (rather than duplicating such definitions).
>>
>> Mandy
>>>
>>> Summary: The work is part of 8247536, which supports archive
>>> pre-generated java.lang.invoke classes in CDS. In this patch (thanks
>>> to Mandy):
>>>
>>> 1. Two methods for tracing SPECIES_RESOLVE and LF_RESOLVE are added
>>> to GenerateJLIClassesHelper: traceSpeciesType and traceLambdaForm
>>> respectively;
>>>
>>> 2. Move log file parsing work to java.lang.InvokeJLIClassesHelper;
>>>
>>> 3. Clean up interface APIs since old APIs no longer used with the
>>> moving;
>>>
>>> 4. New API JavaLangInvokeAccess::generateHolderClassesreturns a map
>>> of class name, which in internal form as key rather than the jimage
>>> entry point, vs class bytes.
>>>
>>> This makes both JLI and CDS can use the new interface easily. CDS
>>> will add a new function (in 8247536 patch, only for convenience for
>>> converting the map to array) to GenerateJLIClassesHelper to call the
>>> new added interface API (generateHolderClasses)to regenerate holder
>>> classes during dump time.
>>>
>>>
>>> Thanks
>>>
>>> Yumin
>>>
>>>
>>
More information about the hotspot-runtime-dev
mailing list