RFR: 8202639: Use concrete Generation classes in SerialHeap and CMSHeap

Erik Helin erik.helin at oracle.com
Mon May 7 11:29:57 UTC 2018


On 05/04/2018 12:20 PM, Stefan Karlsson wrote:
> Hi Erik,
> 
> On 2018-05-04 12:18, Erik Österlund wrote:
>> Hi Stefan,
>>
>> Nice!!
>>
>> Just a small nit... when downcasting the heaps and generations, could 
>> you please use static_cast instead of C-style cast, and have an assert 
>> that checks that the kind is indeed the expected one?
> 
> Sure.
> 
> http://cr.openjdk.java.net/~stefank/8202639/webrev.02/
> http://cr.openjdk.java.net/~stefank/8202639/webrev.02.delta/

Nice cleanup, looks good, Reviewed!

Thanks,
Erik

>>
>> Otherwise, this looks very nice indeed.
> 
> Thanks for reviewing!
> 
> StefanK
> 
>>
>> Thanks,
>> /Erik
>>
>> On 2018-05-04 11:56, Stefan Karlsson wrote:
>>> Hi all,
>>>
>>> Please review this patch to add and use young_gen() and old_gen() 
>>> functions that add returns the concrete Generation classes.
>>>
>>> http://cr.openjdk.java.net/~stefank/8202639/webrev.01/
>>> https://bugs.openjdk.java.net/browse/JDK-8202639
>>>
>>> GenCollectedHeap contains fields for the _young_gen and _old_gen, 
>>> with associated young_gen() and old_gen() accessors. These accessors 
>>> return Generation*s.
>>>
>>> These Generations are always DefNewGeneration and TenuredGeneration 
>>> for the Serial GC, and ParNewGeneration and 
>>> ConcurrentMarkSweepGeneration for CMS.
>>>
>>> I propose that we expose two new accessors that return the concrete 
>>> Generation classes in SerialHeap and CMSHeap.
>>>
>>> Working with these concrete classes will allow us to easier split the 
>>> Serial and CMS code. Specifically, this makes it possible to remove 
>>> ALL_SINCE_SAVE_MARKS_CLOSURES and associated macros. See:
>>> https://bugs.openjdk.java.net/browse/JDK-8202641
>>>
>>> Thanks,
>>> StefanK
>>



More information about the hotspot-gc-dev mailing list