RFR: 8259870: zBarrier.inline.hpp should not include javaClasses.hpp [v2]

Ioi Lam iklam at openjdk.java.net
Tue Jan 19 06:43:07 UTC 2021


> zBarrier.inline.hpp is a popular header file (it's included by about 430 out of ~1000 hotspot .o files). It includes javaClasses.hpp only for the inline function verify_on_weak(), which is used only for assert purposes in debug builds.
> 
> javaClasses.hpp is large and in turn pulls in other large header files. If we move verify_on_weak() into zBarrier.cpp and stop including javaClasses.hpp in zBarrier.inline.hpp, building hotspot is about 0.5% faster. The number of .o files that include javaClasses.hpp is reduced from 459 to 175.
> 
> 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 two additional commits since the last revision:

 - Merge branch 'master' into 8259870-zBarrier-not-include-javaClasses
 - 8259870: zBarrier.inline.hpp should not include javaClasses.hpp

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/2120/files
  - new: https://git.openjdk.java.net/jdk/pull/2120/files/451e9a58..2221d845

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2120&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2120&range=00-01

  Stats: 12140 lines in 138 files changed: 1409 ins; 9273 del; 1458 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2120.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2120/head:pull/2120

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



More information about the hotspot-gc-dev mailing list