RFR: 8375536: PPC64: Implement special MachNodes for floating point CMove [v5]
Martin Doerr
mdoerr at openjdk.org
Fri Jan 30 14:13:17 UTC 2026
On Fri, 30 Jan 2026 14:04:24 GMT, Richard Reingruber <rrich at openjdk.org> wrote:
> > I think comments regarding your latest commit would be helpful. Seems to be related to the treatment of unordered results (comparison with NaN).
>
> But wasn't the problem there the following: We want to implement `<` with `>=`:
>
> ```
> op1 < op2 ? src1 : src2
> <=> !(op1 >= op2) ? src1 : src2
> <=> op1 >= op2 ? src2 : src1
> ```
>
> But the implementation was
>
> ```
> op2 >= op1 ? src1 : src2
> ```
>
> Which evaluates to src1 instead of src2 for op1 == op2.
That was also wrong, but an additional problem was the wrong handling of NaN: C2 requires unordered to get treated like less
-------------
PR Comment: https://git.openjdk.org/jdk/pull/29281#issuecomment-3823972228
More information about the hotspot-compiler-dev
mailing list