JDK-8256054 : C2: Floating-point min/max operations on vectors intermittently produce wrong results for NaN values
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 16
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-11-09
  • Updated: 2020-11-16
  • Resolved: 2020-11-10
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 16
16 b24Fixed
Related Reports
Relates :  
Description
Some jdk/incubator/vector/ tests intermittently fail on AVX512-capable hardware: 

FAILED: MINDouble512VectorTests(double[-i * 5], double[cornerCaseValue(i)])
java.lang.AssertionError: (-125.0, NaN) at index #25 expected [NaN] but found [-125.0]
        at org.testng.Assert.fail(Assert.java:94)
        at org.testng.Assert.failNotEquals(Assert.java:496)
        at org.testng.Assert.assertEquals(Assert.java:125)
        at Double512VectorTests.assertArraysEquals(Double512VectorTests.java:339)
        at Double512VectorTests.MINDouble512VectorTests(Double512VectorTests.java:1960)

I suspect auto-vectorizer is also affected. 
Comments
Changeset: e6df13e6 Author: Vladimir Ivanov <vlivanov@openjdk.org> Date: 2020-11-10 12:39:33 +0000 URL: https://github.com/openjdk/jdk/commit/e6df13e6
10-11-2020