RFR: 8200735: Move CMS specific code from binaryTreeDictionary and freeList to CMS files
Stefan Karlsson
stefan.karlsson at oracle.com
Wed Apr 4 13:22:03 UTC 2018
Hi all,
[Sending to hotspot-dev because this changes both GC and Metaspace code]
Please review this patch to move CMS specific code out of the
binaryTreeDictionary.*pp and freeList.*hpp files into CMS files.
http://cr.openjdk.java.net/~stefank/8200735/webrev.01
https://bugs.openjdk.java.net/browse/JDK-8200735
The BinaryTreeDictionary and FreeList used to be classes only used by
CMS, and therefore contained CMS specific code. These classes were later
used by the Metaspace and moved to the memory/ directory. The CMS
specific code was then guarded with numerous INCLUDE_ALL_GCS. This patch
moves the CMS code to compactibleFreeListSpace.*pp, where it's used.
To make it possible for the code in compactibleFreeListSpace.cpp file to
use the code in binaryTreeDictionary.cpp and freeList.cpp I removed the
explicit template instantiation and changed these two files into two
.inline.hpp files.
This patch helps minimizing the number of places we use INCLUDE_ALL_GCS
in non-GC code, and is a prerequisite for:
https://bugs.openjdk.java.net/browse/JDK-8200729 - Conditional
compilation of GCs
Thanks,
StefanK
More information about the hotspot-dev
mailing list