RFR: 8370794: C2 SuperWord: Long/Integer.compareUnsigned return wrong value for EQ/NE in SLP
Hamlin Li
mli at openjdk.org
Wed Oct 29 17:37:23 UTC 2025
Hi,
Can you help to review this patch?
[JDK-8370481](https://bugs.openjdk.org/browse/JDK-8370481) introduces this regression for unsigned I/L EQ/NE in SLP.
====================
In [JDK-8370481](https://bugs.openjdk.org/browse/JDK-8370481), we fixed an issue related to transformation from (Bool + CmpU + CMove) to (VectorMaskCmp + VectorBlend), and added tests for unsigned ones.
As discussion in [1], we should also add more tests for transformation from (Bool + Cmp + CMove) to (VectorMaskCmp + VectorBlend) for the signed ones.
[1] https://github.com/openjdk/jdk/pull/27942#discussion_r2468750039
Thanks!
-------------
Commit messages:
- fix regression for unsigned EQ/NE
- initial commit
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- Merge branch 'openjdk:master' into master
- ... and 7 more: https://git.openjdk.org/jdk/compare/eab5644a...696ae0d7
Changes: https://git.openjdk.org/jdk/pull/28047/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28047&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8370794
Stats: 1438 lines in 3 files changed: 1337 ins; 37 del; 64 mod
Patch: https://git.openjdk.org/jdk/pull/28047.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/28047/head:pull/28047
PR: https://git.openjdk.org/jdk/pull/28047
More information about the hotspot-compiler-dev
mailing list