RFR: 8252289: Remove usage of OopsInGenClosure from full_process_roots

Stefan Karlsson stefan.karlsson at oracle.com
Thu Aug 27 07:44:16 UTC 2020


Thanks, Kim.

StefanK

On 2020-08-27 04:18, Kim Barrett wrote:
>> On Aug 25, 2020, at 3:36 AM, Stefan Karlsson <stefan.karlsson at oracle.com> wrote:
>>
>> Hi all,
>>
>> Please review this patch to narrow the type used by GenCollectedHeap::full_process_roots.
>>
>> https://cr.openjdk.java.net/~stefank/8252289/webrev.01/
>> https://bugs.openjdk.java.net/browse/JDK-8252289
>>
>> This is a step towards cleaning up and finally getting rid of OopsInGenClosure.
>>
>> Both MarkSweep::FollowRootClosure and MarkSweep::AdjustPointerClosure inherits from BasiceOopsInGenClosure, but neither use any of the functionality provided by OopsInGenClosure. This means that we can change the super type to BasicOopIterateClosure and narrow the type used by full_process_roots.
>>
>> The changed closures are created statically, and could therefore not use the appropriate OopsInGenClosure constructor. A dummy constructor and a a post-creation step involving calling set_orig_generation was instead used. Since none of this is needed after the CMS removal, I've removed those parts as well.
>>
>> Thanks,
>> StefanK
> 
> Looks good.
> 


More information about the hotspot-gc-dev mailing list