RFR: 8302976: C2 intrinsification of Float.floatToFloat16 and Float.float16ToFloat yields different result than the interpreter [v3]
Vladimir Kozlov
kvn at openjdk.org
Wed Mar 8 05:17:56 UTC 2023
On Wed, 8 Mar 2023 01:53:14 GMT, Fei Yang <fyang at openjdk.org> wrote:
>> Vladimir Kozlov has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Do not allow JIT compilation of Float.float16ToFloat and Float.floatToFloat16
>
> Hi, Thanks for handling linux-riscv64 at the same time.
> Bad news is that we witnessed test failures when running following test with QEMU (no riscv hardware available with Zfhmin extension for now): test/hotspot/jtreg/compiler/intrinsics/float16/TestAllFloat16ToFloat.java
>
>
> Exception in thread "main" java.lang.RuntimeException: Inconsistent result for Float.floatToFloat16(NaN/7fc00000): 7e00 != fc01
> at TestAllFloat16ToFloat.verify(TestAllFloat16ToFloat.java:62)
> at TestAllFloat16ToFloat.run(TestAllFloat16ToFloat.java:72)
> at TestAllFloat16ToFloat.main(TestAllFloat16ToFloat.java:94)
>
>
> It looks like there is a problem when handling NaNs with fcvt.h.s/fmv.x.h and fmv.h.x/fcvt.s.h instructions at the bottom.
> It's also possible to be an issue of QEMU as well. It would take quite a while to diagnose. But I don't want this to block this PR.
> So I would prefer removing support of this feature for this port and adding back once this is resolved. And I have prepared a patch for that purpose. See attachement.
> [12869-revert-riscv.txt](https://github.com/openjdk/jdk/files/10915606/12869-revert-riscv.txt)
Thank you very much @RealFYang for testing changes and preparing patch. I applied your patch.
-------------
PR: https://git.openjdk.org/jdk/pull/12869
More information about the hotspot-compiler-dev
mailing list