RFR: 8370481: C2 SuperWord: Long/Integer.compareUnsigned return wrong value in SLP [v2]

Hamlin Li mli at openjdk.org
Thu Oct 23 19:18:37 UTC 2025


On Thu, 23 Oct 2025 11:17:04 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> Hamlin Li has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - tests
>>  - switch
>
> You should also change the PR description, especially you should describe what went wrong at what point.
> 
> 
> Well, you mostly already explain. I think the issue is that we don't really carry the "unsigned-ness" of the comparison, and then end up doing signed instead of unsigned comparison...

> @eme64 I just keep Op_CmpI/L. Test running, will update the result or code accordingly later.

I ran all the tests under test/hotspot/jtreg/compiler on x86, the `default` case (i.e. `ShouldNotReachHere`) is not triggerred. Plus github CI, I think we are good at these `switch cases`.

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

PR Comment: https://git.openjdk.org/jdk/pull/27942#issuecomment-3438716433


More information about the hotspot-compiler-dev mailing list