gas: Adjust x86 tests for PECOFF
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / pseudos.s
1 # Check instructions with pseudo prefixes for encoding
2
3 .text
4 _start:
5 {vex3} vmovaps %xmm7,%xmm2
6 {vex3} {load} vmovaps %xmm7,%xmm2
7 {vex3} {store} vmovaps %xmm7,%xmm2
8 vmovaps %xmm7,%xmm2
9 {vex} vmovaps %xmm7,%xmm2
10 {vex} {load} vmovaps %xmm7,%xmm2
11 {vex} {store} vmovaps %xmm7,%xmm2
12 {vex3} vmovaps (%eax),%xmm2
13 vmovaps (%eax),%xmm2
14 {vex2} vmovaps (%eax),%xmm2
15 {evex} vmovaps (%eax),%xmm2
16 {disp32} vmovaps (%eax),%xmm2
17 {evex} {disp8} vmovaps (%eax),%xmm2
18 {evex} {disp32} vmovaps (%eax),%xmm2
19
20 mov %ecx, %eax
21 {load} mov %ecx, %eax
22 {store} mov %ecx, %eax
23 adc %ecx, %eax
24 {load} adc %ecx, %eax
25 {store} adc %ecx, %eax
26 add %ecx, %eax
27 {load} add %ecx, %eax
28 {store} add %ecx, %eax
29 and %ecx, %eax
30 {load} and %ecx, %eax
31 {store} and %ecx, %eax
32 cmp %ecx, %eax
33 {load} cmp %ecx, %eax
34 {store} cmp %ecx, %eax
35 or %ecx, %eax
36 {load} or %ecx, %eax
37 {store} or %ecx, %eax
38 sbb %ecx, %eax
39 {load} sbb %ecx, %eax
40 {store} sbb %ecx, %eax
41 sub %ecx, %eax
42 {load} sub %ecx, %eax
43 {store} sub %ecx, %eax
44 xor %ecx, %eax
45 {load} xor %ecx, %eax
46 {store} xor %ecx, %eax
47
48 {load} mov 0x12345678, %eax
49 {load} mov %eax, 0x12345678
50 {store} mov 0x12345678, %eax
51 {store} mov %eax, 0x12345678
52 {load} mov %eax, (%edi)
53 {load} mov (%edi), %eax
54 {store} mov %eax, (%edi)
55 {store} mov (%edi), %eax
56 {load} mov %es, %edi
57 {load} mov %eax, %gs
58 {store} mov %es, %edi
59 {store} mov %eax, %gs
60 {load} mov %cr0, %edi
61 {load} mov %eax, %cr7
62 {store} mov %cr0, %edi
63 {store} mov %eax, %cr7
64 {load} mov %dr0, %edi
65 {load} mov %eax, %dr7
66 {store} mov %dr0, %edi
67 {store} mov %eax, %dr7
68 {load} kmovb %k0, %edi
69 {load} kmovb %eax, %k7
70 {store} kmovb %k0, %edi
71 {store} kmovb %eax, %k7
72 {load} kmovd %k0, %edi
73 {load} kmovd %eax, %k7
74 {store} kmovd %k0, %edi
75 {store} kmovd %eax, %k7
76 {load} kmovw %k0, %edi
77 {load} kmovw %eax, %k7
78 {store} kmovw %k0, %edi
79 {store} kmovw %eax, %k7
80 {load} kmovb %k0, %k7
81 {store} kmovb %k0, %k7
82 {load} kmovd %k0, %k7
83 {store} kmovd %k0, %k7
84 {load} kmovq %k0, %k7
85 {store} kmovq %k0, %k7
86 {load} kmovw %k0, %k7
87 {store} kmovw %k0, %k7
88 {load} adc %eax, (%edi)
89 {load} adc (%edi), %eax
90 {store} adc %eax, (%edi)
91 {store} adc (%edi), %eax
92 {load} add %eax, (%edi)
93 {load} add (%edi), %eax
94 {store} add %eax, (%edi)
95 {store} add (%edi), %eax
96 {load} and %eax, (%edi)
97 {load} and (%edi), %eax
98 {store} and %eax, (%edi)
99 {store} and (%edi), %eax
100 {load} cmp %eax, (%edi)
101 {load} cmp (%edi), %eax
102 {store} cmp %eax, (%edi)
103 {store} cmp (%edi), %eax
104 {load} or %eax, (%edi)
105 {load} or (%edi), %eax
106 {store} or %eax, (%edi)
107 {store} or (%edi), %eax
108 {load} sbb %eax, (%edi)
109 {load} sbb (%edi), %eax
110 {store} sbb %eax, (%edi)
111 {store} sbb (%edi), %eax
112 {load} sub %eax, (%edi)
113 {load} sub (%edi), %eax
114 {store} sub %eax, (%edi)
115 {store} sub (%edi), %eax
116 {load} xor %eax, (%edi)
117 {load} xor (%edi), %eax
118 {store} xor %eax, (%edi)
119 {store} xor (%edi), %eax
120
121 fadd %st, %st
122 {load} fadd %st, %st
123 {store} fadd %st, %st
124 fdiv %st, %st
125 {load} fdiv %st, %st
126 {store} fdiv %st, %st
127 fdivr %st, %st
128 {load} fdivr %st, %st
129 {store} fdivr %st, %st
130 fmul %st, %st
131 {load} fmul %st, %st
132 {store} fmul %st, %st
133 fsub %st, %st
134 {load} fsub %st, %st
135 {store} fsub %st, %st
136 fsubr %st, %st
137 {load} fsubr %st, %st
138 {store} fsubr %st, %st
139
140 movq %mm0, %mm7
141 {load} movq %mm0, %mm7
142 {store} movq %mm0, %mm7
143
144 movaps %xmm0, %xmm7
145 {load} movaps %xmm0, %xmm7
146 {store} movaps %xmm0, %xmm7
147 movups %xmm0, %xmm7
148 {load} movups %xmm0, %xmm7
149 {store} movups %xmm0, %xmm7
150 movss %xmm0, %xmm7
151 {load} movss %xmm0, %xmm7
152 {store} movss %xmm0, %xmm7
153 movapd %xmm0, %xmm7
154 {load} movapd %xmm0, %xmm7
155 {store} movapd %xmm0, %xmm7
156 movupd %xmm0, %xmm7
157 {load} movupd %xmm0, %xmm7
158 {store} movupd %xmm0, %xmm7
159 movsd %xmm0, %xmm7
160 {load} movsd %xmm0, %xmm7
161 {store} movsd %xmm0, %xmm7
162 movdqa %xmm0, %xmm7
163 {load} movdqa %xmm0, %xmm7
164 {store} movdqa %xmm0, %xmm7
165 movdqu %xmm0, %xmm7
166 {load} movdqu %xmm0, %xmm7
167 {store} movdqu %xmm0, %xmm7
168 movq %xmm0, %xmm7
169 {load} movq %xmm0, %xmm7
170 {store} movq %xmm0, %xmm7
171 vmovaps %xmm0, %xmm7
172 {load} vmovaps %xmm0, %xmm7
173 {store} vmovaps %xmm0, %xmm7
174 vmovaps %zmm0, %zmm7
175 {load} vmovaps %zmm0, %zmm7
176 {store} vmovaps %zmm0, %zmm7
177 vmovaps %xmm0, %xmm7{%k7}
178 {load} vmovaps %xmm0, %xmm7{%k7}
179 {store} vmovaps %xmm0, %xmm7{%k7}
180 vmovups %zmm0, %zmm7
181 {load} vmovups %zmm0, %zmm7
182 {store} vmovups %zmm0, %zmm7
183 vmovups %xmm0, %xmm7
184 {load} vmovups %xmm0, %xmm7
185 {store} vmovups %xmm0, %xmm7
186 vmovups %xmm0, %xmm7{%k7}
187 {load} vmovups %xmm0, %xmm7{%k7}
188 {store} vmovups %xmm0, %xmm7{%k7}
189 vmovss %xmm0, %xmm1, %xmm7
190 {load} vmovss %xmm0, %xmm1, %xmm7
191 {store} vmovss %xmm0, %xmm1, %xmm7
192 vmovss %xmm0, %xmm1, %xmm7{%k7}
193 {load} vmovss %xmm0, %xmm1, %xmm7{%k7}
194 {store} vmovss %xmm0, %xmm1, %xmm7{%k7}
195 vmovapd %xmm0, %xmm7
196 {load} vmovapd %xmm0, %xmm7
197 {store} vmovapd %xmm0, %xmm7
198 vmovapd %zmm0, %zmm7
199 {load} vmovapd %zmm0, %zmm7
200 {store} vmovapd %zmm0, %zmm7
201 vmovapd %xmm0, %xmm7{%k7}
202 {load} vmovapd %xmm0, %xmm7{%k7}
203 {store} vmovapd %xmm0, %xmm7{%k7}
204 vmovupd %xmm0, %xmm7
205 {load} vmovupd %xmm0, %xmm7
206 {store} vmovupd %xmm0, %xmm7
207 vmovupd %zmm0, %zmm7
208 {load} vmovupd %zmm0, %zmm7
209 {store} vmovupd %zmm0, %zmm7
210 vmovupd %xmm0, %xmm7{%k7}
211 {load} vmovupd %xmm0, %xmm7{%k7}
212 {store} vmovupd %xmm0, %xmm7{%k7}
213 vmovsd %xmm0, %xmm1, %xmm7
214 {load} vmovsd %xmm0, %xmm1, %xmm7
215 {store} vmovsd %xmm0, %xmm1, %xmm7
216 vmovsd %xmm0, %xmm1, %xmm7{%k7}
217 {load} vmovsd %xmm0, %xmm1, %xmm7{%k7}
218 {store} vmovsd %xmm0, %xmm1, %xmm7{%k7}
219 vmovdqa %xmm0, %xmm7
220 {load} vmovdqa %xmm0, %xmm7
221 {store} vmovdqa %xmm0, %xmm7
222 vmovdqa32 %zmm0, %zmm7
223 {load} vmovdqa32 %zmm0, %zmm7
224 {store} vmovdqa32 %zmm0, %zmm7
225 vmovdqa32 %xmm0, %xmm7
226 {load} vmovdqa32 %xmm0, %xmm7
227 {store} vmovdqa32 %xmm0, %xmm7
228 vmovdqa64 %zmm0, %zmm7
229 {load} vmovdqa64 %zmm0, %zmm7
230 {store} vmovdqa64 %zmm0, %zmm7
231 vmovdqa64 %xmm0, %xmm7
232 {load} vmovdqa64 %xmm0, %xmm7
233 {store} vmovdqa64 %xmm0, %xmm7
234 vmovdqu %xmm0, %xmm7
235 {load} vmovdqu %xmm0, %xmm7
236 {store} vmovdqu %xmm0, %xmm7
237 vmovdqu8 %zmm0, %zmm7
238 {load} vmovdqu8 %zmm0, %zmm7
239 {store} vmovdqu8 %zmm0, %zmm7
240 vmovdqu8 %xmm0, %xmm7
241 {load} vmovdqu8 %xmm0, %xmm7
242 {store} vmovdqu8 %zmm0, %zmm7
243 vmovdqu16 %zmm0, %zmm7
244 {load} vmovdqu16 %zmm0, %zmm7
245 {store} vmovdqu16 %zmm0, %zmm7
246 vmovdqu16 %xmm0, %xmm7
247 {load} vmovdqu16 %xmm0, %xmm7
248 {store} vmovdqu16 %xmm0, %xmm7
249 vmovdqu32 %zmm0, %zmm7
250 {load} vmovdqu32 %zmm0, %zmm7
251 {store} vmovdqu32 %zmm0, %zmm7
252 vmovdqu32 %xmm0, %xmm7
253 {load} vmovdqu32 %xmm0, %xmm7
254 {store} vmovdqu32 %xmm0, %xmm7
255 vmovdqu64 %zmm0, %zmm7
256 {load} vmovdqu64 %zmm0, %zmm7
257 {store} vmovdqu64 %zmm0, %zmm7
258 vmovdqu64 %xmm0, %xmm7
259 {load} vmovdqu64 %xmm0, %xmm7
260 {store} vmovdqu64 %xmm0, %xmm7
261 vmovq %xmm0, %xmm7
262 {load} vmovq %xmm0, %xmm7
263 {store} vmovq %xmm0, %xmm7
264 {evex} vmovq %xmm0, %xmm7
265 {load} {evex} vmovq %xmm0, %xmm7
266 {store} {evex} vmovq %xmm0, %xmm7
267
268 pextrw $0, %xmm0, %edi
269 {load} pextrw $0, %xmm0, %edi
270 {store} pextrw $0, %xmm0, %edi
271
272 vpextrw $0, %xmm0, %edi
273 {load} vpextrw $0, %xmm0, %edi
274 {store} vpextrw $0, %xmm0, %edi
275
276 {evex} vpextrw $0, %xmm0, %edi
277 {load} {evex} vpextrw $0, %xmm0, %edi
278 {store} {evex} vpextrw $0, %xmm0, %edi
279
280 bndmov %bnd3, %bnd0
281 {load} bndmov %bnd3, %bnd0
282 {store} bndmov %bnd3, %bnd0
283
284 movaps (%eax),%xmm2
285 {load} movaps (%eax),%xmm2
286 {store} movaps (%eax),%xmm2
287 {disp8} movaps (%eax),%xmm2
288 {disp32} movaps (%eax),%xmm2
289 movaps -1(%eax),%xmm2
290 {disp8} movaps -1(%eax),%xmm2
291 {disp32} movaps -1(%eax),%xmm2
292 movaps 128(%eax),%xmm2
293 {disp8} movaps 128(%eax),%xmm2
294 {disp32} movaps 128(%eax),%xmm2
295
296 .intel_syntax noprefix
297 {vex3} vmovaps xmm2,xmm7
298 {vex3} {load} vmovaps xmm2,xmm7
299 {vex3} {store} vmovaps xmm2,xmm7
300 vmovaps xmm2,xmm7
301 {vex2} vmovaps xmm2,xmm7
302 {vex2} {load} vmovaps xmm2,xmm7
303 {vex2} {store} vmovaps xmm2,xmm7
304 {vex3} vmovaps xmm2,XMMWORD PTR [eax]
305 vmovaps xmm2,XMMWORD PTR [eax]
306 {vex2} vmovaps xmm2,XMMWORD PTR [eax]
307 {evex} vmovaps xmm2,XMMWORD PTR [eax]
308 {disp32} vmovaps xmm2,XMMWORD PTR [eax]
309 {evex} {disp8} vmovaps xmm2,XMMWORD PTR [eax]
310 {evex} {disp32} vmovaps xmm2,XMMWORD PTR [eax]
311 mov eax,ecx
312 {load} mov eax,ecx
313 {store} mov eax,ecx
314 movaps xmm2,XMMWORD PTR [eax]
315 {load} movaps xmm2,XMMWORD PTR [eax]
316 {store} movaps xmm2,XMMWORD PTR [eax]
317 {disp8} movaps xmm2,XMMWORD PTR [eax]
318 {disp32} movaps xmm2,XMMWORD PTR [eax]
319 movaps xmm2,XMMWORD PTR [eax-1]
320 {disp8} movaps xmm2,XMMWORD PTR [eax-1]
321 {disp32} movaps xmm2,XMMWORD PTR [eax-1]
322 movaps xmm2,XMMWORD PTR [eax+128]
323 {disp8} movaps xmm2,XMMWORD PTR [eax+128]
324 {disp32} movaps xmm2,XMMWORD PTR [eax+128]
This page took 0.037517 seconds and 4 git commands to generate.