RFR: 8370794: C2 SuperWord: Long/Integer.compareUnsigned return wrong value for EQ/NE in SLP

Emanuel Peter epeter at openjdk.org
Thu Oct 30 11:38:36 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...

That looks really good, thanks for writing all the tests, that's amazing :)

I'll run some internal tests now...

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

PR Review: https://git.openjdk.org/jdk/pull/28047#pullrequestreview-3399114367


More information about the hotspot-compiler-dev mailing list