/ jdk Public
8261672: Reduce inclusion of classLoaderData.hpp #2555
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge.
classLoaderData.hpp is included by about 700 out of 1000 .o files in HotSpot. Most of these are transitively included through klass.hpp, typeArrayKlass.hpp and instanceKlass.hpp.
These headers can be refactored by moving inline functions that depend on ClassLoaderData to xxx.inline.hpp. This reduces the .o files that include classLoaderData.hpp to about 260.
(I also removed a bunch of unnecessary inclusion of classLoader.hpp from a few C files).
Tested with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.
$ git fetch https://git.openjdk.java.net/jdk pull/2555/head:pull/2555
$ git checkout pull/2555