RFR: 8202641: Replace OOP_SINCE_SAVE_MARKS with templates
Erik Österlund
erik.osterlund at oracle.com
Fri May 4 13:18:07 UTC 2018
Hi Stefan,
Templates... oh yes.
gc/cms/promotionInfo.inline.hpp is seemingly missing some includes. It
looks like it needs macros.hpp, oop.inline.hpp and debug.hpp.
Apart from that, this looks good, and I don't need another webrev.
Thanks,
/Erik
On 2018-05-04 12:06, Stefan Karlsson wrote:
> Hi all,
>
> Please review this patch to replace the OOPS_SINCE_SAVE_MARKS macros
> with templates.
>
> http://cr.openjdk.java.net/~stefank/8202641/webrev.01/
> https://bugs.openjdk.java.net/browse/JDK-8202641
>
> The OOP_SINCE_SAVE_MARKS related macros are used to devirtualize
> OopClosure calls. The way these works require us to stamp out all
> relevant overloads of OopClosures in the Generation and
> GenCollectedHeap classes. This makes it hard to separate Serial from
> CMS. One example is defNewGeneration.hpp, which includes
> cms/parOopClosure.hpp, just to make sure that CMS specific overloads
> are generated for DefNewGeneration, even those that are never used.
>
> By replacing these macros with templates we can get rid of this false
> dependency between DefNewGeneration and CMS.
>
> This patch builds upon the patch in:
> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2018-May/021966.html
>
>
> Thanks,
> StefanK
More information about the hotspot-gc-dev
mailing list