AVX512: Implemented encoding and intrinsics for vdbpsadbw
[oota-llvm.git] / test / MC / X86 / x86-32-fma3.s
1 // RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
2
3 // CHECK: vfmadd132pd  %xmm2, %xmm5, %xmm1
4 // CHECK: encoding: [0xc4,0xe2,0xd1,0x98,0xca]
5           vfmadd132pd  %xmm2, %xmm5, %xmm1
6
7 // CHECK: vfmadd132pd  (%eax), %xmm5, %xmm1
8 // CHECK: encoding: [0xc4,0xe2,0xd1,0x98,0x08]
9           vfmadd132pd  (%eax), %xmm5, %xmm1
10
11 // CHECK: vfmadd132ps  %xmm2, %xmm5, %xmm1
12 // CHECK: encoding: [0xc4,0xe2,0x51,0x98,0xca]
13           vfmadd132ps  %xmm2, %xmm5, %xmm1
14
15 // CHECK: vfmadd132ps  (%eax), %xmm5, %xmm1
16 // CHECK: encoding: [0xc4,0xe2,0x51,0x98,0x08]
17           vfmadd132ps  (%eax), %xmm5, %xmm1
18
19 // CHECK: vfmadd213pd  %xmm2, %xmm5, %xmm1
20 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa8,0xca]
21           vfmadd213pd  %xmm2, %xmm5, %xmm1
22
23 // CHECK: vfmadd213pd  (%eax), %xmm5, %xmm1
24 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa8,0x08]
25           vfmadd213pd  (%eax), %xmm5, %xmm1
26
27 // CHECK: vfmadd213ps  %xmm2, %xmm5, %xmm1
28 // CHECK: encoding: [0xc4,0xe2,0x51,0xa8,0xca]
29           vfmadd213ps  %xmm2, %xmm5, %xmm1
30
31 // CHECK: vfmadd213ps  (%eax), %xmm5, %xmm1
32 // CHECK: encoding: [0xc4,0xe2,0x51,0xa8,0x08]
33           vfmadd213ps  (%eax), %xmm5, %xmm1
34
35 // CHECK: vfmadd231pd  %xmm2, %xmm5, %xmm1
36 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb8,0xca]
37           vfmadd231pd  %xmm2, %xmm5, %xmm1
38
39 // CHECK: vfmadd231pd  (%eax), %xmm5, %xmm1
40 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb8,0x08]
41           vfmadd231pd  (%eax), %xmm5, %xmm1
42
43 // CHECK: vfmadd231ps  %xmm2, %xmm5, %xmm1
44 // CHECK: encoding: [0xc4,0xe2,0x51,0xb8,0xca]
45           vfmadd231ps  %xmm2, %xmm5, %xmm1
46
47 // CHECK: vfmadd231ps  (%eax), %xmm5, %xmm1
48 // CHECK: encoding: [0xc4,0xe2,0x51,0xb8,0x08]
49           vfmadd231ps  (%eax), %xmm5, %xmm1
50
51 // CHECK: vfmadd132pd  %ymm2, %ymm5, %ymm1
52 // CHECK: encoding: [0xc4,0xe2,0xd5,0x98,0xca]
53           vfmadd132pd  %ymm2, %ymm5, %ymm1
54
55 // CHECK: vfmadd132pd  (%eax), %ymm5, %ymm1
56 // CHECK: encoding: [0xc4,0xe2,0xd5,0x98,0x08]
57           vfmadd132pd  (%eax), %ymm5, %ymm1
58
59 // CHECK: vfmadd132ps  %ymm2, %ymm5, %ymm1
60 // CHECK: encoding: [0xc4,0xe2,0x55,0x98,0xca]
61           vfmadd132ps  %ymm2, %ymm5, %ymm1
62
63 // CHECK: vfmadd132ps  (%eax), %ymm5, %ymm1
64 // CHECK: encoding: [0xc4,0xe2,0x55,0x98,0x08]
65           vfmadd132ps  (%eax), %ymm5, %ymm1
66
67 // CHECK: vfmadd213pd  %ymm2, %ymm5, %ymm1
68 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa8,0xca]
69           vfmadd213pd  %ymm2, %ymm5, %ymm1
70
71 // CHECK: vfmadd213pd  (%eax), %ymm5, %ymm1
72 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa8,0x08]
73           vfmadd213pd  (%eax), %ymm5, %ymm1
74
75 // CHECK: vfmadd213ps  %ymm2, %ymm5, %ymm1
76 // CHECK: encoding: [0xc4,0xe2,0x55,0xa8,0xca]
77           vfmadd213ps  %ymm2, %ymm5, %ymm1
78
79 // CHECK: vfmadd213ps  (%eax), %ymm5, %ymm1
80 // CHECK: encoding: [0xc4,0xe2,0x55,0xa8,0x08]
81           vfmadd213ps  (%eax), %ymm5, %ymm1
82
83 // CHECK: vfmadd231pd  %ymm2, %ymm5, %ymm1
84 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb8,0xca]
85           vfmadd231pd  %ymm2, %ymm5, %ymm1
86
87 // CHECK: vfmadd231pd  (%eax), %ymm5, %ymm1
88 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb8,0x08]
89           vfmadd231pd  (%eax), %ymm5, %ymm1
90
91 // CHECK: vfmadd231ps  %ymm2, %ymm5, %ymm1
92 // CHECK: encoding: [0xc4,0xe2,0x55,0xb8,0xca]
93           vfmadd231ps  %ymm2, %ymm5, %ymm1
94
95 // CHECK: vfmadd231ps  (%eax), %ymm5, %ymm1
96 // CHECK: encoding: [0xc4,0xe2,0x55,0xb8,0x08]
97           vfmadd231ps  (%eax), %ymm5, %ymm1
98
99 // CHECK: vfmadd132pd  %xmm2, %xmm5, %xmm1
100 // CHECK: encoding: [0xc4,0xe2,0xd1,0x98,0xca]
101           vfmadd132pd  %xmm2, %xmm5, %xmm1
102
103 // CHECK: vfmadd132pd  (%eax), %xmm5, %xmm1
104 // CHECK: encoding: [0xc4,0xe2,0xd1,0x98,0x08]
105           vfmadd132pd  (%eax), %xmm5, %xmm1
106
107 // CHECK: vfmadd132ps  %xmm2, %xmm5, %xmm1
108 // CHECK: encoding: [0xc4,0xe2,0x51,0x98,0xca]
109           vfmadd132ps  %xmm2, %xmm5, %xmm1
110
111 // CHECK: vfmadd132ps  (%eax), %xmm5, %xmm1
112 // CHECK: encoding: [0xc4,0xe2,0x51,0x98,0x08]
113           vfmadd132ps  (%eax), %xmm5, %xmm1
114
115 // CHECK: vfmadd213pd  %xmm2, %xmm5, %xmm1
116 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa8,0xca]
117           vfmadd213pd  %xmm2, %xmm5, %xmm1
118
119 // CHECK: vfmadd213pd  (%eax), %xmm5, %xmm1
120 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa8,0x08]
121           vfmadd213pd  (%eax), %xmm5, %xmm1
122
123 // CHECK: vfmadd213ps  %xmm2, %xmm5, %xmm1
124 // CHECK: encoding: [0xc4,0xe2,0x51,0xa8,0xca]
125           vfmadd213ps  %xmm2, %xmm5, %xmm1
126
127 // CHECK: vfmadd213ps  (%eax), %xmm5, %xmm1
128 // CHECK: encoding: [0xc4,0xe2,0x51,0xa8,0x08]
129           vfmadd213ps  (%eax), %xmm5, %xmm1
130
131 // CHECK: vfmadd231pd  %xmm2, %xmm5, %xmm1
132 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb8,0xca]
133           vfmadd231pd  %xmm2, %xmm5, %xmm1
134
135 // CHECK: vfmadd231pd  (%eax), %xmm5, %xmm1
136 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb8,0x08]
137           vfmadd231pd  (%eax), %xmm5, %xmm1
138
139 // CHECK: vfmadd231ps  %xmm2, %xmm5, %xmm1
140 // CHECK: encoding: [0xc4,0xe2,0x51,0xb8,0xca]
141           vfmadd231ps  %xmm2, %xmm5, %xmm1
142
143 // CHECK: vfmadd231ps  (%eax), %xmm5, %xmm1
144 // CHECK: encoding: [0xc4,0xe2,0x51,0xb8,0x08]
145           vfmadd231ps  (%eax), %xmm5, %xmm1
146
147 // CHECK: vfmaddsub132pd  %xmm2, %xmm5, %xmm1
148 // CHECK: encoding: [0xc4,0xe2,0xd1,0x96,0xca]
149           vfmaddsub132pd  %xmm2, %xmm5, %xmm1
150
151 // CHECK: vfmaddsub132pd  (%eax), %xmm5, %xmm1
152 // CHECK: encoding: [0xc4,0xe2,0xd1,0x96,0x08]
153           vfmaddsub132pd  (%eax), %xmm5, %xmm1
154
155 // CHECK: vfmaddsub132ps  %xmm2, %xmm5, %xmm1
156 // CHECK: encoding: [0xc4,0xe2,0x51,0x96,0xca]
157           vfmaddsub132ps  %xmm2, %xmm5, %xmm1
158
159 // CHECK: vfmaddsub132ps  (%eax), %xmm5, %xmm1
160 // CHECK: encoding: [0xc4,0xe2,0x51,0x96,0x08]
161           vfmaddsub132ps  (%eax), %xmm5, %xmm1
162
163 // CHECK: vfmaddsub213pd  %xmm2, %xmm5, %xmm1
164 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa6,0xca]
165           vfmaddsub213pd  %xmm2, %xmm5, %xmm1
166
167 // CHECK: vfmaddsub213pd  (%eax), %xmm5, %xmm1
168 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa6,0x08]
169           vfmaddsub213pd  (%eax), %xmm5, %xmm1
170
171 // CHECK: vfmaddsub213ps  %xmm2, %xmm5, %xmm1
172 // CHECK: encoding: [0xc4,0xe2,0x51,0xa6,0xca]
173           vfmaddsub213ps  %xmm2, %xmm5, %xmm1
174
175 // CHECK: vfmaddsub213ps  (%eax), %xmm5, %xmm1
176 // CHECK: encoding: [0xc4,0xe2,0x51,0xa6,0x08]
177           vfmaddsub213ps  (%eax), %xmm5, %xmm1
178
179 // CHECK: vfmaddsub231pd  %xmm2, %xmm5, %xmm1
180 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb6,0xca]
181           vfmaddsub231pd  %xmm2, %xmm5, %xmm1
182
183 // CHECK: vfmaddsub231pd  (%eax), %xmm5, %xmm1
184 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb6,0x08]
185           vfmaddsub231pd  (%eax), %xmm5, %xmm1
186
187 // CHECK: vfmaddsub231ps  %xmm2, %xmm5, %xmm1
188 // CHECK: encoding: [0xc4,0xe2,0x51,0xb6,0xca]
189           vfmaddsub231ps  %xmm2, %xmm5, %xmm1
190
191 // CHECK: vfmaddsub231ps  (%eax), %xmm5, %xmm1
192 // CHECK: encoding: [0xc4,0xe2,0x51,0xb6,0x08]
193           vfmaddsub231ps  (%eax), %xmm5, %xmm1
194
195 // CHECK: vfmsubadd132pd  %xmm2, %xmm5, %xmm1
196 // CHECK: encoding: [0xc4,0xe2,0xd1,0x97,0xca]
197           vfmsubadd132pd  %xmm2, %xmm5, %xmm1
198
199 // CHECK: vfmsubadd132pd  (%eax), %xmm5, %xmm1
200 // CHECK: encoding: [0xc4,0xe2,0xd1,0x97,0x08]
201           vfmsubadd132pd  (%eax), %xmm5, %xmm1
202
203 // CHECK: vfmsubadd132ps  %xmm2, %xmm5, %xmm1
204 // CHECK: encoding: [0xc4,0xe2,0x51,0x97,0xca]
205           vfmsubadd132ps  %xmm2, %xmm5, %xmm1
206
207 // CHECK: vfmsubadd132ps  (%eax), %xmm5, %xmm1
208 // CHECK: encoding: [0xc4,0xe2,0x51,0x97,0x08]
209           vfmsubadd132ps  (%eax), %xmm5, %xmm1
210
211 // CHECK: vfmsubadd213pd  %xmm2, %xmm5, %xmm1
212 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa7,0xca]
213           vfmsubadd213pd  %xmm2, %xmm5, %xmm1
214
215 // CHECK: vfmsubadd213pd  (%eax), %xmm5, %xmm1
216 // CHECK: encoding: [0xc4,0xe2,0xd1,0xa7,0x08]
217           vfmsubadd213pd  (%eax), %xmm5, %xmm1
218
219 // CHECK: vfmsubadd213ps  %xmm2, %xmm5, %xmm1
220 // CHECK: encoding: [0xc4,0xe2,0x51,0xa7,0xca]
221           vfmsubadd213ps  %xmm2, %xmm5, %xmm1
222
223 // CHECK: vfmsubadd213ps  (%eax), %xmm5, %xmm1
224 // CHECK: encoding: [0xc4,0xe2,0x51,0xa7,0x08]
225           vfmsubadd213ps  (%eax), %xmm5, %xmm1
226
227 // CHECK: vfmsubadd231pd  %xmm2, %xmm5, %xmm1
228 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb7,0xca]
229           vfmsubadd231pd  %xmm2, %xmm5, %xmm1
230
231 // CHECK: vfmsubadd231pd  (%eax), %xmm5, %xmm1
232 // CHECK: encoding: [0xc4,0xe2,0xd1,0xb7,0x08]
233           vfmsubadd231pd  (%eax), %xmm5, %xmm1
234
235 // CHECK: vfmsubadd231ps  %xmm2, %xmm5, %xmm1
236 // CHECK: encoding: [0xc4,0xe2,0x51,0xb7,0xca]
237           vfmsubadd231ps  %xmm2, %xmm5, %xmm1
238
239 // CHECK: vfmsubadd231ps  (%eax), %xmm5, %xmm1
240 // CHECK: encoding: [0xc4,0xe2,0x51,0xb7,0x08]
241           vfmsubadd231ps  (%eax), %xmm5, %xmm1
242
243 // CHECK: vfmsub132pd  %xmm2, %xmm5, %xmm1
244 // CHECK: encoding: [0xc4,0xe2,0xd1,0x9a,0xca]
245           vfmsub132pd  %xmm2, %xmm5, %xmm1
246
247 // CHECK: vfmsub132pd  (%eax), %xmm5, %xmm1
248 // CHECK: encoding: [0xc4,0xe2,0xd1,0x9a,0x08]
249           vfmsub132pd  (%eax), %xmm5, %xmm1
250
251 // CHECK: vfmsub132ps  %xmm2, %xmm5, %xmm1
252 // CHECK: encoding: [0xc4,0xe2,0x51,0x9a,0xca]
253           vfmsub132ps  %xmm2, %xmm5, %xmm1
254
255 // CHECK: vfmsub132ps  (%eax), %xmm5, %xmm1
256 // CHECK: encoding: [0xc4,0xe2,0x51,0x9a,0x08]
257           vfmsub132ps  (%eax), %xmm5, %xmm1
258
259 // CHECK: vfmsub213pd  %xmm2, %xmm5, %xmm1
260 // CHECK: encoding: [0xc4,0xe2,0xd1,0xaa,0xca]
261           vfmsub213pd  %xmm2, %xmm5, %xmm1
262
263 // CHECK: vfmsub213pd  (%eax), %xmm5, %xmm1
264 // CHECK: encoding: [0xc4,0xe2,0xd1,0xaa,0x08]
265           vfmsub213pd  (%eax), %xmm5, %xmm1
266
267 // CHECK: vfmsub213ps  %xmm2, %xmm5, %xmm1
268 // CHECK: encoding: [0xc4,0xe2,0x51,0xaa,0xca]
269           vfmsub213ps  %xmm2, %xmm5, %xmm1
270
271 // CHECK: vfmsub213ps  (%eax), %xmm5, %xmm1
272 // CHECK: encoding: [0xc4,0xe2,0x51,0xaa,0x08]
273           vfmsub213ps  (%eax), %xmm5, %xmm1
274
275 // CHECK: vfmsub231pd  %xmm2, %xmm5, %xmm1
276 // CHECK: encoding: [0xc4,0xe2,0xd1,0xba,0xca]
277           vfmsub231pd  %xmm2, %xmm5, %xmm1
278
279 // CHECK: vfmsub231pd  (%eax), %xmm5, %xmm1
280 // CHECK: encoding: [0xc4,0xe2,0xd1,0xba,0x08]
281           vfmsub231pd  (%eax), %xmm5, %xmm1
282
283 // CHECK: vfmsub231ps  %xmm2, %xmm5, %xmm1
284 // CHECK: encoding: [0xc4,0xe2,0x51,0xba,0xca]
285           vfmsub231ps  %xmm2, %xmm5, %xmm1
286
287 // CHECK: vfmsub231ps  (%eax), %xmm5, %xmm1
288 // CHECK: encoding: [0xc4,0xe2,0x51,0xba,0x08]
289           vfmsub231ps  (%eax), %xmm5, %xmm1
290
291 // CHECK: vfnmadd132pd  %xmm2, %xmm5, %xmm1
292 // CHECK: encoding: [0xc4,0xe2,0xd1,0x9c,0xca]
293           vfnmadd132pd  %xmm2, %xmm5, %xmm1
294
295 // CHECK: vfnmadd132pd  (%eax), %xmm5, %xmm1
296 // CHECK: encoding: [0xc4,0xe2,0xd1,0x9c,0x08]
297           vfnmadd132pd  (%eax), %xmm5, %xmm1
298
299 // CHECK: vfnmadd132ps  %xmm2, %xmm5, %xmm1
300 // CHECK: encoding: [0xc4,0xe2,0x51,0x9c,0xca]
301           vfnmadd132ps  %xmm2, %xmm5, %xmm1
302
303 // CHECK: vfnmadd132ps  (%eax), %xmm5, %xmm1
304 // CHECK: encoding: [0xc4,0xe2,0x51,0x9c,0x08]
305           vfnmadd132ps  (%eax), %xmm5, %xmm1
306
307 // CHECK: vfnmadd213pd  %xmm2, %xmm5, %xmm1
308 // CHECK: encoding: [0xc4,0xe2,0xd1,0xac,0xca]
309           vfnmadd213pd  %xmm2, %xmm5, %xmm1
310
311 // CHECK: vfnmadd213pd  (%eax), %xmm5, %xmm1
312 // CHECK: encoding: [0xc4,0xe2,0xd1,0xac,0x08]
313           vfnmadd213pd  (%eax), %xmm5, %xmm1
314
315 // CHECK: vfnmadd213ps  %xmm2, %xmm5, %xmm1
316 // CHECK: encoding: [0xc4,0xe2,0x51,0xac,0xca]
317           vfnmadd213ps  %xmm2, %xmm5, %xmm1
318
319 // CHECK: vfnmadd213ps  (%eax), %xmm5, %xmm1
320 // CHECK: encoding: [0xc4,0xe2,0x51,0xac,0x08]
321           vfnmadd213ps  (%eax), %xmm5, %xmm1
322
323 // CHECK: vfnmadd231pd  %xmm2, %xmm5, %xmm1
324 // CHECK: encoding: [0xc4,0xe2,0xd1,0xbc,0xca]
325           vfnmadd231pd  %xmm2, %xmm5, %xmm1
326
327 // CHECK: vfnmadd231pd  (%eax), %xmm5, %xmm1
328 // CHECK: encoding: [0xc4,0xe2,0xd1,0xbc,0x08]
329           vfnmadd231pd  (%eax), %xmm5, %xmm1
330
331 // CHECK: vfnmadd231ps  %xmm2, %xmm5, %xmm1
332 // CHECK: encoding: [0xc4,0xe2,0x51,0xbc,0xca]
333           vfnmadd231ps  %xmm2, %xmm5, %xmm1
334
335 // CHECK: vfnmadd231ps  (%eax), %xmm5, %xmm1
336 // CHECK: encoding: [0xc4,0xe2,0x51,0xbc,0x08]
337           vfnmadd231ps  (%eax), %xmm5, %xmm1
338
339 // CHECK: vfnmsub132pd  %xmm2, %xmm5, %xmm1
340 // CHECK: encoding: [0xc4,0xe2,0xd1,0x9e,0xca]
341           vfnmsub132pd  %xmm2, %xmm5, %xmm1
342
343 // CHECK: vfnmsub132pd  (%eax), %xmm5, %xmm1
344 // CHECK: encoding: [0xc4,0xe2,0xd1,0x9e,0x08]
345           vfnmsub132pd  (%eax), %xmm5, %xmm1
346
347 // CHECK: vfnmsub132ps  %xmm2, %xmm5, %xmm1
348 // CHECK: encoding: [0xc4,0xe2,0x51,0x9e,0xca]
349           vfnmsub132ps  %xmm2, %xmm5, %xmm1
350
351 // CHECK: vfnmsub132ps  (%eax), %xmm5, %xmm1
352 // CHECK: encoding: [0xc4,0xe2,0x51,0x9e,0x08]
353           vfnmsub132ps  (%eax), %xmm5, %xmm1
354
355 // CHECK: vfnmsub213pd  %xmm2, %xmm5, %xmm1
356 // CHECK: encoding: [0xc4,0xe2,0xd1,0xae,0xca]
357           vfnmsub213pd  %xmm2, %xmm5, %xmm1
358
359 // CHECK: vfnmsub213pd  (%eax), %xmm5, %xmm1
360 // CHECK: encoding: [0xc4,0xe2,0xd1,0xae,0x08]
361           vfnmsub213pd  (%eax), %xmm5, %xmm1
362
363 // CHECK: vfnmsub213ps  %xmm2, %xmm5, %xmm1
364 // CHECK: encoding: [0xc4,0xe2,0x51,0xae,0xca]
365           vfnmsub213ps  %xmm2, %xmm5, %xmm1
366
367 // CHECK: vfnmsub213ps  (%eax), %xmm5, %xmm1
368 // CHECK: encoding: [0xc4,0xe2,0x51,0xae,0x08]
369           vfnmsub213ps  (%eax), %xmm5, %xmm1
370
371 // CHECK: vfnmsub231pd  %xmm2, %xmm5, %xmm1
372 // CHECK: encoding: [0xc4,0xe2,0xd1,0xbe,0xca]
373           vfnmsub231pd  %xmm2, %xmm5, %xmm1
374
375 // CHECK: vfnmsub231pd  (%eax), %xmm5, %xmm1
376 // CHECK: encoding: [0xc4,0xe2,0xd1,0xbe,0x08]
377           vfnmsub231pd  (%eax), %xmm5, %xmm1
378
379 // CHECK: vfnmsub231ps  %xmm2, %xmm5, %xmm1
380 // CHECK: encoding: [0xc4,0xe2,0x51,0xbe,0xca]
381           vfnmsub231ps  %xmm2, %xmm5, %xmm1
382
383 // CHECK: vfnmsub231ps  (%eax), %xmm5, %xmm1
384 // CHECK: encoding: [0xc4,0xe2,0x51,0xbe,0x08]
385           vfnmsub231ps  (%eax), %xmm5, %xmm1
386
387 // CHECK: vfmadd132pd  %ymm2, %ymm5, %ymm1
388 // CHECK: encoding: [0xc4,0xe2,0xd5,0x98,0xca]
389           vfmadd132pd  %ymm2, %ymm5, %ymm1
390
391 // CHECK: vfmadd132pd  (%eax), %ymm5, %ymm1
392 // CHECK: encoding: [0xc4,0xe2,0xd5,0x98,0x08]
393           vfmadd132pd  (%eax), %ymm5, %ymm1
394
395 // CHECK: vfmadd132ps  %ymm2, %ymm5, %ymm1
396 // CHECK: encoding: [0xc4,0xe2,0x55,0x98,0xca]
397           vfmadd132ps  %ymm2, %ymm5, %ymm1
398
399 // CHECK: vfmadd132ps  (%eax), %ymm5, %ymm1
400 // CHECK: encoding: [0xc4,0xe2,0x55,0x98,0x08]
401           vfmadd132ps  (%eax), %ymm5, %ymm1
402
403 // CHECK: vfmadd213pd  %ymm2, %ymm5, %ymm1
404 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa8,0xca]
405           vfmadd213pd  %ymm2, %ymm5, %ymm1
406
407 // CHECK: vfmadd213pd  (%eax), %ymm5, %ymm1
408 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa8,0x08]
409           vfmadd213pd  (%eax), %ymm5, %ymm1
410
411 // CHECK: vfmadd213ps  %ymm2, %ymm5, %ymm1
412 // CHECK: encoding: [0xc4,0xe2,0x55,0xa8,0xca]
413           vfmadd213ps  %ymm2, %ymm5, %ymm1
414
415 // CHECK: vfmadd213ps  (%eax), %ymm5, %ymm1
416 // CHECK: encoding: [0xc4,0xe2,0x55,0xa8,0x08]
417           vfmadd213ps  (%eax), %ymm5, %ymm1
418
419 // CHECK: vfmadd231pd  %ymm2, %ymm5, %ymm1
420 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb8,0xca]
421           vfmadd231pd  %ymm2, %ymm5, %ymm1
422
423 // CHECK: vfmadd231pd  (%eax), %ymm5, %ymm1
424 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb8,0x08]
425           vfmadd231pd  (%eax), %ymm5, %ymm1
426
427 // CHECK: vfmadd231ps  %ymm2, %ymm5, %ymm1
428 // CHECK: encoding: [0xc4,0xe2,0x55,0xb8,0xca]
429           vfmadd231ps  %ymm2, %ymm5, %ymm1
430
431 // CHECK: vfmadd231ps  (%eax), %ymm5, %ymm1
432 // CHECK: encoding: [0xc4,0xe2,0x55,0xb8,0x08]
433           vfmadd231ps  (%eax), %ymm5, %ymm1
434
435 // CHECK: vfmaddsub132pd  %ymm2, %ymm5, %ymm1
436 // CHECK: encoding: [0xc4,0xe2,0xd5,0x96,0xca]
437           vfmaddsub132pd  %ymm2, %ymm5, %ymm1
438
439 // CHECK: vfmaddsub132pd  (%eax), %ymm5, %ymm1
440 // CHECK: encoding: [0xc4,0xe2,0xd5,0x96,0x08]
441           vfmaddsub132pd  (%eax), %ymm5, %ymm1
442
443 // CHECK: vfmaddsub132ps  %ymm2, %ymm5, %ymm1
444 // CHECK: encoding: [0xc4,0xe2,0x55,0x96,0xca]
445           vfmaddsub132ps  %ymm2, %ymm5, %ymm1
446
447 // CHECK: vfmaddsub132ps  (%eax), %ymm5, %ymm1
448 // CHECK: encoding: [0xc4,0xe2,0x55,0x96,0x08]
449           vfmaddsub132ps  (%eax), %ymm5, %ymm1
450
451 // CHECK: vfmaddsub213pd  %ymm2, %ymm5, %ymm1
452 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa6,0xca]
453           vfmaddsub213pd  %ymm2, %ymm5, %ymm1
454
455 // CHECK: vfmaddsub213pd  (%eax), %ymm5, %ymm1
456 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa6,0x08]
457           vfmaddsub213pd  (%eax), %ymm5, %ymm1
458
459 // CHECK: vfmaddsub213ps  %ymm2, %ymm5, %ymm1
460 // CHECK: encoding: [0xc4,0xe2,0x55,0xa6,0xca]
461           vfmaddsub213ps  %ymm2, %ymm5, %ymm1
462
463 // CHECK: vfmaddsub213ps  (%eax), %ymm5, %ymm1
464 // CHECK: encoding: [0xc4,0xe2,0x55,0xa6,0x08]
465           vfmaddsub213ps  (%eax), %ymm5, %ymm1
466
467 // CHECK: vfmaddsub231pd  %ymm2, %ymm5, %ymm1
468 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb6,0xca]
469           vfmaddsub231pd  %ymm2, %ymm5, %ymm1
470
471 // CHECK: vfmaddsub231pd  (%eax), %ymm5, %ymm1
472 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb6,0x08]
473           vfmaddsub231pd  (%eax), %ymm5, %ymm1
474
475 // CHECK: vfmaddsub231ps  %ymm2, %ymm5, %ymm1
476 // CHECK: encoding: [0xc4,0xe2,0x55,0xb6,0xca]
477           vfmaddsub231ps  %ymm2, %ymm5, %ymm1
478
479 // CHECK: vfmaddsub231ps  (%eax), %ymm5, %ymm1
480 // CHECK: encoding: [0xc4,0xe2,0x55,0xb6,0x08]
481           vfmaddsub231ps  (%eax), %ymm5, %ymm1
482
483 // CHECK: vfmsubadd132pd  %ymm2, %ymm5, %ymm1
484 // CHECK: encoding: [0xc4,0xe2,0xd5,0x97,0xca]
485           vfmsubadd132pd  %ymm2, %ymm5, %ymm1
486
487 // CHECK: vfmsubadd132pd  (%eax), %ymm5, %ymm1
488 // CHECK: encoding: [0xc4,0xe2,0xd5,0x97,0x08]
489           vfmsubadd132pd  (%eax), %ymm5, %ymm1
490
491 // CHECK: vfmsubadd132ps  %ymm2, %ymm5, %ymm1
492 // CHECK: encoding: [0xc4,0xe2,0x55,0x97,0xca]
493           vfmsubadd132ps  %ymm2, %ymm5, %ymm1
494
495 // CHECK: vfmsubadd132ps  (%eax), %ymm5, %ymm1
496 // CHECK: encoding: [0xc4,0xe2,0x55,0x97,0x08]
497           vfmsubadd132ps  (%eax), %ymm5, %ymm1
498
499 // CHECK: vfmsubadd213pd  %ymm2, %ymm5, %ymm1
500 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa7,0xca]
501           vfmsubadd213pd  %ymm2, %ymm5, %ymm1
502
503 // CHECK: vfmsubadd213pd  (%eax), %ymm5, %ymm1
504 // CHECK: encoding: [0xc4,0xe2,0xd5,0xa7,0x08]
505           vfmsubadd213pd  (%eax), %ymm5, %ymm1
506
507 // CHECK: vfmsubadd213ps  %ymm2, %ymm5, %ymm1
508 // CHECK: encoding: [0xc4,0xe2,0x55,0xa7,0xca]
509           vfmsubadd213ps  %ymm2, %ymm5, %ymm1
510
511 // CHECK: vfmsubadd213ps  (%eax), %ymm5, %ymm1
512 // CHECK: encoding: [0xc4,0xe2,0x55,0xa7,0x08]
513           vfmsubadd213ps  (%eax), %ymm5, %ymm1
514
515 // CHECK: vfmsubadd231pd  %ymm2, %ymm5, %ymm1
516 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb7,0xca]
517           vfmsubadd231pd  %ymm2, %ymm5, %ymm1
518
519 // CHECK: vfmsubadd231pd  (%eax), %ymm5, %ymm1
520 // CHECK: encoding: [0xc4,0xe2,0xd5,0xb7,0x08]
521           vfmsubadd231pd  (%eax), %ymm5, %ymm1
522
523 // CHECK: vfmsubadd231ps  %ymm2, %ymm5, %ymm1
524 // CHECK: encoding: [0xc4,0xe2,0x55,0xb7,0xca]
525           vfmsubadd231ps  %ymm2, %ymm5, %ymm1
526
527 // CHECK: vfmsubadd231ps  (%eax), %ymm5, %ymm1
528 // CHECK: encoding: [0xc4,0xe2,0x55,0xb7,0x08]
529           vfmsubadd231ps  (%eax), %ymm5, %ymm1
530
531 // CHECK: vfmsub132pd  %ymm2, %ymm5, %ymm1
532 // CHECK: encoding: [0xc4,0xe2,0xd5,0x9a,0xca]
533           vfmsub132pd  %ymm2, %ymm5, %ymm1
534
535 // CHECK: vfmsub132pd  (%eax), %ymm5, %ymm1
536 // CHECK: encoding: [0xc4,0xe2,0xd5,0x9a,0x08]
537           vfmsub132pd  (%eax), %ymm5, %ymm1
538
539 // CHECK: vfmsub132ps  %ymm2, %ymm5, %ymm1
540 // CHECK: encoding: [0xc4,0xe2,0x55,0x9a,0xca]
541           vfmsub132ps  %ymm2, %ymm5, %ymm1
542
543 // CHECK: vfmsub132ps  (%eax), %ymm5, %ymm1
544 // CHECK: encoding: [0xc4,0xe2,0x55,0x9a,0x08]
545           vfmsub132ps  (%eax), %ymm5, %ymm1
546
547 // CHECK: vfmsub213pd  %ymm2, %ymm5, %ymm1
548 // CHECK: encoding: [0xc4,0xe2,0xd5,0xaa,0xca]
549           vfmsub213pd  %ymm2, %ymm5, %ymm1
550
551 // CHECK: vfmsub213pd  (%eax), %ymm5, %ymm1
552 // CHECK: encoding: [0xc4,0xe2,0xd5,0xaa,0x08]
553           vfmsub213pd  (%eax), %ymm5, %ymm1
554
555 // CHECK: vfmsub213ps  %ymm2, %ymm5, %ymm1
556 // CHECK: encoding: [0xc4,0xe2,0x55,0xaa,0xca]
557           vfmsub213ps  %ymm2, %ymm5, %ymm1
558
559 // CHECK: vfmsub213ps  (%eax), %ymm5, %ymm1
560 // CHECK: encoding: [0xc4,0xe2,0x55,0xaa,0x08]
561           vfmsub213ps  (%eax), %ymm5, %ymm1
562
563 // CHECK: vfmsub231pd  %ymm2, %ymm5, %ymm1
564 // CHECK: encoding: [0xc4,0xe2,0xd5,0xba,0xca]
565           vfmsub231pd  %ymm2, %ymm5, %ymm1
566
567 // CHECK: vfmsub231pd  (%eax), %ymm5, %ymm1
568 // CHECK: encoding: [0xc4,0xe2,0xd5,0xba,0x08]
569           vfmsub231pd  (%eax), %ymm5, %ymm1
570
571 // CHECK: vfmsub231ps  %ymm2, %ymm5, %ymm1
572 // CHECK: encoding: [0xc4,0xe2,0x55,0xba,0xca]
573           vfmsub231ps  %ymm2, %ymm5, %ymm1
574
575 // CHECK: vfmsub231ps  (%eax), %ymm5, %ymm1
576 // CHECK: encoding: [0xc4,0xe2,0x55,0xba,0x08]
577           vfmsub231ps  (%eax), %ymm5, %ymm1
578
579 // CHECK: vfnmadd132pd  %ymm2, %ymm5, %ymm1
580 // CHECK: encoding: [0xc4,0xe2,0xd5,0x9c,0xca]
581           vfnmadd132pd  %ymm2, %ymm5, %ymm1
582
583 // CHECK: vfnmadd132pd  (%eax), %ymm5, %ymm1
584 // CHECK: encoding: [0xc4,0xe2,0xd5,0x9c,0x08]
585           vfnmadd132pd  (%eax), %ymm5, %ymm1
586
587 // CHECK: vfnmadd132ps  %ymm2, %ymm5, %ymm1
588 // CHECK: encoding: [0xc4,0xe2,0x55,0x9c,0xca]
589           vfnmadd132ps  %ymm2, %ymm5, %ymm1
590
591 // CHECK: vfnmadd132ps  (%eax), %ymm5, %ymm1
592 // CHECK: encoding: [0xc4,0xe2,0x55,0x9c,0x08]
593           vfnmadd132ps  (%eax), %ymm5, %ymm1
594
595 // CHECK: vfnmadd213pd  %ymm2, %ymm5, %ymm1
596 // CHECK: encoding: [0xc4,0xe2,0xd5,0xac,0xca]
597           vfnmadd213pd  %ymm2, %ymm5, %ymm1
598
599 // CHECK: vfnmadd213pd  (%eax), %ymm5, %ymm1
600 // CHECK: encoding: [0xc4,0xe2,0xd5,0xac,0x08]
601           vfnmadd213pd  (%eax), %ymm5, %ymm1
602
603 // CHECK: vfnmadd213ps  %ymm2, %ymm5, %ymm1
604 // CHECK: encoding: [0xc4,0xe2,0x55,0xac,0xca]
605           vfnmadd213ps  %ymm2, %ymm5, %ymm1
606
607 // CHECK: vfnmadd213ps  (%eax), %ymm5, %ymm1
608 // CHECK: encoding: [0xc4,0xe2,0x55,0xac,0x08]
609           vfnmadd213ps  (%eax), %ymm5, %ymm1
610
611 // CHECK: vfnmadd231pd  %ymm2, %ymm5, %ymm1
612 // CHECK: encoding: [0xc4,0xe2,0xd5,0xbc,0xca]
613           vfnmadd231pd  %ymm2, %ymm5, %ymm1
614
615 // CHECK: vfnmadd231pd  (%eax), %ymm5, %ymm1
616 // CHECK: encoding: [0xc4,0xe2,0xd5,0xbc,0x08]
617           vfnmadd231pd  (%eax), %ymm5, %ymm1
618
619 // CHECK: vfnmadd231ps  %ymm2, %ymm5, %ymm1
620 // CHECK: encoding: [0xc4,0xe2,0x55,0xbc,0xca]
621           vfnmadd231ps  %ymm2, %ymm5, %ymm1
622
623 // CHECK: vfnmadd231ps  (%eax), %ymm5, %ymm1
624 // CHECK: encoding: [0xc4,0xe2,0x55,0xbc,0x08]
625           vfnmadd231ps  (%eax), %ymm5, %ymm1
626
627 // CHECK: vfnmsub132pd  %ymm2, %ymm5, %ymm1
628 // CHECK: encoding: [0xc4,0xe2,0xd5,0x9e,0xca]
629           vfnmsub132pd  %ymm2, %ymm5, %ymm1
630
631 // CHECK: vfnmsub132pd  (%eax), %ymm5, %ymm1
632 // CHECK: encoding: [0xc4,0xe2,0xd5,0x9e,0x08]
633           vfnmsub132pd  (%eax), %ymm5, %ymm1
634
635 // CHECK: vfnmsub132ps  %ymm2, %ymm5, %ymm1
636 // CHECK: encoding: [0xc4,0xe2,0x55,0x9e,0xca]
637           vfnmsub132ps  %ymm2, %ymm5, %ymm1
638
639 // CHECK: vfnmsub132ps  (%eax), %ymm5, %ymm1
640 // CHECK: encoding: [0xc4,0xe2,0x55,0x9e,0x08]
641           vfnmsub132ps  (%eax), %ymm5, %ymm1
642
643 // CHECK: vfnmsub213pd  %ymm2, %ymm5, %ymm1
644 // CHECK: encoding: [0xc4,0xe2,0xd5,0xae,0xca]
645           vfnmsub213pd  %ymm2, %ymm5, %ymm1
646
647 // CHECK: vfnmsub213pd  (%eax), %ymm5, %ymm1
648 // CHECK: encoding: [0xc4,0xe2,0xd5,0xae,0x08]
649           vfnmsub213pd  (%eax), %ymm5, %ymm1
650
651 // CHECK: vfnmsub213ps  %ymm2, %ymm5, %ymm1
652 // CHECK: encoding: [0xc4,0xe2,0x55,0xae,0xca]
653           vfnmsub213ps  %ymm2, %ymm5, %ymm1
654
655 // CHECK: vfnmsub213ps  (%eax), %ymm5, %ymm1
656 // CHECK: encoding: [0xc4,0xe2,0x55,0xae,0x08]
657           vfnmsub213ps  (%eax), %ymm5, %ymm1
658
659 // CHECK: vfnmsub231pd  %ymm2, %ymm5, %ymm1
660 // CHECK: encoding: [0xc4,0xe2,0xd5,0xbe,0xca]
661           vfnmsub231pd  %ymm2, %ymm5, %ymm1
662
663 // CHECK: vfnmsub231pd  (%eax), %ymm5, %ymm1
664 // CHECK: encoding: [0xc4,0xe2,0xd5,0xbe,0x08]
665           vfnmsub231pd  (%eax), %ymm5, %ymm1
666
667 // CHECK: vfnmsub231ps  %ymm2, %ymm5, %ymm1
668 // CHECK: encoding: [0xc4,0xe2,0x55,0xbe,0xca]
669           vfnmsub231ps  %ymm2, %ymm5, %ymm1
670
671 // CHECK: vfnmsub231ps  (%eax), %ymm5, %ymm1
672 // CHECK: encoding: [0xc4,0xe2,0x55,0xbe,0x08]
673           vfnmsub231ps  (%eax), %ymm5, %ymm1
674