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