RFR(S): x86: 8190494: fix for different results with UseAVX=3 when calling AVX-512 native function via JNI.
Deshpande, Vivek R
vivek.r.deshpande at intel.com
Thu Nov 30 22:51:02 UTC 2017
We are removing the mask register encoding from the scalar instructions as it is not needed. The JIT is not doing any masked scalar operations.
From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
Sent: Thursday, November 30, 2017 8:56 AM
To: Deshpande, Vivek R <vivek.r.deshpande at intel.com>; hotspot-compiler-dev at openjdk.java.net
Cc: Viswanathan, Sandhya <sandhya.viswanathan at intel.com>
Subject: Re: RFR(S): x86: 8190494: fix for different results with UseAVX=3 when calling AVX-512 native function via JNI.
Thank you, Vivek
Changes looks good based on your description.
Please, explain why using mask register in scalar instructions is bad.
I will start pre-integration testing and let you know results.
On 11/30/17 7:28 AM, Deshpande, Vivek R wrote:
> I have bug fix for 8190494: Different results with UseAVX=3 when calling AVX-512 native function via JNI.
> Mask register not being reset after JNI and the scalar floating point
> instructions using the mask register encoding with AVX 512 in the assembler causing this problem.
> I have tested it with jtreg on hotspot/compiler and SPECjvm2008 on knights landing and skylake.
> I have also updated the JBS entry.
> Would you please review and sponsor it.
More information about the hotspot-compiler-dev