RFR: 8360179: RISC-V: Only enable BigInteger intrinsics when AvoidUnalignedAccess == false
Anjian Wen
wenanjian at openjdk.org
Mon Jun 23 02:30:58 UTC 2025
This disables BigInteger.multiplyToLen(), BigInteger.squareToLen(), BigInteger.montgomeryMultiply()
and BigInteger.montgomerySquare() on linux-riscv64 platforms where misaligned memory accesses is slow.
The reason is that these four BigInteger intrinsics do 8-byte misaligned memory accesses to int arrays
under -XX:+UseCompactObjectHeaders. And this will have a negative impact on SPECJvm2008 crypto tests.
Testing:
- [x] Tier1-3 tests.
- [x] SPECJvm2008 crypto performance tests.
[score.txt](https://github.com/user-attachments/files/20846531/score.txt)
-------------
Commit messages:
- RISC-V: Only enable BigInteger intrinsics when AvoidUnalignedAccess == false
Changes: https://git.openjdk.org/jdk/pull/25923/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25923&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8360179
Stats: 92 lines in 2 files changed: 21 ins; 62 del; 9 mod
Patch: https://git.openjdk.org/jdk/pull/25923.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/25923/head:pull/25923
PR: https://git.openjdk.org/jdk/pull/25923
More information about the hotspot-dev
mailing list