Integrated: 8370794: C2 SuperWord: Long/Integer.compareUnsigned return wrong value for EQ/NE in SLP
Hamlin Li
mli at openjdk.org
Mon Nov 3 10:38:48 UTC 2025
On Wed, 29 Oct 2025 16:38:54 GMT, Hamlin Li <mli at openjdk.org> wrote:
> 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!
>
> Tests running...
This pull request has now been integrated.
Changeset: 667744c3
Author: Hamlin Li <mli at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/667744c353e4d6abbe5cbf85746e5e0e44dafaf8
Stats: 1438 lines in 3 files changed: 1337 ins; 37 del; 64 mod
8370794: C2 SuperWord: Long/Integer.compareUnsigned return wrong value for EQ/NE in SLP
Reviewed-by: epeter, luhenry
-------------
PR: https://git.openjdk.org/jdk/pull/28047
More information about the hotspot-compiler-dev
mailing list