RFR (S): 8066566: Refactor ParNewGeneration to contain ParNewTracer
Kim Barrett
kim.barrett at oracle.com
Tue Feb 10 05:24:56 UTC 2015
On Feb 5, 2015, at 3:20 AM, Marcus Larsson <marcus.larsson at oracle.com> wrote:
>
> Hi Kim,
>
> Thanks for looking at this.
>
> On 04/02/15 21:48, Kim Barrett wrote:
>> Sorry for the delay; I lost track of this.
>>
>> On Dec 10, 2014, at 9:51 AM, Marcus Larsson <marcus.larsson at oracle.com> wrote:
>>> Hi again,
>>>
>>> Updated the patch with some cleanups to use 'const ParNewTracer*' rather than 'ParNewTracer&' where appropriate.
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~mlarsson/8066566/webrev.02/
>>>
>>> Incremental:
>>> http://cr.openjdk.java.net/~mlarsson/8066566/webrev.01-02/
>> src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
>> 417 const ParNewTracer* gc_tracer() const {
>> 418 return &_gc_tracer;
>> 419 }
>>
>> All present calls are in the providing class's implementation, and
>> could just as easily be replaced with "&_gc_tracer". Returning a
>> pointer into the implementation of an object is generally best
>> avoided, and in this case it's unnecessary. Promoting it to a public
>> API just adds to the burden.
>
> As I mentioned in the original email, this getter for the field is added although it is currently unnecessary.
> However, it is added in preparation for https://bugs.openjdk.java.net/browse/JDK-8066444 and will soon be required.
> Arguably the addition of this getter belongs to that CR, but I thought I might as well add it here while doing the refactoring.
Sorry, forgot that. In a different code base I would expect return of const reference. But as Erik noted, Hotspot is very “pointy”.
Looks good.
More information about the hotspot-gc-dev
mailing list