blob: 7cca7ef854c4a6d8d69a16cd9cd65d237d7374ca [file] [log] [blame]
# Check illegal AVX512F instructions
.text
.allow_index_reg
_start:
mov {sae}, %eax{%k1}
mov {sae}, %eax
mov %ebx, %eax{%k2}
vaddps %zmm3, %zmm1, %zmm2{z}{%k1}{z}
vaddps %zmm3, %zmm1{%k3}, %zmm2{z}
vaddps %zmm3, %zmm1{%k1}, %zmm2{%k2}
vcvtps2pd (%eax), %zmm1{1to8}
vcvtps2pd (%eax){1to16}, %zmm1
vcvtps2pd (%eax){%k1}, %zmm1
vcvtps2pd (%eax){z}, %zmm1
vgatherqpd (%rdi,%zmm2,8),%zmm6
vgatherqpd (%edi),%zmm6{%k1}
vgatherqpd (%zmm2),%zmm6{%k1}
vpscatterdd %zmm6,(%edi){%k1}
vpscatterdd %zmm6,(%zmm2){%k1}
.intel_syntax noprefix
mov eax{k1}, {sae}
mov eax, {sae}
mov eax{k2}, ebx
vaddps zmm2{z}{k1}{z}, zmm1, zmm3
vaddps zmm2{z}, zmm1{k3}, zmm3
vaddps zmm2{k2}, zmm1{k1}, zmm3
vcvtps2pd zmm1{1to8}, [eax]
vcvtps2pd zmm1, [eax]{1to16}
vcvtps2pd zmm1, [eax]{k1}
vcvtps2pd zmm1, [eax]{z}
vgatherqpd zmm6, ZMMWORD PTR [rdi+zmm2*8]
vgatherqpd zmm6{k1}, ZMMWORD PTR [edi]
vgatherqpd zmm6{k1}, ZMMWORD PTR [zmm2+eiz]
vpscatterdd ZMMWORD PTR [edi]{k1}, zmm6
vpscatterdd ZMMWORD PTR [zmm2+eiz]{k1}, zmm6
vaddps zmm2, zmm1, QWORD PTR [eax]{1to8}
vaddps zmm2, zmm1, QWORD PTR [eax]{1to16}
vaddpd zmm2, zmm1, DWORD PTR [eax]{1to8}
vaddpd zmm2, zmm1, DWORD PTR [eax]{1to16}
vaddps zmm2, zmm1, ZMMWORD PTR [eax]{1to16}
vaddps zmm2, zmm1, DWORD PTR [eax]
vaddpd zmm2, zmm1, QWORD PTR [eax]
.att_syntax prefix
vaddps %zmm0, %zmm1, %zmm2{%ecx}
vaddps %zmm0, %zmm1, %zmm2{z}
.intel_syntax noprefix
vaddps zmm2{ecx}, zmm1, zmm0
vaddps zmm2{z}, zmm1, zmm0
.att_syntax prefix
vmovaps (%eax){1to2}, %zmm1
vmovaps (%eax){1to4}, %zmm1
vmovaps (%eax){1to8}, %zmm1
vmovaps (%eax){1to16}, %zmm1
vcvtps2pd (%eax){1to2}, %zmm1
vcvtps2pd (%eax){1to4}, %zmm1
vcvtps2pd (%eax){1to8}, %zmm1
vcvtps2pd (%eax){1to16}, %zmm1
vcvtps2pd (%eax){1to2}, %ymm1
vcvtps2pd (%eax){1to4}, %ymm1
vcvtps2pd (%eax){1to8}, %ymm1
vcvtps2pd (%eax){1to16}, %ymm1
vcvtps2pd (%eax){1to2}, %xmm1
vcvtps2pd (%eax){1to4}, %xmm1
vcvtps2pd (%eax){1to8}, %xmm1
vcvtps2pd (%eax){1to16}, %xmm1
vaddps (%eax){1to2}, %zmm1, %zmm2
vaddps (%eax){1to4}, %zmm1, %zmm2
vaddps (%eax){1to8}, %zmm1, %zmm2
vaddps (%eax){1to16}, %zmm1, %zmm2
vaddps (%eax){1to2}, %ymm1, %ymm2
vaddps (%eax){1to4}, %ymm1, %ymm2
vaddps (%eax){1to8}, %ymm1, %ymm2
vaddps (%eax){1to16}, %ymm1, %ymm2
vaddps (%eax){1to2}, %xmm1, %xmm2
vaddps (%eax){1to4}, %xmm1, %xmm2
vaddps (%eax){1to8}, %xmm1, %xmm2
vaddps (%eax){1to16}, %xmm1, %xmm2
vaddpd (%eax){1to2}, %zmm1, %zmm2
vaddpd (%eax){1to4}, %zmm1, %zmm2
vaddpd (%eax){1to8}, %zmm1, %zmm2
vaddpd (%eax){1to16}, %zmm1, %zmm2
vaddpd (%eax){1to2}, %ymm1, %ymm2
vaddpd (%eax){1to4}, %ymm1, %ymm2
vaddpd (%eax){1to8}, %ymm1, %ymm2
vaddpd (%eax){1to16}, %ymm1, %ymm2
vaddpd (%eax){1to2}, %xmm1, %xmm2
vaddpd (%eax){1to4}, %xmm1, %xmm2
vaddpd (%eax){1to8}, %xmm1, %xmm2
vaddpd (%eax){1to16}, %xmm1, %xmm2
.intel_syntax noprefix
vcvtps2pd zmm1, QWORD PTR [eax]
vcvtps2pd ymm1, QWORD PTR [eax]
vcvtps2pd xmm1, QWORD PTR [eax]
vcvtps2pd xmm1, DWORD PTR [eax]{1to2}
vcvtps2pd xmm1, DWORD PTR [eax]{1to4}
vcvtps2pd xmm1, DWORD PTR [eax]{1to8}
vcvtps2pd xmm1, DWORD PTR [eax]{1to16}
vaddps zmm2, zmm1, QWORD PTR [eax]
vaddps ymm2, ymm1, QWORD PTR [eax]
vaddps xmm2, xmm1, QWORD PTR [eax]
vaddps zmm2, zmm1, DWORD PTR [eax]{1to2}
vaddps zmm2, zmm1, DWORD PTR [eax]{1to4}
vaddps zmm2, zmm1, DWORD PTR [eax]{1to8}
vaddps zmm2, zmm1, DWORD PTR [eax]{1to16}
vaddps ymm2, ymm1, DWORD PTR [eax]{1to2}
vaddps ymm2, ymm1, DWORD PTR [eax]{1to4}
vaddps ymm2, ymm1, DWORD PTR [eax]{1to8}
vaddps ymm2, ymm1, DWORD PTR [eax]{1to16}
vaddps xmm2, xmm1, DWORD PTR [eax]{1to2}
vaddps xmm2, xmm1, DWORD PTR [eax]{1to4}
vaddps xmm2, xmm1, DWORD PTR [eax]{1to8}
vaddps xmm2, xmm1, DWORD PTR [eax]{1to16}
vaddpd zmm2, zmm1, DWORD PTR [eax]
vaddpd ymm2, ymm1, DWORD PTR [eax]
vaddpd xmm2, xmm1, DWORD PTR [eax]
vaddpd zmm2, zmm1, QWORD PTR [eax]{1to2}
vaddpd zmm2, zmm1, QWORD PTR [eax]{1to4}
vaddpd zmm2, zmm1, QWORD PTR [eax]{1to8}
vaddpd zmm2, zmm1, QWORD PTR [eax]{1to16}
vaddpd ymm2, ymm1, QWORD PTR [eax]{1to2}
vaddpd ymm2, ymm1, QWORD PTR [eax]{1to4}
vaddpd ymm2, ymm1, QWORD PTR [eax]{1to8}
vaddpd ymm2, ymm1, QWORD PTR [eax]{1to16}
vaddpd xmm2, xmm1, QWORD PTR [eax]{1to2}
vaddpd xmm2, xmm1, QWORD PTR [eax]{1to4}
vaddpd xmm2, xmm1, QWORD PTR [eax]{1to8}
vaddpd xmm2, xmm1, QWORD PTR [eax]{1to16}
vcvtps2qq xmm0, DWORD PTR [eax]
.att_syntax prefix
vcmppd $0, %zmm0, %zmm0, %k0{%k1}{z}
vcmpps $0, %zmm0, %zmm0, %k0{%k1}{z}
vcmpsd $0, %xmm0, %xmm0, %k0{%k1}{z}
vcmpss $0, %xmm0, %xmm0, %k0{%k1}{z}
vcompresspd %zmm0, (%eax){%k1}{z}
vcompressps %zmm0, (%eax){%k1}{z}
vcvtps2ph $0, %zmm0, (%eax){%k1}{z}
vextractf32x4 $0, %zmm0, (%eax){%k1}{z}
vextractf32x8 $0, %zmm0, (%eax){%k1}{z}
vextractf64x2 $0, %zmm0, (%eax){%k1}{z}
vextractf64x4 $0, %zmm0, (%eax){%k1}{z}
vextracti32x4 $0, %zmm0, (%eax){%k1}{z}
vextracti32x8 $0, %zmm0, (%eax){%k1}{z}
vextracti64x2 $0, %zmm0, (%eax){%k1}{z}
vextracti64x4 $0, %zmm0, (%eax){%k1}{z}
vfpclasspd $0, %zmm0, %k0{%k1}{z}
vfpclassps $0, %zmm0, %k0{%k1}{z}
vfpclasssd $0, %xmm0, %k0{%k1}{z}
vfpclassss $0, %xmm0, %k0{%k1}{z}
vgatherdpd (%eax,%ymm1), %zmm0{%k1}{z}
vgatherdps (%eax,%zmm1), %zmm0{%k1}{z}
vgatherqpd (%eax,%zmm1), %zmm0{%k1}{z}
vgatherqps (%eax,%zmm1), %ymm0{%k1}{z}
vgatherpf0dpd (%eax,%ymm1){%k1}{z}
vgatherpf0dps (%eax,%zmm1){%k1}{z}
vgatherpf0qpd (%eax,%zmm1){%k1}{z}
vgatherpf0qps (%eax,%zmm1){%k1}{z}
vgatherpf1dpd (%eax,%ymm1){%k1}{z}
vgatherpf1dps (%eax,%zmm1){%k1}{z}
vgatherpf1qpd (%eax,%zmm1){%k1}{z}
vgatherpf1qps (%eax,%zmm1){%k1}{z}
vmovapd %zmm0, (%eax){%k1}{z}
vmovaps %zmm0, (%eax){%k1}{z}
vmovdqa32 %zmm0, (%eax){%k1}{z}
vmovdqa64 %zmm0, (%eax){%k1}{z}
vmovdqu8 %zmm0, (%eax){%k1}{z}
vmovdqu16 %zmm0, (%eax){%k1}{z}
vmovdqu32 %zmm0, (%eax){%k1}{z}
vmovdqu64 %zmm0, (%eax){%k1}{z}
vmovsd %xmm0, (%eax){%k1}{z}
vmovss %xmm0, (%eax){%k1}{z}
vmovupd %zmm0, (%eax){%k1}{z}
vmovups %zmm0, (%eax){%k1}{z}
vpcmpb $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpd $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpq $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpw $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpeqb %zmm0, %zmm0, %k0{%k1}{z}
vpcmpeqd %zmm0, %zmm0, %k0{%k1}{z}
vpcmpeqq %zmm0, %zmm0, %k0{%k1}{z}
vpcmpeqw %zmm0, %zmm0, %k0{%k1}{z}
vpcmpgtb %zmm0, %zmm0, %k0{%k1}{z}
vpcmpgtd %zmm0, %zmm0, %k0{%k1}{z}
vpcmpgtq %zmm0, %zmm0, %k0{%k1}{z}
vpcmpgtw %zmm0, %zmm0, %k0{%k1}{z}
vpcmpub $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpud $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpuq $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcmpuw $0, %zmm0, %zmm0, %k0{%k1}{z}
vpcompressb %zmm0, (%eax){%k1}{z}
vpcompressd %zmm0, (%eax){%k1}{z}
vpcompressq %zmm0, (%eax){%k1}{z}
vpcompressw %zmm0, (%eax){%k1}{z}
vpgatherdd (%eax,%zmm1), %zmm0{%k1}{z}
vpgatherdq (%eax,%ymm1), %zmm0{%k1}{z}
vpgatherqd (%eax,%zmm1), %ymm0{%k1}{z}
vpgatherqq (%eax,%zmm1), %zmm0{%k1}{z}
vpmovdb %zmm0, (%eax){%k1}{z}
vpmovdw %zmm0, (%eax){%k1}{z}
vpmovqb %zmm0, (%eax){%k1}{z}
vpmovqd %zmm0, (%eax){%k1}{z}
vpmovqw %zmm0, (%eax){%k1}{z}
vpmovsdb %zmm0, (%eax){%k1}{z}
vpmovsdw %zmm0, (%eax){%k1}{z}
vpmovsqb %zmm0, (%eax){%k1}{z}
vpmovsqd %zmm0, (%eax){%k1}{z}
vpmovsqw %zmm0, (%eax){%k1}{z}
vpmovswb %zmm0, (%eax){%k1}{z}
vpmovusdb %zmm0, (%eax){%k1}{z}
vpmovusdw %zmm0, (%eax){%k1}{z}
vpmovusqb %zmm0, (%eax){%k1}{z}
vpmovusqd %zmm0, (%eax){%k1}{z}
vpmovusqw %zmm0, (%eax){%k1}{z}
vpmovuswb %zmm0, (%eax){%k1}{z}
vpmovwb %zmm0, (%eax){%k1}{z}
vpscatterdd %zmm0, (%eax,%zmm1){%k1}{z}
vpscatterdq %zmm0, (%eax,%ymm1){%k1}{z}
vpscatterqd %ymm0, (%eax,%zmm1){%k1}{z}
vpscatterqq %zmm0, (%eax,%zmm1){%k1}{z}
vpshufbitqmb %zmm0, %zmm0, %k0{%k1}{z}
vptestmb %zmm0, %zmm0, %k0{%k1}{z}
vptestmd %zmm0, %zmm0, %k0{%k1}{z}
vptestmq %zmm0, %zmm0, %k0{%k1}{z}
vptestmw %zmm0, %zmm0, %k0{%k1}{z}
vptestnmb %zmm0, %zmm0, %k0{%k1}{z}
vptestnmd %zmm0, %zmm0, %k0{%k1}{z}
vptestnmq %zmm0, %zmm0, %k0{%k1}{z}
vptestnmw %zmm0, %zmm0, %k0{%k1}{z}
vscatterdpd %zmm0, (%eax,%ymm1){%k1}{z}
vscatterdps %zmm0, (%eax,%zmm1){%k1}{z}
vscatterqpd %zmm0, (%eax,%zmm1){%k1}{z}
vscatterqps %ymm0, (%eax,%zmm1){%k1}{z}
vscatterpf0dpd (%eax,%ymm1){%k1}{z}
vscatterpf0dps (%eax,%zmm1){%k1}{z}
vscatterpf0qpd (%eax,%zmm1){%k1}{z}
vscatterpf0qps (%eax,%zmm1){%k1}{z}
vscatterpf1dpd (%eax,%ymm1){%k1}{z}
vscatterpf1dps (%eax,%zmm1){%k1}{z}
vscatterpf1qpd (%eax,%zmm1){%k1}{z}
vscatterpf1qps (%eax,%zmm1){%k1}{z}
vdpbf16ps 8(%eax){1to8}, %zmm2, %zmm2
vcvtne2ps2bf16 8(%eax){1to8}, %zmm2, %zmm2
vcvtneps2bf16 (%eax){1to2}, %ymm1
vcvtneps2bf16 (%eax){1to4}, %ymm1
vcvtneps2bf16 (%eax){1to8}, %ymm1
vcvtneps2bf16 (%eax){1to16}, %ymm1
vcvtneps2bf16 (%eax){1to2}, %xmm1
vcvtneps2bf16 (%eax){1to4}, %xmm1
vcvtneps2bf16 (%eax){1to8}, %xmm1
vcvtneps2bf16 (%eax){1to16}, %xmm1
.p2align 4