RFR(S) 8206115 - Use shared macros for JavaClasses::compute_offsets and MetaspaceShared::serialize_well_known_classes

Jiangli Zhou jiangli.zhou at oracle.com
Wed Aug 15 17:54:10 UTC 2018


Looks good.

Thanks,

Jiangli


On 8/15/18 10:46 AM, Ioi Lam wrote:
> Hi Jiangli,
>
> Thanks for the review. How about changing the comment to
>
> // We have already called the compute_offsets() of the
> // BASIC_JAVA_CLASSES_DO_PART1 classes (java_lang_String and 
> java_lang_Class)
> // earlier inside SystemDictionary::resolve_preloaded_classes()
>
> Thanks
> - Ioi
>
> On 8/15/18 9:10 AM, Jiangli Zhou wrote:
>> Hi Ioi,
>>
>> Looks good!
>>
>> I have a very minor suggestion. Could you please add some details in 
>> the following comment and describe where/when the compute_offsets() 
>> calls for java_lang_String and java_lang_Class are done.
>>
>> 4538   // We have already called the compute_offsets() of the
>> 4539   // BASIC_JAVA_CLASSES_DO_PART1 classes (java_lang_String and 
>> java_lang_Class);
>>
>> Thanks,
>> Jiangli
>>
>> On 8/14/18 9:37 PM, Ioi Lam wrote:
>>> https://bugs.openjdk.java.net/browse/JDK-8206115
>>> http://cr.openjdk.java.net/~iklam/jdk12/8206115_compute_offsets_macro.v01/ 
>>>
>>>
>>> As I noted in the comments on this RFE, we already have a bug where
>>> java_lang_Integer_IntegerCache was missing from
>>> MetaspaceShared::serialize_well_known_classes.
>>>
>>> To avoid such problems in the future, I added a new macro in 
>>> javaClasses.hpp,
>>> BASIC_JAVA_CLASSES_DO, which is used by JavaClasses::compute_offsets 
>>> and
>>> JavaClasses::serialize_offsets.
>>>
>>> For clean up, I also renamed all the <Class>::serialize() functions to
>>> <Class>::serialize_offsets() to reflect what these functions really do.
>>>
>>> The old MetaspaceShared::serialize_well_known_classes function is now
>>> JavaClasses::serialize_offsets.
>>>
>>> Testing with hs tiers 1/2.
>>>
>>> Thanks
>>> - Ioi
>>
>



More information about the hotspot-runtime-dev mailing list