RFR: 8353665: RISC-V: IR verification fails in TestSubNodeFloatDoubleNegation.java

Hamlin Li mli at openjdk.org
Fri Apr 4 09:54:03 UTC 2025


On Thu, 3 Apr 2025 16:57:19 GMT, Hamlin Li <mli at openjdk.org> wrote:

> Hi,
> Can you help to review this patch?
> The newly added TestSubNodeFloatDoubleNegation.java (in https://github.com/openjdk/jdk/pull/24150) is to check `0 - (0 - x)` is not folded to `x` for float and double.
> I have manually checked the IR and generated assembly code, it's not folded on riscv either, just there is an extra SubF in some code path.
> So, the fix for this test on riscv should be simply make the check as `>= 2` rather than `2`.
> 
> Tested on both x86 and riscv64.
> 
> Thanks

Ah, I just checked on riscv, if I disable float16(zfh) it will not generate the extra `SubF` in slow path, i.e. just 2 SubF.
So, I guess on x86, it could have the same issue, and the test could fail too if `supports_avx512_fp16` return true.

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

PR Comment: https://git.openjdk.org/jdk/pull/24421#issuecomment-2778117432


More information about the hotspot-compiler-dev mailing list