RFR: 8361376: Regressions 1-6% in several Renaissance in 26-b4 only MacOSX aarch64
Dean Long
dlong at openjdk.org
Wed Jul 23 19:55:34 UTC 2025
This PR removes the recently added lock around set_guard_value, using instead Atomic::cmpxchg to atomically update bit-fields of the guard value. Further, it takes a fast-path that uses the previous direct store when at a safepoint. Combined, these changes should get us back to almost where we were before in terms of overhead. If necessary, we could go even further and allow make_not_entrant() do a direct byte store, leaving 24 bits for the guard value.
-------------
Commit messages:
- trailing white space
- fix s390 copy-paste
- use fast path for safepoints
- ppc align check
- ppc align
- simplify x86
- In CAS loop, update old_value from result of CAS
- fix ppc build
- fix zero build
- ppc typos
- ... and 3 more: https://git.openjdk.org/jdk/compare/cf75f1f9...ecc6e68e
Changes: https://git.openjdk.org/jdk/pull/26399/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26399&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8361376
Stats: 214 lines in 13 files changed: 118 ins; 58 del; 38 mod
Patch: https://git.openjdk.org/jdk/pull/26399.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/26399/head:pull/26399
PR: https://git.openjdk.org/jdk/pull/26399
More information about the hotspot-compiler-dev
mailing list