[master] RFR: 8307991: [Lilliput] Use narrow i-hash only when +UseCompactObjectHeaders

Roman Kennke rkennke at openjdk.org
Fri May 12 14:16:20 UTC 2023


Currently, we use a narrow 25bit identity-hash-code in Lilliput. That is even the case when running without compact object headers, even though we could just as well use the original 31bit identity hash-code then.

The fix is relatively simple. Also, this brings the code in line with what we're currently proposing in upstream https://github.com/openjdk/jdk/pull/13844.

Going forward we would trade Klass* bits to get the full 31 i-hash back, and we're going to do that soon, but let's first fix this issue at hand (also in preparation for a clean backport, where we don't currently have the metaspace improvements).

Testing:
 - [x] tier1 +UseCompactObjectHeaders
 - [ ] tier2 +UseCompactObjectHeaders
 - [x] tier1 -UseCompactObjectHeaders
 - [ ] tier2 -UseCompactObjectHeaders

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

Commit messages:
 - SA stuff, little fixes
 - 8307991: [Lilliput] Use narrow i-hash only when +UseCompactObjectHeaders

Changes: https://git.openjdk.org/lilliput/pull/93/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=93&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8307991
  Stats: 58 lines in 7 files changed: 42 ins; 0 del; 16 mod
  Patch: https://git.openjdk.org/lilliput/pull/93.diff
  Fetch: git fetch https://git.openjdk.org/lilliput.git pull/93/head:pull/93

PR: https://git.openjdk.org/lilliput/pull/93


More information about the lilliput-dev mailing list