RFR (XS): Move implementation of process_grey_object to concurrentMark.inline.hpp

Volker Simonis volker.simonis at gmail.com
Tue Aug 11 12:21:08 UTC 2015

Hi Axel,

the change looks good!
I think we should always define template functions in .inline.hpp files.

Can somebody please sponsor this change?

Thank you and best regards,

On Thu, Aug 6, 2015 at 3:49 PM, Siebenborn, Axel
<axel.siebenborn at sap.com> wrote:
> Hi,
> Could I have reviews and a sponsor for this small change
> We had a linker problem with a C++ - compiler that inlined process_grey_object at all uses but removed the symbol and the actual implementation.
> As there are explicit instantiations of this method in concurrentMark.cpp, this probably should not happen and can be considered of a bug of the C++ compiler. Though, it seems to be pointless to mark that method inline if there are explicit instantiations.
> Considering performance, it would be better to move the implementation of process_grey_object to concurrentMark.inline.hpp in order to inline the method in other compilation units.
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8133121
> Webrev:
> http://cr.openjdk.java.net/~asiebenborn/8133121/webrev/
> Thanks,
> Axel

More information about the hotspot-gc-dev mailing list