RFR: 8320276: Improve class initialization barrier in TemplateTable::_new

Matias Saavedra Silva matsaave at openjdk.org
Tue Dec 19 21:53:11 UTC 2023


The class initialization barrier in TemplateTable::_new fast path check ensures that the class being instantiated is fully initialized. It can be improved by introducing additional fast path check when current thread is initializer thread as MacroAssembler::clinit_barrier() does. It avoids repeated calls into interpreter runtime for classes being initialized. This patch adds a the optimization for x86 and aarch64. Verified with tier 1-5 tests.

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

Commit messages:
 - Added aarch64
 - Merge branch 'master' into class_init_new_8320276
 - 8320276: Improve class initialization barrier in TemplateTable::_new

Changes: https://git.openjdk.org/jdk/pull/17006/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=17006&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8320276
  Stats: 15 lines in 2 files changed: 6 ins; 2 del; 7 mod
  Patch: https://git.openjdk.org/jdk/pull/17006.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/17006/head:pull/17006

PR: https://git.openjdk.org/jdk/pull/17006


More information about the hotspot-dev mailing list