RFR: 8258459: Decouple gc_globals.hpp from globals.hpp

Ioi Lam iklam at openjdk.java.net
Wed Dec 16 06:37:09 UTC 2020


Currently, [globals.hpp](https://github.com/openjdk/jdk/blob/17ace8339dd8235f3811e3975d9ccc77910b0c77/src/hotspot/share/runtime/globals.hpp#L29) is including gc_globals.hpp. This exposes all the GC command-line flags to almost all cpp files. However, only about 1/3 of the cpp files would require gc_globals.hpp.

This RFE improves modularity and HotSpot build time.

**Review notes:**
- Please start with globals.hpp, gc_globals.hpp.
- Flags related to TLAB are frequently used by other header files. I moved these flags to a new header tlab_globals.hpp.
- Some tweaking of oop.hpp to avoid including gc_globals.hpp in this popular header file. (Otherwise gc_globals.hpp would be included by everyone).
- The other changes are just files that use GC flags. They should have included gc_globals.hpp but didn't.

**Testing:**
Tested with mach5: tier1, builds-tier2, builds-tier3, builds-tier4 and builds-tier5. Also locally: aarch64, arm, ppc64, s390, x86, and zero.

-------------

Commit messages:
 - fixed copyright year
 - 8258459: Decouple gc_globals.hpp from globals.hpp

Changes: https://git.openjdk.java.net/jdk/pull/1797/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1797&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8258459
  Stats: 321 lines in 99 files changed: 221 ins; 63 del; 37 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1797.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1797/head:pull/1797

PR: https://git.openjdk.java.net/jdk/pull/1797


More information about the hotspot-dev mailing list