RFR: 8357250: assert(shift >= 0 && shift < 4) failed: unexpected compressd klass shift!

Vladimir Kozlov kvn at openjdk.org
Tue May 20 14:41:38 UTC 2025


Several fixes for AOT code generation:
  - Use `CompressedKlassPointers::max_shift()` in asserts to take into account  Compact Object Headers (the asserts are present only in aarch64 code)
  - Increase table stub size on aarch64 when AOT specialized code is used for klass decoding (hit assert there otherwise)
  - Fix "copy-paste" typo in `RelocIterator()` which incorrectly overwrite the start address of instruction section (restored relocations in AOTed exception blob was wrong and AOT tests failed when deoptimization happened)
  - Removed `vm.flagless` from AOT code tests to increase testing coverage (otherwise they were run only in tier1)
  - Add additions `@requires` to tests for expected execution configuration

Tested hs-tier1-10, Xcomp, stress

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

Commit messages:
 - 8357250: assert(shift >= 0 && shift < 4) failed: unexpected compressd klass shift!

Changes: https://git.openjdk.org/jdk/pull/25330/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25330&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8357250
  Stats: 24 lines in 5 files changed: 13 ins; 2 del; 9 mod
  Patch: https://git.openjdk.org/jdk/pull/25330.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25330/head:pull/25330

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


More information about the hotspot-compiler-dev mailing list