Reliably reproduces on x86-32 with FPU:
```
$ CONF=linux-x86-server-fastdebug make test TEST=java/lang/Float/Binary16ConversionNaN.java TEST_VM_OPTS="-XX:UseAVX=0 -XX:UseSSE=0"
...
Roundtrip failure on NaN value 7de2 got back 7fe2
Roundtrip failure on NaN value fde2 got back ffe2
```
Since there are many NaN values in FP16 -- basically any non-zero significand works, we should probably just relax the test.
```
$ CONF=linux-x86-server-fastdebug make test TEST=java/lang/Float/Binary16ConversionNaN.java TEST_VM_OPTS="-XX:UseAVX=0 -XX:UseSSE=0"
...
Roundtrip failure on NaN value 7de2 got back 7fe2
Roundtrip failure on NaN value fde2 got back ffe2
```
Since there are many NaN values in FP16 -- basically any non-zero significand works, we should probably just relax the test.
- relates to
-
JDK-8302976 C2 Intrinsification of Float.floatToFloat16 and Float.float16ToFloat Yields Different Result than the Interpreter
- Closed
-
JDK-8289551 Conversions between bit representations of half precision values and floats
- Resolved