RFR: 8202641: Replace OOP_SINCE_SAVE_MARKS with templates
stefan.karlsson at oracle.com
Fri May 4 10:06:52 UTC 2018
Please review this patch to replace the OOPS_SINCE_SAVE_MARKS macros
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:
More information about the hotspot-gc-dev