Commit | Line | Data |
---|---|---|
b6169b20 L |
1 | # Check instructions with encoding options |
2 | ||
3 | .allow_index_reg | |
4 | .text | |
5 | _start: | |
6 | ||
7 | # Tests for op reg, reg | |
c7532693 L |
8 | add %dl,%cl |
9 | add.s %dl,%cl | |
10 | add %dx,%cx | |
11 | add.s %dx,%cx | |
12 | add %edx,%ecx | |
13 | add.s %edx,%ecx | |
14 | addb %dl,%cl | |
15 | addb.s %dl,%cl | |
16 | addw %dx,%cx | |
17 | addw.s %dx,%cx | |
18 | addl %edx,%ecx | |
19 | addl.s %edx,%ecx | |
20 | adc %dl,%cl | |
21 | adc.s %dl,%cl | |
22 | adc %dx,%cx | |
23 | adc.s %dx,%cx | |
24 | adc %edx,%ecx | |
25 | adc.s %edx,%ecx | |
26 | adcb %dl,%cl | |
27 | adcb.s %dl,%cl | |
28 | adcw %dx,%cx | |
29 | adcw.s %dx,%cx | |
30 | adcl %edx,%ecx | |
31 | adcl.s %edx,%ecx | |
32 | and %dl,%cl | |
33 | and.s %dl,%cl | |
34 | and %dx,%cx | |
35 | and.s %dx,%cx | |
36 | and %edx,%ecx | |
37 | and.s %edx,%ecx | |
38 | andb %dl,%cl | |
39 | andb.s %dl,%cl | |
40 | andw %dx,%cx | |
41 | andw.s %dx,%cx | |
42 | andl %edx,%ecx | |
43 | andl.s %edx,%ecx | |
44 | cmp %dl,%cl | |
45 | cmp.s %dl,%cl | |
46 | cmp %dx,%cx | |
47 | cmp.s %dx,%cx | |
48 | cmp %edx,%ecx | |
49 | cmp.s %edx,%ecx | |
50 | cmpb %dl,%cl | |
51 | cmpb.s %dl,%cl | |
52 | cmpw %dx,%cx | |
53 | cmpw.s %dx,%cx | |
54 | cmpl %edx,%ecx | |
55 | cmpl.s %edx,%ecx | |
b6169b20 L |
56 | mov %dl,%cl |
57 | mov.s %dl,%cl | |
58 | mov %dx,%cx | |
59 | mov.s %dx,%cx | |
60 | mov %edx,%ecx | |
61 | mov.s %edx,%ecx | |
62 | movb %dl,%cl | |
63 | movb.s %dl,%cl | |
64 | movw %dx,%cx | |
65 | movw.s %dx,%cx | |
66 | movl %edx,%ecx | |
67 | movl.s %edx,%ecx | |
c7532693 L |
68 | or %dl,%cl |
69 | or.s %dl,%cl | |
70 | or %dx,%cx | |
71 | or.s %dx,%cx | |
72 | or %edx,%ecx | |
73 | or.s %edx,%ecx | |
74 | orb %dl,%cl | |
75 | orb.s %dl,%cl | |
76 | orw %dx,%cx | |
77 | orw.s %dx,%cx | |
78 | orl %edx,%ecx | |
79 | orl.s %edx,%ecx | |
80 | sbb %dl,%cl | |
81 | sbb.s %dl,%cl | |
82 | sbb %dx,%cx | |
83 | sbb.s %dx,%cx | |
84 | sbb %edx,%ecx | |
85 | sbb.s %edx,%ecx | |
86 | sbbb %dl,%cl | |
87 | sbbb.s %dl,%cl | |
88 | sbbw %dx,%cx | |
89 | sbbw.s %dx,%cx | |
90 | sbbl %edx,%ecx | |
91 | sbbl.s %edx,%ecx | |
92 | sub %dl,%cl | |
93 | sub.s %dl,%cl | |
94 | sub %dx,%cx | |
95 | sub.s %dx,%cx | |
96 | sub %edx,%ecx | |
97 | sub.s %edx,%ecx | |
98 | subb %dl,%cl | |
99 | subb.s %dl,%cl | |
100 | subw %dx,%cx | |
101 | subw.s %dx,%cx | |
102 | subl %edx,%ecx | |
103 | subl.s %edx,%ecx | |
104 | xor %dl,%cl | |
105 | xor.s %dl,%cl | |
106 | xor %dx,%cx | |
107 | xor.s %dx,%cx | |
108 | xor %edx,%ecx | |
109 | xor.s %edx,%ecx | |
110 | xorb %dl,%cl | |
111 | xorb.s %dl,%cl | |
112 | xorw %dx,%cx | |
113 | xorw.s %dx,%cx | |
114 | xorl %edx,%ecx | |
115 | xorl.s %edx,%ecx | |
b6169b20 L |
116 | |
117 | # Tests for op ymm, ymm | |
118 | vmovapd %ymm4,%ymm6 | |
119 | vmovapd.s %ymm4,%ymm6 | |
120 | vmovaps %ymm4,%ymm6 | |
121 | vmovaps.s %ymm4,%ymm6 | |
122 | vmovdqa %ymm4,%ymm6 | |
123 | vmovdqa.s %ymm4,%ymm6 | |
124 | vmovdqu %ymm4,%ymm6 | |
125 | vmovdqu.s %ymm4,%ymm6 | |
126 | vmovupd %ymm4,%ymm6 | |
127 | vmovupd.s %ymm4,%ymm6 | |
128 | vmovups %ymm4,%ymm6 | |
129 | vmovups.s %ymm4,%ymm6 | |
130 | ||
131 | # Tests for op xmm, xmm | |
132 | movapd %xmm4,%xmm6 | |
133 | movapd.s %xmm4,%xmm6 | |
134 | movaps %xmm4,%xmm6 | |
135 | movaps.s %xmm4,%xmm6 | |
136 | movdqa %xmm4,%xmm6 | |
137 | movdqa.s %xmm4,%xmm6 | |
138 | movdqu %xmm4,%xmm6 | |
139 | movdqu.s %xmm4,%xmm6 | |
140 | movq %xmm4,%xmm6 | |
141 | movq.s %xmm4,%xmm6 | |
fa99fab2 L |
142 | movsd %xmm4,%xmm6 |
143 | movsd.s %xmm4,%xmm6 | |
144 | movss %xmm4,%xmm6 | |
145 | movss.s %xmm4,%xmm6 | |
b6169b20 L |
146 | movupd %xmm4,%xmm6 |
147 | movupd.s %xmm4,%xmm6 | |
148 | movups %xmm4,%xmm6 | |
149 | movups.s %xmm4,%xmm6 | |
150 | vmovapd %xmm4,%xmm6 | |
151 | vmovapd.s %xmm4,%xmm6 | |
152 | vmovaps %xmm4,%xmm6 | |
153 | vmovaps.s %xmm4,%xmm6 | |
154 | vmovdqa %xmm4,%xmm6 | |
155 | vmovdqa.s %xmm4,%xmm6 | |
156 | vmovdqu %xmm4,%xmm6 | |
157 | vmovdqu.s %xmm4,%xmm6 | |
158 | vmovq %xmm4,%xmm6 | |
159 | vmovq.s %xmm4,%xmm6 | |
160 | vmovupd %xmm4,%xmm6 | |
161 | vmovupd.s %xmm4,%xmm6 | |
162 | vmovups %xmm4,%xmm6 | |
163 | vmovups.s %xmm4,%xmm6 | |
164 | ||
fa99fab2 L |
165 | # Tests for op xmm, xmm, xmm |
166 | vmovsd %xmm4,%xmm6,%xmm2 | |
167 | vmovsd.s %xmm4,%xmm6,%xmm2 | |
168 | vmovss %xmm4,%xmm6,%xmm2 | |
169 | vmovss.s %xmm4,%xmm6,%xmm2 | |
170 | ||
b6169b20 L |
171 | # Tests for op mm, mm |
172 | movq %mm0,%mm4 | |
173 | movq.s %mm0,%mm4 | |
174 | ||
175 | .intel_syntax noprefix | |
176 | ||
177 | # Tests for op reg, reg | |
c7532693 L |
178 | add cl,dl |
179 | add.s cl,dl | |
180 | add cx,dx | |
181 | add.s cx,dx | |
182 | add ecx,edx | |
183 | add.s ecx,edx | |
184 | adc cl,dl | |
185 | adc.s cl,dl | |
186 | adc cx,dx | |
187 | adc.s cx,dx | |
188 | adc ecx,edx | |
189 | adc.s ecx,edx | |
190 | and cl,dl | |
191 | and.s cl,dl | |
192 | and cx,dx | |
193 | and.s cx,dx | |
194 | and ecx,edx | |
195 | and.s ecx,edx | |
196 | cmp cl,dl | |
197 | cmp.s cl,dl | |
198 | cmp cx,dx | |
199 | cmp.s cx,dx | |
200 | cmp ecx,edx | |
201 | cmp.s ecx,edx | |
b6169b20 L |
202 | mov cl,dl |
203 | mov.s cl,dl | |
204 | mov cx,dx | |
205 | mov.s cx,dx | |
206 | mov ecx,edx | |
207 | mov.s ecx,edx | |
c7532693 L |
208 | or cl,dl |
209 | or.s cl,dl | |
210 | or cx,dx | |
211 | or.s cx,dx | |
212 | or ecx,edx | |
213 | or.s ecx,edx | |
214 | sbb cl,dl | |
215 | sbb.s cl,dl | |
216 | sbb cx,dx | |
217 | sbb.s cx,dx | |
218 | sbb ecx,edx | |
219 | sbb.s ecx,edx | |
220 | sub cl,dl | |
221 | sub.s cl,dl | |
222 | sub cx,dx | |
223 | sub.s cx,dx | |
224 | sub ecx,edx | |
225 | sub.s ecx,edx | |
226 | xor cl,dl | |
227 | xor.s cl,dl | |
228 | xor cx,dx | |
229 | xor.s cx,dx | |
230 | xor ecx,edx | |
231 | xor.s ecx,edx | |
b6169b20 L |
232 | |
233 | # Tests for op ymm, ymm | |
234 | vmovapd ymm6,ymm4 | |
235 | vmovapd.s ymm6,ymm4 | |
236 | vmovaps ymm6,ymm4 | |
237 | vmovaps.s ymm6,ymm4 | |
238 | vmovdqa ymm6,ymm4 | |
239 | vmovdqa.s ymm6,ymm4 | |
240 | vmovdqu ymm6,ymm4 | |
241 | vmovdqu.s ymm6,ymm4 | |
242 | vmovupd ymm6,ymm4 | |
243 | vmovupd.s ymm6,ymm4 | |
244 | vmovups ymm6,ymm4 | |
245 | vmovups.s ymm6,ymm4 | |
246 | ||
247 | # Tests for op xmm, xmm | |
248 | movapd xmm6,xmm4 | |
249 | movapd.s xmm6,xmm4 | |
250 | movaps xmm6,xmm4 | |
251 | movaps.s xmm6,xmm4 | |
252 | movdqa xmm6,xmm4 | |
253 | movdqa.s xmm6,xmm4 | |
254 | movdqu xmm6,xmm4 | |
255 | movdqu.s xmm6,xmm4 | |
256 | movq xmm6,xmm4 | |
257 | movq.s xmm6,xmm4 | |
fa99fab2 L |
258 | movsd xmm6,xmm4 |
259 | movsd.s xmm6,xmm4 | |
260 | movss xmm6,xmm4 | |
261 | movss.s xmm6,xmm4 | |
b6169b20 L |
262 | movupd xmm6,xmm4 |
263 | movupd.s xmm6,xmm4 | |
264 | movups xmm6,xmm4 | |
265 | movups.s xmm6,xmm4 | |
266 | vmovapd xmm6,xmm4 | |
267 | vmovapd.s xmm6,xmm4 | |
268 | vmovaps xmm6,xmm4 | |
269 | vmovaps.s xmm6,xmm4 | |
270 | vmovdqa xmm6,xmm4 | |
271 | vmovdqa.s xmm6,xmm4 | |
272 | vmovdqu xmm6,xmm4 | |
273 | vmovdqu.s xmm6,xmm4 | |
274 | vmovq xmm6,xmm4 | |
275 | vmovq.s xmm6,xmm4 | |
276 | vmovupd xmm6,xmm4 | |
277 | vmovupd.s xmm6,xmm4 | |
278 | vmovups xmm6,xmm4 | |
279 | vmovups.s xmm6,xmm4 | |
280 | ||
fa99fab2 L |
281 | # Tests for op xmm, xmm, xmm |
282 | vmovsd xmm2,xmm6,xmm4 | |
283 | vmovsd.s xmm2,xmm6,xmm4 | |
284 | vmovss xmm2,xmm6,xmm4 | |
285 | vmovss.s xmm2,xmm6,xmm4 | |
286 | ||
b6169b20 L |
287 | # Tests for op mm, mm |
288 | movq mm4,mm0 | |
289 | movq.s mm4,mm0 |