RFR: 8255210: [Vector API] jdk/incubator/vector/Int256VectorTests.java crashes on AVX512 machines

Jie Fu jiefu at openjdk.java.net
Fri Oct 23 07:38:36 UTC 2020


On Fri, 23 Oct 2020 07:26:45 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

>> Hi all,
>> 
>> Please review the fix of an AVX512 crash for Vector API.
>> The reason is that reductionI in x86.ad didn't use legVec for code generation, which is required by Assembler::vphaddd.
>> 
>> Testing:
>>  - test/jdk/jdk/incubator/vector all passed on both AVX256 and AVX512 machines
>> 
>> Thanks.
>> Best regards,
>> Jie
>
> src/hotspot/cpu/x86/x86.ad line 4429:
> 
>> 4427: instruct reductionI(rRegI dst, rRegI src1, legVec src2, legVec vtmp1, legVec vtmp2) %{
>> 4428:   predicate(vector_element_basic_type(n->in(2)) == T_INT &&
>> 4429:             vector_length(n->in(2)) <= 16); // src2
> 
> FTR since `reduction16I` is gone, vector length check becomes redundant: `reductionI` successfully covers the whole range of vectors of int.

Nice catch!

The same case with reductionS.

I'll fix it next time.
Thanks.

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

PR: https://git.openjdk.java.net/jdk/pull/791


More information about the hotspot-compiler-dev mailing list