x86: adjust {,E}VEX.W handling for PEXTR* / PINSR*
[external/binutils.git] / gas / testsuite / gas / i386 / x86-64-avx-wig.s
1 # Check AVX WIG instructions
2
3         .allow_index_reg
4         .text
5 _start:
6         vaddpd %ymm4,%ymm6,%ymm2
7         vaddps %ymm4,%ymm6,%ymm2
8         vaddsd %xmm4,%xmm6,%xmm2
9         vaddss %xmm4,%xmm6,%xmm2
10         vaddsubpd %ymm4,%ymm6,%ymm2
11         vaddsubps %ymm4,%ymm6,%ymm2
12         vaesdec %xmm4,%xmm6,%xmm2
13         vaesdeclast %xmm4,%xmm6,%xmm2
14         vaesenc %xmm4,%xmm6,%xmm2
15         vaesenclast %xmm4,%xmm6,%xmm2
16         vaesimc %xmm4,%xmm6
17         vaeskeygenassist $7,%xmm4,%xmm6
18         vandnpd %ymm4,%ymm6,%ymm2
19         vandnps %ymm4,%ymm6,%ymm2
20         vandpd %ymm4,%ymm6,%ymm2
21         vandps %ymm4,%ymm6,%ymm2
22         vblendpd $7,%ymm4,%ymm6,%ymm2
23         vblendps $7,%ymm4,%ymm6,%ymm2
24         vcmpeqpd %ymm4,%ymm6,%ymm2
25         vcmpeqps %ymm4,%ymm6,%ymm2
26         vcmpeqsd %xmm4,%xmm6,%xmm2
27         vcmpeqss %xmm4,%xmm6,%xmm2
28         vcmppd $7,%ymm4,%ymm6,%ymm2
29         vcmpps $7,%ymm4,%ymm6,%ymm2
30         vcmpsd $7,%xmm4,%xmm6,%xmm2
31         vcmpss $7,%xmm4,%xmm6,%xmm2
32         vcomisd %xmm4,%xmm6
33         vcomiss %xmm4,%xmm6
34         vcvtdq2pd %xmm4,%ymm4
35         vcvtdq2ps %ymm4,%ymm6
36         vcvtpd2dqy %ymm4,%xmm4
37         vcvtpd2dqx %xmm4,%xmm6
38         vcvtpd2dqy %ymm4,%xmm4
39         vcvtpd2psy %ymm4,%xmm4
40         vcvtpd2psx %xmm4,%xmm6
41         vcvtpd2psy %ymm4,%xmm4
42         vcvtps2dq %ymm4,%ymm6
43         vcvtps2pd %xmm4,%ymm4
44         vcvtsd2ss %xmm4,%xmm6,%xmm2
45         vcvtss2sd %xmm4,%xmm6,%xmm2
46         vcvttpd2dqy %ymm4,%xmm4
47         vcvttpd2dqx %xmm4,%xmm6
48         vcvttpd2dqy %ymm4,%xmm4
49         vcvttps2dq %ymm4,%ymm6
50         vdivpd %ymm4,%ymm6,%ymm2
51         vdivps %ymm4,%ymm6,%ymm2
52         vdivsd %xmm4,%xmm6,%xmm2
53         vdivss %xmm4,%xmm6,%xmm2
54         vdppd $7,%xmm4,%xmm6,%xmm2
55         vdpps $7,%ymm4,%ymm6,%ymm2
56         vextractps $7,%xmm4,%rcx
57         vhaddpd %ymm4,%ymm6,%ymm2
58         vhaddps %ymm4,%ymm6,%ymm2
59         vhsubpd %ymm4,%ymm6,%ymm2
60         vhsubps %ymm4,%ymm6,%ymm2
61         vinsertps $7,%xmm4,%xmm6,%xmm2
62         vlddqu (%rcx),%ymm4
63         vldmxcsr (%rcx)
64         vmaskmovdqu %xmm4,%xmm6
65         vmaxpd %ymm4,%ymm6,%ymm2
66         vmaxps %ymm4,%ymm6,%ymm2
67         vmaxsd %xmm4,%xmm6,%xmm2
68         vmaxss %xmm4,%xmm6,%xmm2
69         vminpd %ymm4,%ymm6,%ymm2
70         vminps %ymm4,%ymm6,%ymm2
71         vminsd %xmm4,%xmm6,%xmm2
72         vminss %xmm4,%xmm6,%xmm2
73         vmovapd %ymm4,%ymm6
74         vmovaps %ymm4,%ymm6
75         {store} vmovapd %ymm4,%ymm6
76         {store} vmovaps %ymm4,%ymm6
77         vmovddup %ymm4,%ymm6
78         vmovdqa %ymm4,%ymm6
79         vmovdqu %ymm4,%ymm6
80         {store} vmovdqa %ymm4,%ymm6
81         {store} vmovdqu %ymm4,%ymm6
82         vmovhlps %xmm4,%xmm6,%xmm2
83         vmovhpd (%rcx),%xmm4,%xmm6
84         vmovhpd %xmm4,(%rcx)
85         vmovhps (%rcx),%xmm4,%xmm6
86         vmovhps %xmm4,(%rcx)
87         vmovlhps %xmm4,%xmm6,%xmm2
88         vmovlpd (%rcx),%xmm4,%xmm6
89         vmovlpd %xmm4,(%rcx)
90         vmovlps (%rcx),%xmm4,%xmm6
91         vmovlps %xmm4,(%rcx)
92         vmovmskpd %xmm4,%rcx
93         vmovmskps %xmm4,%rcx
94         vmovntdq %ymm4,(%rcx)
95         vmovntdqa (%rcx),%xmm4
96         vmovntpd %ymm4,(%rcx)
97         vmovntps %ymm4,(%rcx)
98         vmovq %xmm4,%xmm6
99         vmovq %xmm4,(%rcx)
100         vmovq %xmm4,%rcx
101         vmovq %rcx,%xmm4
102         vmovsd (%rcx),%xmm4
103         vmovsd %xmm4,(%rcx)
104         vmovshdup %ymm4,%ymm6
105         vmovsldup %ymm4,%ymm6
106         vmovss (%rcx),%xmm4
107         vmovss %xmm4,(%rcx)
108         vmovupd %ymm4,%ymm6
109         vmovupd %ymm4,(%rcx)
110         vmovups %ymm4,%ymm6
111         vmovups %ymm4,(%rcx)
112         vmpsadbw $7,%xmm4,%xmm6,%xmm2
113         vmulpd %ymm4,%ymm6,%ymm2
114         vmulps %ymm4,%ymm6,%ymm2
115         vmulsd %xmm4,%xmm6,%xmm2
116         vmulss %xmm4,%xmm6,%xmm2
117         vorpd %ymm4,%ymm6,%ymm2
118         vorps %ymm4,%ymm6,%ymm2
119         vpabsb %xmm4,%xmm6
120         vpabsd %xmm4,%xmm6
121         vpabsw %xmm4,%xmm6
122         vpackssdw %xmm4,%xmm6,%xmm2
123         vpacksswb %xmm4,%xmm6,%xmm2
124         vpackusdw %xmm4,%xmm6,%xmm2
125         vpackuswb %xmm4,%xmm6,%xmm2
126         vpaddb %xmm4,%xmm6,%xmm2
127         vpaddd %xmm4,%xmm6,%xmm2
128         vpaddq %xmm4,%xmm6,%xmm2
129         vpaddsb %xmm4,%xmm6,%xmm2
130         vpaddsw %xmm4,%xmm6,%xmm2
131         vpaddusb %xmm4,%xmm6,%xmm2
132         vpaddusw %xmm4,%xmm6,%xmm2
133         vpaddw %xmm4,%xmm6,%xmm2
134         vpalignr $7,%xmm4,%xmm6,%xmm2
135         vpand %xmm4,%xmm6,%xmm2
136         vpandn %xmm4,%xmm6,%xmm2
137         vpavgb %xmm4,%xmm6,%xmm2
138         vpavgw %xmm4,%xmm6,%xmm2
139         vpblendw $7,%xmm4,%xmm6,%xmm2
140         vpclmulhqhqdq %xmm4,%xmm6,%xmm2
141         vpclmulhqlqdq %xmm4,%xmm6,%xmm2
142         vpclmullqhqdq %xmm4,%xmm6,%xmm2
143         vpclmullqlqdq %xmm4,%xmm6,%xmm2
144         vpclmulqdq $7,%xmm4,%xmm6,%xmm2
145         vpcmpeqb %xmm4,%xmm6,%xmm2
146         vpcmpeqd %xmm4,%xmm6,%xmm2
147         vpcmpeqq %xmm4,%xmm6,%xmm2
148         vpcmpeqw %xmm4,%xmm6,%xmm2
149         vpcmpgtb %xmm4,%xmm6,%xmm2
150         vpcmpgtd %xmm4,%xmm6,%xmm2
151         vpcmpgtq %xmm4,%xmm6,%xmm2
152         vpcmpgtw %xmm4,%xmm6,%xmm2
153         vpcmpistri $7,%xmm4,%xmm6
154         vpcmpistrm $7,%xmm4,%xmm6
155         vpextrb $0, %xmm0, %eax
156         vpextrb $0, %xmm0, (%rax)
157         vpextrw $0, %xmm0, %eax
158         {store} vpextrw $0, %xmm0, %eax
159         vpextrw $0, %xmm0, (%rax)
160         vphaddd %xmm4,%xmm6,%xmm2
161         vphaddsw %xmm4,%xmm6,%xmm2
162         vphaddw %xmm4,%xmm6,%xmm2
163         vphminposuw %xmm4,%xmm6
164         vphsubd %xmm4,%xmm6,%xmm2
165         vphsubsw %xmm4,%xmm6,%xmm2
166         vphsubw %xmm4,%xmm6,%xmm2
167         vpinsrb $0, %eax, %xmm0, %xmm0
168         vpinsrb $0, (%rax), %xmm0, %xmm0
169         vpinsrw $0, %eax, %xmm0, %xmm0
170         vpinsrw $0, (%rax), %xmm0, %xmm0
171         vpmaddubsw %xmm4,%xmm6,%xmm2
172         vpmaddwd %xmm4,%xmm6,%xmm2
173         vpmaxsb %xmm4,%xmm6,%xmm2
174         vpmaxsd %xmm4,%xmm6,%xmm2
175         vpmaxsw %xmm4,%xmm6,%xmm2
176         vpmaxub %xmm4,%xmm6,%xmm2
177         vpmaxud %xmm4,%xmm6,%xmm2
178         vpmaxuw %xmm4,%xmm6,%xmm2
179         vpminsb %xmm4,%xmm6,%xmm2
180         vpminsd %xmm4,%xmm6,%xmm2
181         vpminsw %xmm4,%xmm6,%xmm2
182         vpminub %xmm4,%xmm6,%xmm2
183         vpminud %xmm4,%xmm6,%xmm2
184         vpminuw %xmm4,%xmm6,%xmm2
185         vpmovmskb %xmm4,%rcx
186         vpmovsxbd %xmm4,%xmm6
187         vpmovsxbq %xmm4,%xmm6
188         vpmovsxbw %xmm4,%xmm6
189         vpmovsxdq %xmm4,%xmm6
190         vpmovsxwd %xmm4,%xmm6
191         vpmovsxwq %xmm4,%xmm6
192         vpmovzxbd %xmm4,%xmm6
193         vpmovzxbq %xmm4,%xmm6
194         vpmovzxbw %xmm4,%xmm6
195         vpmovzxdq %xmm4,%xmm6
196         vpmovzxwd %xmm4,%xmm6
197         vpmovzxwq %xmm4,%xmm6
198         vpmuldq %xmm4,%xmm6,%xmm2
199         vpmulhrsw %xmm4,%xmm6,%xmm2
200         vpmulhuw %xmm4,%xmm6,%xmm2
201         vpmulhw %xmm4,%xmm6,%xmm2
202         vpmulld %xmm4,%xmm6,%xmm2
203         vpmullw %xmm4,%xmm6,%xmm2
204         vpmuludq %xmm4,%xmm6,%xmm2
205         vpor %xmm4,%xmm6,%xmm2
206         vpsadbw %xmm4,%xmm6,%xmm2
207         vpshufb %xmm4,%xmm6,%xmm2
208         vpshufd $7,%xmm4,%xmm6
209         vpshufhw $7,%xmm4,%xmm6
210         vpshuflw $7,%xmm4,%xmm6
211         vpsignb %xmm4,%xmm6,%xmm2
212         vpsignd %xmm4,%xmm6,%xmm2
213         vpsignw %xmm4,%xmm6,%xmm2
214         vpslld %xmm4,%xmm6,%xmm2
215         vpslldq $7,%xmm4,%xmm6
216         vpsllq %xmm4,%xmm6,%xmm2
217         vpsllw %xmm4,%xmm6,%xmm2
218         vpsrad %xmm4,%xmm6,%xmm2
219         vpsraw %xmm4,%xmm6,%xmm2
220         vpsrld %xmm4,%xmm6,%xmm2
221         vpsrldq $7,%xmm4,%xmm6
222         vpsrlq %xmm4,%xmm6,%xmm2
223         vpsrlw %xmm4,%xmm6,%xmm2
224         vpsubb %xmm4,%xmm6,%xmm2
225         vpsubd %xmm4,%xmm6,%xmm2
226         vpsubq %xmm4,%xmm6,%xmm2
227         vpsubsb %xmm4,%xmm6,%xmm2
228         vpsubsw %xmm4,%xmm6,%xmm2
229         vpsubusb %xmm4,%xmm6,%xmm2
230         vpsubusw %xmm4,%xmm6,%xmm2
231         vpsubw %xmm4,%xmm6,%xmm2
232         vptest %ymm4,%ymm6
233         vpunpckhbw %xmm4,%xmm6,%xmm2
234         vpunpckhdq %xmm4,%xmm6,%xmm2
235         vpunpckhqdq %xmm4,%xmm6,%xmm2
236         vpunpckhwd %xmm4,%xmm6,%xmm2
237         vpunpcklbw %xmm4,%xmm6,%xmm2
238         vpunpckldq %xmm4,%xmm6,%xmm2
239         vpunpcklqdq %xmm4,%xmm6,%xmm2
240         vpunpcklwd %xmm4,%xmm6,%xmm2
241         vpxor %xmm4,%xmm6,%xmm2
242         vrcpps %ymm4,%ymm6
243         vrcpss %xmm4,%xmm6,%xmm2
244         vroundpd $7,%ymm6,%ymm2
245         vroundps $7,%ymm6,%ymm2
246         vroundsd $7,%xmm4,%xmm6,%xmm2
247         vroundss $7,%xmm4,%xmm6,%xmm2
248         vrsqrtps %ymm4,%ymm6
249         vrsqrtss %xmm4,%xmm6,%xmm2
250         vshufpd $7,%ymm4,%ymm6,%ymm2
251         vshufps $7,%ymm4,%ymm6,%ymm2
252         vsqrtpd %ymm4,%ymm6
253         vsqrtps %ymm4,%ymm6
254         vsqrtsd %xmm4,%xmm6,%xmm2
255         vsqrtss %xmm4,%xmm6,%xmm2
256         vstmxcsr (%rcx)
257         vsubpd %ymm4,%ymm6,%ymm2
258         vsubps %ymm4,%ymm6,%ymm2
259         vsubsd %xmm4,%xmm6,%xmm2
260         vsubss %xmm4,%xmm6,%xmm2
261         vucomisd %xmm4,%xmm6
262         vucomiss %xmm4,%xmm6
263         vunpckhpd %ymm4,%ymm6,%ymm2
264         vunpckhps %ymm4,%ymm6,%ymm2
265         vunpcklpd %ymm4,%ymm6,%ymm2
266         vunpcklps %ymm4,%ymm6,%ymm2
267         vxorpd %ymm4,%ymm6,%ymm2
268         vxorps %ymm4,%ymm6,%ymm2
269         vzeroall
270         vzeroupper