[jdk18] RFR: 8278948: compiler/vectorapi/reshape/TestVectorCastAVX1.java crashes in assembler [v2]

Vladimir Kozlov kvn at openjdk.java.net
Wed Dec 22 20:16:15 UTC 2021


On Wed, 22 Dec 2021 18:28:34 GMT, Quan Anh Mai <duke at openjdk.java.net> wrote:

>> src/hotspot/cpu/x86/x86.ad line 1778:
>> 
>>> 1776:     case Op_VectorCastS2X:
>>> 1777:     case Op_VectorCastI2X:
>>> 1778:       if (bt != T_DOUBLE && size_in_bits == 256 && UseAVX < 2) {
>> 
>> CastI2X  should work with (UseAVX == 1) for (bt == T_FLOAT) so the prior code was correct for CastI2X. 
>> The fix is only needed for  CastS2X and CastB2X.
>
> AFAIK int vectors of size 256 bit are not supported on AVX1 so we cannot cast from int vectors to float vectors of size 256 anyway. So it is essentially the same.

x86 docs say that `vcvtdq2ps` is AVX1 instruction:
![image](https://user-images.githubusercontent.com/5215794/147149423-10988f8d-9bcd-41ca-b728-bc2c34e3bd35.png)

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

PR: https://git.openjdk.java.net/jdk18/pull/46


More information about the hotspot-compiler-dev mailing list