RFR: 8258459: Decouple gc_globals.hpp from globals.hpp [v4]

Ioi Lam iklam at openjdk.java.net
Tue Jan 5 06:00:20 UTC 2021


> 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.

Ioi Lam has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains seven additional commits since the last revision:

 - Merge branch 'master' into 8258459-decouple-gc-globals-hpp-from-globals-hpp
 - added tlab_globals.hpp to all files that use the TLAB globals
 - fixed copyright year
 - Merge branch 'master' into 8258459-decouple-gc-globals-hpp-from-globals-hpp
 - comments by coleenp
 - fixed copyright year
 - 8258459: Decouple gc_globals.hpp from globals.hpp

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/1797/files
  - new: https://git.openjdk.java.net/jdk/pull/1797/files/372fd801..f68aa0ee

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1797&range=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1797&range=02-03

  Stats: 491 lines in 60 files changed: 213 ins; 129 del; 149 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 shenandoah-dev mailing list