RFR: 8341194: [REDO] Implement C2 VectorizedHashCode on AArch64

Mikhail Ablakatov duke at openjdk.org
Tue Oct 1 12:54:07 UTC 2024


Fix and redo [JDK-8322770](https://bugs.openjdk.org/browse/JDK-8322770) which got backed out in [JDK-8341197](https://bugs.openjdk.org/browse/JDK-8341197) due to test failures / jlink failure. Initial PR: https://github.com/openjdk/jdk/pull/18487.

Compared to the initial PR, this one eliminates a mismatch between the `arrays_hashcode()` template and stub. The template defined v0-v7 & v12-v17 as TEMP  registers but the stub used v8-v9 which were not on the list. Changing v8-v9 in the stub to v12-v13 eliminates this mismatch. Other changes in aarch64.ad  is just a cleanup as some registers on the list were not used by the stub at all anymore.

Following the discussion on [JDK-8341197](https://bugs.openjdk.org/browse/JDK-8341197), we've added a `make bootcycle-images` step to our local CI pipeline to verify that the issue is fixed.

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

Commit messages:
 - fixup! 8341194: [REDO] Implement C2 VectorizedHashCode on AArch64
 - 8341194: [REDO] Implement C2 VectorizedHashCode on AArch64

Changes: https://git.openjdk.org/jdk/pull/21286/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21286&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8341194
  Stats: 1316 lines in 11 files changed: 736 ins; 0 del; 580 mod
  Patch: https://git.openjdk.org/jdk/pull/21286.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21286/head:pull/21286

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


More information about the hotspot-dev mailing list