I Added a triple flag for x86-evenDirective test.
[oota-llvm.git] / test / MC / X86 / x86_64-avx-encoding.s
1 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
2
3 // CHECK: vaddss  %xmm8, %xmm9, %xmm10
4 // CHECK:  encoding: [0xc4,0x41,0x32,0x58,0xd0]
5 vaddss  %xmm8, %xmm9, %xmm10
6
7 // CHECK: vmulss  %xmm8, %xmm9, %xmm10
8 // CHECK:  encoding: [0xc4,0x41,0x32,0x59,0xd0]
9 vmulss  %xmm8, %xmm9, %xmm10
10
11 // CHECK: vsubss  %xmm8, %xmm9, %xmm10
12 // CHECK:  encoding: [0xc4,0x41,0x32,0x5c,0xd0]
13 vsubss  %xmm8, %xmm9, %xmm10
14
15 // CHECK: vdivss  %xmm8, %xmm9, %xmm10
16 // CHECK:  encoding: [0xc4,0x41,0x32,0x5e,0xd0]
17 vdivss  %xmm8, %xmm9, %xmm10
18
19 // CHECK: vaddsd  %xmm8, %xmm9, %xmm10
20 // CHECK:  encoding: [0xc4,0x41,0x33,0x58,0xd0]
21 vaddsd  %xmm8, %xmm9, %xmm10
22
23 // CHECK: vmulsd  %xmm8, %xmm9, %xmm10
24 // CHECK:  encoding: [0xc4,0x41,0x33,0x59,0xd0]
25 vmulsd  %xmm8, %xmm9, %xmm10
26
27 // CHECK: vsubsd  %xmm8, %xmm9, %xmm10
28 // CHECK:  encoding: [0xc4,0x41,0x33,0x5c,0xd0]
29 vsubsd  %xmm8, %xmm9, %xmm10
30
31 // CHECK: vdivsd  %xmm8, %xmm9, %xmm10
32 // CHECK:  encoding: [0xc4,0x41,0x33,0x5e,0xd0]
33 vdivsd  %xmm8, %xmm9, %xmm10
34
35 // CHECK:   vaddss  -4(%rcx,%rbx,8), %xmm10, %xmm11
36 // CHECK:   encoding: [0xc5,0x2a,0x58,0x5c,0xd9,0xfc]
37 vaddss  -4(%rcx,%rbx,8), %xmm10, %xmm11
38
39 // CHECK:   vsubss  -4(%rcx,%rbx,8), %xmm10, %xmm11
40 // CHECK:   encoding: [0xc5,0x2a,0x5c,0x5c,0xd9,0xfc]
41 vsubss  -4(%rcx,%rbx,8), %xmm10, %xmm11
42
43 // CHECK:   vmulss  -4(%rcx,%rbx,8), %xmm10, %xmm11
44 // CHECK:   encoding: [0xc5,0x2a,0x59,0x5c,0xd9,0xfc]
45 vmulss  -4(%rcx,%rbx,8), %xmm10, %xmm11
46
47 // CHECK:   vdivss  -4(%rcx,%rbx,8), %xmm10, %xmm11
48 // CHECK:   encoding: [0xc5,0x2a,0x5e,0x5c,0xd9,0xfc]
49 vdivss  -4(%rcx,%rbx,8), %xmm10, %xmm11
50
51 // CHECK:   vaddsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
52 // CHECK:   encoding: [0xc5,0x2b,0x58,0x5c,0xd9,0xfc]
53 vaddsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
54
55 // CHECK:   vsubsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
56 // CHECK:   encoding: [0xc5,0x2b,0x5c,0x5c,0xd9,0xfc]
57 vsubsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
58
59 // CHECK:   vmulsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
60 // CHECK:   encoding: [0xc5,0x2b,0x59,0x5c,0xd9,0xfc]
61 vmulsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
62
63 // CHECK:   vdivsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
64 // CHECK:   encoding: [0xc5,0x2b,0x5e,0x5c,0xd9,0xfc]
65 vdivsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
66
67 // CHECK: vaddps  %xmm10, %xmm11, %xmm15
68 // CHECK: encoding: [0xc4,0x41,0x20,0x58,0xfa]
69 vaddps  %xmm10, %xmm11, %xmm15
70
71 // CHECK: vsubps  %xmm10, %xmm11, %xmm15
72 // CHECK: encoding: [0xc4,0x41,0x20,0x5c,0xfa]
73 vsubps  %xmm10, %xmm11, %xmm15
74
75 // CHECK: vmulps  %xmm10, %xmm11, %xmm15
76 // CHECK: encoding: [0xc4,0x41,0x20,0x59,0xfa]
77 vmulps  %xmm10, %xmm11, %xmm15
78
79 // CHECK: vdivps  %xmm10, %xmm11, %xmm15
80 // CHECK: encoding: [0xc4,0x41,0x20,0x5e,0xfa]
81 vdivps  %xmm10, %xmm11, %xmm15
82
83 // CHECK: vaddpd  %xmm10, %xmm11, %xmm15
84 // CHECK: encoding: [0xc4,0x41,0x21,0x58,0xfa]
85 vaddpd  %xmm10, %xmm11, %xmm15
86
87 // CHECK: vsubpd  %xmm10, %xmm11, %xmm15
88 // CHECK: encoding: [0xc4,0x41,0x21,0x5c,0xfa]
89 vsubpd  %xmm10, %xmm11, %xmm15
90
91 // CHECK: vmulpd  %xmm10, %xmm11, %xmm15
92 // CHECK: encoding: [0xc4,0x41,0x21,0x59,0xfa]
93 vmulpd  %xmm10, %xmm11, %xmm15
94
95 // CHECK: vdivpd  %xmm10, %xmm11, %xmm15
96 // CHECK: encoding: [0xc4,0x41,0x21,0x5e,0xfa]
97 vdivpd  %xmm10, %xmm11, %xmm15
98
99 // CHECK: vaddps  -4(%rcx,%rbx,8), %xmm10, %xmm11
100 // CHECK: encoding: [0xc5,0x28,0x58,0x5c,0xd9,0xfc]
101 vaddps  -4(%rcx,%rbx,8), %xmm10, %xmm11
102
103 // CHECK: vsubps  -4(%rcx,%rbx,8), %xmm10, %xmm11
104 // CHECK: encoding: [0xc5,0x28,0x5c,0x5c,0xd9,0xfc]
105 vsubps  -4(%rcx,%rbx,8), %xmm10, %xmm11
106
107 // CHECK: vmulps  -4(%rcx,%rbx,8), %xmm10, %xmm11
108 // CHECK: encoding: [0xc5,0x28,0x59,0x5c,0xd9,0xfc]
109 vmulps  -4(%rcx,%rbx,8), %xmm10, %xmm11
110
111 // CHECK: vdivps  -4(%rcx,%rbx,8), %xmm10, %xmm11
112 // CHECK: encoding: [0xc5,0x28,0x5e,0x5c,0xd9,0xfc]
113 vdivps  -4(%rcx,%rbx,8), %xmm10, %xmm11
114
115 // CHECK: vaddpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
116 // CHECK: encoding: [0xc5,0x29,0x58,0x5c,0xd9,0xfc]
117 vaddpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
118
119 // CHECK: vsubpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
120 // CHECK: encoding: [0xc5,0x29,0x5c,0x5c,0xd9,0xfc]
121 vsubpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
122
123 // CHECK: vmulpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
124 // CHECK: encoding: [0xc5,0x29,0x59,0x5c,0xd9,0xfc]
125 vmulpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
126
127 // CHECK: vdivpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
128 // CHECK: encoding: [0xc5,0x29,0x5e,0x5c,0xd9,0xfc]
129 vdivpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
130
131 // CHECK: vmaxss  %xmm10, %xmm14, %xmm12
132 // CHECK: encoding: [0xc4,0x41,0x0a,0x5f,0xe2]
133           vmaxss  %xmm10, %xmm14, %xmm12
134
135 // CHECK: vmaxsd  %xmm10, %xmm14, %xmm12
136 // CHECK: encoding: [0xc4,0x41,0x0b,0x5f,0xe2]
137           vmaxsd  %xmm10, %xmm14, %xmm12
138
139 // CHECK: vminss  %xmm10, %xmm14, %xmm12
140 // CHECK: encoding: [0xc4,0x41,0x0a,0x5d,0xe2]
141           vminss  %xmm10, %xmm14, %xmm12
142
143 // CHECK: vminsd  %xmm10, %xmm14, %xmm12
144 // CHECK: encoding: [0xc4,0x41,0x0b,0x5d,0xe2]
145           vminsd  %xmm10, %xmm14, %xmm12
146
147 // CHECK: vmaxss  -4(%rbx,%rcx,8), %xmm12, %xmm10
148 // CHECK: encoding: [0xc5,0x1a,0x5f,0x54,0xcb,0xfc]
149           vmaxss  -4(%rbx,%rcx,8), %xmm12, %xmm10
150
151 // CHECK: vmaxsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
152 // CHECK: encoding: [0xc5,0x1b,0x5f,0x54,0xcb,0xfc]
153           vmaxsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
154
155 // CHECK: vminss  -4(%rbx,%rcx,8), %xmm12, %xmm10
156 // CHECK: encoding: [0xc5,0x1a,0x5d,0x54,0xcb,0xfc]
157           vminss  -4(%rbx,%rcx,8), %xmm12, %xmm10
158
159 // CHECK: vminsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
160 // CHECK: encoding: [0xc5,0x1b,0x5d,0x54,0xcb,0xfc]
161           vminsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
162
163 // CHECK: vmaxps  %xmm10, %xmm14, %xmm12
164 // CHECK: encoding: [0xc4,0x41,0x08,0x5f,0xe2]
165           vmaxps  %xmm10, %xmm14, %xmm12
166
167 // CHECK: vmaxpd  %xmm10, %xmm14, %xmm12
168 // CHECK: encoding: [0xc4,0x41,0x09,0x5f,0xe2]
169           vmaxpd  %xmm10, %xmm14, %xmm12
170
171 // CHECK: vminps  %xmm10, %xmm14, %xmm12
172 // CHECK: encoding: [0xc4,0x41,0x08,0x5d,0xe2]
173           vminps  %xmm10, %xmm14, %xmm12
174
175 // CHECK: vminpd  %xmm10, %xmm14, %xmm12
176 // CHECK: encoding: [0xc4,0x41,0x09,0x5d,0xe2]
177           vminpd  %xmm10, %xmm14, %xmm12
178
179 // CHECK: vmaxps  -4(%rbx,%rcx,8), %xmm12, %xmm10
180 // CHECK: encoding: [0xc5,0x18,0x5f,0x54,0xcb,0xfc]
181           vmaxps  -4(%rbx,%rcx,8), %xmm12, %xmm10
182
183 // CHECK: vmaxpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
184 // CHECK: encoding: [0xc5,0x19,0x5f,0x54,0xcb,0xfc]
185           vmaxpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
186
187 // CHECK: vminps  -4(%rbx,%rcx,8), %xmm12, %xmm10
188 // CHECK: encoding: [0xc5,0x18,0x5d,0x54,0xcb,0xfc]
189           vminps  -4(%rbx,%rcx,8), %xmm12, %xmm10
190
191 // CHECK: vminpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
192 // CHECK: encoding: [0xc5,0x19,0x5d,0x54,0xcb,0xfc]
193           vminpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
194
195 // CHECK: vandps  %xmm10, %xmm14, %xmm12
196 // CHECK: encoding: [0xc4,0x41,0x08,0x54,0xe2]
197           vandps  %xmm10, %xmm14, %xmm12
198
199 // CHECK: vandpd  %xmm10, %xmm14, %xmm12
200 // CHECK: encoding: [0xc4,0x41,0x09,0x54,0xe2]
201           vandpd  %xmm10, %xmm14, %xmm12
202
203 // CHECK: vandps  -4(%rbx,%rcx,8), %xmm12, %xmm10
204 // CHECK: encoding: [0xc5,0x18,0x54,0x54,0xcb,0xfc]
205           vandps  -4(%rbx,%rcx,8), %xmm12, %xmm10
206
207 // CHECK: vandpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
208 // CHECK: encoding: [0xc5,0x19,0x54,0x54,0xcb,0xfc]
209           vandpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
210
211 // CHECK: vorps  %xmm10, %xmm14, %xmm12
212 // CHECK: encoding: [0xc4,0x41,0x08,0x56,0xe2]
213           vorps  %xmm10, %xmm14, %xmm12
214
215 // CHECK: vorpd  %xmm10, %xmm14, %xmm12
216 // CHECK: encoding: [0xc4,0x41,0x09,0x56,0xe2]
217           vorpd  %xmm10, %xmm14, %xmm12
218
219 // CHECK: vorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
220 // CHECK: encoding: [0xc5,0x18,0x56,0x54,0xcb,0xfc]
221           vorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
222
223 // CHECK: vorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
224 // CHECK: encoding: [0xc5,0x19,0x56,0x54,0xcb,0xfc]
225           vorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
226
227 // CHECK: vxorps  %xmm10, %xmm14, %xmm12
228 // CHECK: encoding: [0xc4,0x41,0x08,0x57,0xe2]
229           vxorps  %xmm10, %xmm14, %xmm12
230
231 // CHECK: vxorpd  %xmm10, %xmm14, %xmm12
232 // CHECK: encoding: [0xc4,0x41,0x09,0x57,0xe2]
233           vxorpd  %xmm10, %xmm14, %xmm12
234
235 // CHECK: vxorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
236 // CHECK: encoding: [0xc5,0x18,0x57,0x54,0xcb,0xfc]
237           vxorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
238
239 // CHECK: vxorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
240 // CHECK: encoding: [0xc5,0x19,0x57,0x54,0xcb,0xfc]
241           vxorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
242
243 // CHECK: vandnps  %xmm10, %xmm14, %xmm12
244 // CHECK: encoding: [0xc4,0x41,0x08,0x55,0xe2]
245           vandnps  %xmm10, %xmm14, %xmm12
246
247 // CHECK: vandnpd  %xmm10, %xmm14, %xmm12
248 // CHECK: encoding: [0xc4,0x41,0x09,0x55,0xe2]
249           vandnpd  %xmm10, %xmm14, %xmm12
250
251 // CHECK: vandnps  -4(%rbx,%rcx,8), %xmm12, %xmm10
252 // CHECK: encoding: [0xc5,0x18,0x55,0x54,0xcb,0xfc]
253           vandnps  -4(%rbx,%rcx,8), %xmm12, %xmm10
254
255 // CHECK: vandnpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
256 // CHECK: encoding: [0xc5,0x19,0x55,0x54,0xcb,0xfc]
257           vandnpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
258
259 // CHECK: vmovss  -4(%rbx,%rcx,8), %xmm10
260 // CHECK: encoding: [0xc5,0x7a,0x10,0x54,0xcb,0xfc]
261           vmovss  -4(%rbx,%rcx,8), %xmm10
262
263 // CHECK: vmovss  %xmm14, %xmm10, %xmm15
264 // CHECK: encoding: [0xc4,0x41,0x2a,0x10,0xfe]
265           vmovss  %xmm14, %xmm10, %xmm15
266
267 // CHECK: vmovsd  -4(%rbx,%rcx,8), %xmm10
268 // CHECK: encoding: [0xc5,0x7b,0x10,0x54,0xcb,0xfc]
269           vmovsd  -4(%rbx,%rcx,8), %xmm10
270
271 // CHECK: vmovsd  %xmm14, %xmm10, %xmm15
272 // CHECK: encoding: [0xc4,0x41,0x2b,0x10,0xfe]
273           vmovsd  %xmm14, %xmm10, %xmm15
274
275 // CHECK: vunpckhps  %xmm15, %xmm12, %xmm13
276 // CHECK: encoding: [0xc4,0x41,0x18,0x15,0xef]
277           vunpckhps  %xmm15, %xmm12, %xmm13
278
279 // CHECK: vunpckhpd  %xmm15, %xmm12, %xmm13
280 // CHECK: encoding: [0xc4,0x41,0x19,0x15,0xef]
281           vunpckhpd  %xmm15, %xmm12, %xmm13
282
283 // CHECK: vunpcklps  %xmm15, %xmm12, %xmm13
284 // CHECK: encoding: [0xc4,0x41,0x18,0x14,0xef]
285           vunpcklps  %xmm15, %xmm12, %xmm13
286
287 // CHECK: vunpcklpd  %xmm15, %xmm12, %xmm13
288 // CHECK: encoding: [0xc4,0x41,0x19,0x14,0xef]
289           vunpcklpd  %xmm15, %xmm12, %xmm13
290
291 // CHECK: vunpckhps  -4(%rbx,%rcx,8), %xmm12, %xmm15
292 // CHECK: encoding: [0xc5,0x18,0x15,0x7c,0xcb,0xfc]
293           vunpckhps  -4(%rbx,%rcx,8), %xmm12, %xmm15
294
295 // CHECK: vunpckhpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
296 // CHECK: encoding: [0xc5,0x19,0x15,0x7c,0xcb,0xfc]
297           vunpckhpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
298
299 // CHECK: vunpcklps  -4(%rbx,%rcx,8), %xmm12, %xmm15
300 // CHECK: encoding: [0xc5,0x18,0x14,0x7c,0xcb,0xfc]
301           vunpcklps  -4(%rbx,%rcx,8), %xmm12, %xmm15
302
303 // CHECK: vunpcklpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
304 // CHECK: encoding: [0xc5,0x19,0x14,0x7c,0xcb,0xfc]
305           vunpcklpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
306
307 // CHECK: vcmpps  $0, %xmm10, %xmm12, %xmm15
308 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xfa,0x00]
309           vcmpps  $0, %xmm10, %xmm12, %xmm15
310
311 // CHECK: vcmpps  $0, (%rax), %xmm12, %xmm15
312 // CHECK: encoding: [0xc5,0x18,0xc2,0x38,0x00]
313           vcmpps  $0, (%rax), %xmm12, %xmm15
314
315 // CHECK: vcmpps  $7, %xmm10, %xmm12, %xmm15
316 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xfa,0x07]
317           vcmpps  $7, %xmm10, %xmm12, %xmm15
318
319 // CHECK: vcmppd  $0, %xmm10, %xmm12, %xmm15
320 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xfa,0x00]
321           vcmppd  $0, %xmm10, %xmm12, %xmm15
322
323 // CHECK: vcmppd  $0, (%rax), %xmm12, %xmm15
324 // CHECK: encoding: [0xc5,0x19,0xc2,0x38,0x00]
325           vcmppd  $0, (%rax), %xmm12, %xmm15
326
327 // CHECK: vcmppd  $7, %xmm10, %xmm12, %xmm15
328 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xfa,0x07]
329           vcmppd  $7, %xmm10, %xmm12, %xmm15
330
331 // CHECK: vshufps  $8, %xmm11, %xmm12, %xmm13
332 // CHECK: encoding: [0xc4,0x41,0x18,0xc6,0xeb,0x08]
333           vshufps  $8, %xmm11, %xmm12, %xmm13
334
335 // CHECK: vshufps  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
336 // CHECK: encoding: [0xc5,0x18,0xc6,0x6c,0xcb,0xfc,0x08]
337           vshufps  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
338
339 // CHECK: vshufpd  $8, %xmm11, %xmm12, %xmm13
340 // CHECK: encoding: [0xc4,0x41,0x19,0xc6,0xeb,0x08]
341           vshufpd  $8, %xmm11, %xmm12, %xmm13
342
343 // CHECK: vshufpd  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
344 // CHECK: encoding: [0xc5,0x19,0xc6,0x6c,0xcb,0xfc,0x08]
345           vshufpd  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
346
347 // CHECK: vcmpeqps  %xmm11, %xmm12, %xmm13
348 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x00]
349           vcmpeqps   %xmm11, %xmm12, %xmm13
350
351 // CHECK: vcmpleps  %xmm11, %xmm12, %xmm13
352 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x02]
353           vcmpleps   %xmm11, %xmm12, %xmm13
354
355 // CHECK: vcmpltps  %xmm11, %xmm12, %xmm13
356 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x01]
357           vcmpltps   %xmm11, %xmm12, %xmm13
358
359 // CHECK: vcmpneqps  %xmm11, %xmm12, %xmm13
360 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x04]
361           vcmpneqps   %xmm11, %xmm12, %xmm13
362
363 // CHECK: vcmpnleps  %xmm11, %xmm12, %xmm13
364 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x06]
365           vcmpnleps   %xmm11, %xmm12, %xmm13
366
367 // CHECK: vcmpnltps  %xmm11, %xmm12, %xmm13
368 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x05]
369           vcmpnltps   %xmm11, %xmm12, %xmm13
370
371 // CHECK: vcmpordps  %xmm11, %xmm12, %xmm13
372 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x07]
373           vcmpordps   %xmm11, %xmm12, %xmm13
374
375 // CHECK: vcmpunordps  %xmm11, %xmm12, %xmm13
376 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x03]
377           vcmpunordps   %xmm11, %xmm12, %xmm13
378
379 // CHECK: vcmpeqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
380 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x00]
381           vcmpeqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
382
383 // CHECK: vcmpleps  -4(%rbx,%rcx,8), %xmm12, %xmm13
384 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x02]
385           vcmpleps   -4(%rbx,%rcx,8), %xmm12, %xmm13
386
387 // CHECK: vcmpltps  -4(%rbx,%rcx,8), %xmm12, %xmm13
388 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x01]
389           vcmpltps   -4(%rbx,%rcx,8), %xmm12, %xmm13
390
391 // CHECK: vcmpneqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
392 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x04]
393           vcmpneqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
394
395 // CHECK: vcmpnleps  -4(%rbx,%rcx,8), %xmm12, %xmm13
396 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x06]
397           vcmpnleps   -4(%rbx,%rcx,8), %xmm12, %xmm13
398
399 // CHECK: vcmpnltps  -4(%rbx,%rcx,8), %xmm12, %xmm13
400 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x05]
401           vcmpnltps   -4(%rbx,%rcx,8), %xmm12, %xmm13
402
403 // CHECK: vcmpordps  -4(%rbx,%rcx,8), %xmm6, %xmm2
404 // CHECK: encoding: [0xc5,0xc8,0xc2,0x54,0xcb,0xfc,0x07]
405           vcmpordps   -4(%rbx,%rcx,8), %xmm6, %xmm2
406
407 // CHECK: vcmpunordps  -4(%rbx,%rcx,8), %xmm12, %xmm13
408 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x03]
409           vcmpunordps   -4(%rbx,%rcx,8), %xmm12, %xmm13
410
411 // CHECK: vcmpeqpd  %xmm11, %xmm12, %xmm13
412 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x00]
413           vcmpeqpd   %xmm11, %xmm12, %xmm13
414
415 // CHECK: vcmplepd  %xmm11, %xmm12, %xmm13
416 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x02]
417           vcmplepd   %xmm11, %xmm12, %xmm13
418
419 // CHECK: vcmpltpd  %xmm11, %xmm12, %xmm13
420 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x01]
421           vcmpltpd   %xmm11, %xmm12, %xmm13
422
423 // CHECK: vcmpneqpd  %xmm11, %xmm12, %xmm13
424 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x04]
425           vcmpneqpd   %xmm11, %xmm12, %xmm13
426
427 // CHECK: vcmpnlepd  %xmm11, %xmm12, %xmm13
428 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x06]
429           vcmpnlepd   %xmm11, %xmm12, %xmm13
430
431 // CHECK: vcmpnltpd  %xmm11, %xmm12, %xmm13
432 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x05]
433           vcmpnltpd   %xmm11, %xmm12, %xmm13
434
435 // CHECK: vcmpordpd  %xmm11, %xmm12, %xmm13
436 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x07]
437           vcmpordpd   %xmm11, %xmm12, %xmm13
438
439 // CHECK: vcmpunordpd  %xmm11, %xmm12, %xmm13
440 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x03]
441           vcmpunordpd   %xmm11, %xmm12, %xmm13
442
443 // CHECK: vcmpeqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
444 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x00]
445           vcmpeqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
446
447 // CHECK: vcmplepd  -4(%rbx,%rcx,8), %xmm12, %xmm13
448 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x02]
449           vcmplepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
450
451 // CHECK: vcmpltpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
452 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x01]
453           vcmpltpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
454
455 // CHECK: vcmpneqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
456 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x04]
457           vcmpneqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
458
459 // CHECK: vcmpnlepd  -4(%rbx,%rcx,8), %xmm12, %xmm13
460 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x06]
461           vcmpnlepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
462
463 // CHECK: vcmpnltpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
464 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x05]
465           vcmpnltpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
466
467 // CHECK: vcmpordpd  -4(%rbx,%rcx,8), %xmm6, %xmm2
468 // CHECK: encoding: [0xc5,0xc9,0xc2,0x54,0xcb,0xfc,0x07]
469           vcmpordpd   -4(%rbx,%rcx,8), %xmm6, %xmm2
470
471 // CHECK: vcmpunordpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
472 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x03]
473           vcmpunordpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
474
475 // CHECK: vcmpeqss  %xmm11, %xmm12, %xmm13
476 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x00]
477           vcmpeqss   %xmm11, %xmm12, %xmm13
478
479 // CHECK: vcmpless  %xmm11, %xmm12, %xmm13
480 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x02]
481           vcmpless   %xmm11, %xmm12, %xmm13
482
483 // CHECK: vcmpltss  %xmm11, %xmm12, %xmm13
484 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x01]
485           vcmpltss   %xmm11, %xmm12, %xmm13
486
487 // CHECK: vcmpneqss  %xmm11, %xmm12, %xmm13
488 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x04]
489           vcmpneqss   %xmm11, %xmm12, %xmm13
490
491 // CHECK: vcmpnless  %xmm11, %xmm12, %xmm13
492 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x06]
493           vcmpnless   %xmm11, %xmm12, %xmm13
494
495 // CHECK: vcmpnltss  %xmm11, %xmm12, %xmm13
496 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x05]
497           vcmpnltss   %xmm11, %xmm12, %xmm13
498
499 // CHECK: vcmpordss  %xmm11, %xmm12, %xmm13
500 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x07]
501           vcmpordss   %xmm11, %xmm12, %xmm13
502
503 // CHECK: vcmpunordss  %xmm11, %xmm12, %xmm13
504 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x03]
505           vcmpunordss   %xmm11, %xmm12, %xmm13
506
507 // CHECK: vcmpeqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
508 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x00]
509           vcmpeqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
510
511 // CHECK: vcmpless  -4(%rbx,%rcx,8), %xmm12, %xmm13
512 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x02]
513           vcmpless   -4(%rbx,%rcx,8), %xmm12, %xmm13
514
515 // CHECK: vcmpltss  -4(%rbx,%rcx,8), %xmm12, %xmm13
516 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x01]
517           vcmpltss   -4(%rbx,%rcx,8), %xmm12, %xmm13
518
519 // CHECK: vcmpneqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
520 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x04]
521           vcmpneqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
522
523 // CHECK: vcmpnless  -4(%rbx,%rcx,8), %xmm12, %xmm13
524 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x06]
525           vcmpnless   -4(%rbx,%rcx,8), %xmm12, %xmm13
526
527 // CHECK: vcmpnltss  -4(%rbx,%rcx,8), %xmm12, %xmm13
528 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x05]
529           vcmpnltss   -4(%rbx,%rcx,8), %xmm12, %xmm13
530
531 // CHECK: vcmpordss  -4(%rbx,%rcx,8), %xmm6, %xmm2
532 // CHECK: encoding: [0xc5,0xca,0xc2,0x54,0xcb,0xfc,0x07]
533           vcmpordss   -4(%rbx,%rcx,8), %xmm6, %xmm2
534
535 // CHECK: vcmpunordss  -4(%rbx,%rcx,8), %xmm12, %xmm13
536 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x03]
537           vcmpunordss   -4(%rbx,%rcx,8), %xmm12, %xmm13
538
539 // CHECK: vcmpeqsd  %xmm11, %xmm12, %xmm13
540 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x00]
541           vcmpeqsd   %xmm11, %xmm12, %xmm13
542
543 // CHECK: vcmplesd  %xmm11, %xmm12, %xmm13
544 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x02]
545           vcmplesd   %xmm11, %xmm12, %xmm13
546
547 // CHECK: vcmpltsd  %xmm11, %xmm12, %xmm13
548 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x01]
549           vcmpltsd   %xmm11, %xmm12, %xmm13
550
551 // CHECK: vcmpneqsd  %xmm11, %xmm12, %xmm13
552 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x04]
553           vcmpneqsd   %xmm11, %xmm12, %xmm13
554
555 // CHECK: vcmpnlesd  %xmm11, %xmm12, %xmm13
556 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x06]
557           vcmpnlesd   %xmm11, %xmm12, %xmm13
558
559 // CHECK: vcmpnltsd  %xmm11, %xmm12, %xmm13
560 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x05]
561           vcmpnltsd   %xmm11, %xmm12, %xmm13
562
563 // CHECK: vcmpordsd  %xmm11, %xmm12, %xmm13
564 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x07]
565           vcmpordsd   %xmm11, %xmm12, %xmm13
566
567 // CHECK: vcmpunordsd  %xmm11, %xmm12, %xmm13
568 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x03]
569           vcmpunordsd   %xmm11, %xmm12, %xmm13
570
571 // CHECK: vcmpeqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
572 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x00]
573           vcmpeqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
574
575 // CHECK: vcmplesd  -4(%rbx,%rcx,8), %xmm12, %xmm13
576 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x02]
577           vcmplesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
578
579 // CHECK: vcmpltsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
580 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x01]
581           vcmpltsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
582
583 // CHECK: vcmpneqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
584 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x04]
585           vcmpneqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
586
587 // CHECK: vcmpnlesd  -4(%rbx,%rcx,8), %xmm12, %xmm13
588 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x06]
589           vcmpnlesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
590
591 // CHECK: vcmpnltsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
592 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x05]
593           vcmpnltsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
594
595 // CHECK: vcmpordsd  -4(%rbx,%rcx,8), %xmm6, %xmm2
596 // CHECK: encoding: [0xc5,0xcb,0xc2,0x54,0xcb,0xfc,0x07]
597           vcmpordsd   -4(%rbx,%rcx,8), %xmm6, %xmm2
598
599 // CHECK: vcmpunordsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
600 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x03]
601           vcmpunordsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
602
603 // CHECK: vcmpeq_uqps  %xmm11, %xmm12, %xmm13
604 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x08]
605           vcmpeq_uqps   %xmm11, %xmm12, %xmm13
606
607 // CHECK: vcmpngeps  %xmm11, %xmm12, %xmm13
608 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x09]
609           vcmpngeps   %xmm11, %xmm12, %xmm13
610
611 // CHECK: vcmpngtps  %xmm11, %xmm12, %xmm13
612 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0a]
613           vcmpngtps   %xmm11, %xmm12, %xmm13
614
615 // CHECK: vcmpfalseps  %xmm11, %xmm12, %xmm13
616 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0b]
617           vcmpfalseps   %xmm11, %xmm12, %xmm13
618
619 // CHECK: vcmpneq_oqps  %xmm11, %xmm12, %xmm13
620 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0c]
621           vcmpneq_oqps   %xmm11, %xmm12, %xmm13
622
623 // CHECK: vcmpgeps  %xmm11, %xmm12, %xmm13
624 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0d]
625           vcmpgeps   %xmm11, %xmm12, %xmm13
626
627 // CHECK: vcmpgtps  %xmm11, %xmm12, %xmm13
628 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0e]
629           vcmpgtps   %xmm11, %xmm12, %xmm13
630
631 // CHECK: vcmptrueps  %xmm11, %xmm12, %xmm13
632 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0f]
633           vcmptrueps   %xmm11, %xmm12, %xmm13
634
635 // CHECK: vcmpeq_osps  %xmm11, %xmm12, %xmm13
636 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x10]
637           vcmpeq_osps   %xmm11, %xmm12, %xmm13
638
639 // CHECK: vcmplt_oqps  %xmm11, %xmm12, %xmm13
640 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x11]
641           vcmplt_oqps   %xmm11, %xmm12, %xmm13
642
643 // CHECK: vcmple_oqps  %xmm11, %xmm12, %xmm13
644 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x12]
645           vcmple_oqps   %xmm11, %xmm12, %xmm13
646
647 // CHECK: vcmpunord_sps  %xmm11, %xmm12, %xmm13
648 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x13]
649           vcmpunord_sps   %xmm11, %xmm12, %xmm13
650
651 // CHECK: vcmpneq_usps  %xmm11, %xmm12, %xmm13
652 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x14]
653           vcmpneq_usps   %xmm11, %xmm12, %xmm13
654
655 // CHECK: vcmpnlt_uqps  %xmm11, %xmm12, %xmm13
656 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x15]
657           vcmpnlt_uqps   %xmm11, %xmm12, %xmm13
658
659 // CHECK: vcmpnle_uqps  %xmm11, %xmm12, %xmm13
660 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x16]
661           vcmpnle_uqps   %xmm11, %xmm12, %xmm13
662
663 // CHECK: vcmpord_sps  %xmm11, %xmm12, %xmm13
664 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x17]
665           vcmpord_sps   %xmm11, %xmm12, %xmm13
666
667 // CHECK: vcmpeq_usps  %xmm11, %xmm12, %xmm13
668 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x18]
669           vcmpeq_usps   %xmm11, %xmm12, %xmm13
670
671 // CHECK: vcmpnge_uqps  %xmm11, %xmm12, %xmm13
672 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x19]
673           vcmpnge_uqps   %xmm11, %xmm12, %xmm13
674
675 // CHECK: vcmpngt_uqps  %xmm11, %xmm12, %xmm13
676 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1a]
677           vcmpngt_uqps   %xmm11, %xmm12, %xmm13
678
679 // CHECK: vcmpfalse_osps  %xmm11, %xmm12, %xmm13
680 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1b]
681           vcmpfalse_osps   %xmm11, %xmm12, %xmm13
682
683 // CHECK: vcmpneq_osps  %xmm11, %xmm12, %xmm13
684 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1c]
685           vcmpneq_osps   %xmm11, %xmm12, %xmm13
686
687 // CHECK: vcmpge_oqps  %xmm11, %xmm12, %xmm13
688 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1d]
689           vcmpge_oqps   %xmm11, %xmm12, %xmm13
690
691 // CHECK: vcmpgt_oqps  %xmm11, %xmm12, %xmm13
692 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1e]
693           vcmpgt_oqps   %xmm11, %xmm12, %xmm13
694
695 // CHECK: vcmptrue_usps  %xmm11, %xmm12, %xmm13
696 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1f]
697           vcmptrue_usps   %xmm11, %xmm12, %xmm13
698
699 // CHECK: vcmpeq_uqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
700 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x08]
701           vcmpeq_uqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
702
703 // CHECK: vcmpngeps  -4(%rbx,%rcx,8), %xmm12, %xmm13
704 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x09]
705           vcmpngeps   -4(%rbx,%rcx,8), %xmm12, %xmm13
706
707 // CHECK: vcmpngtps  -4(%rbx,%rcx,8), %xmm12, %xmm13
708 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x0a]
709           vcmpngtps   -4(%rbx,%rcx,8), %xmm12, %xmm13
710
711 // CHECK: vcmpfalseps  -4(%rbx,%rcx,8), %xmm12, %xmm13
712 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x0b]
713           vcmpfalseps   -4(%rbx,%rcx,8), %xmm12, %xmm13
714
715 // CHECK: vcmpneq_oqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
716 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x0c]
717           vcmpneq_oqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
718
719 // CHECK: vcmpgeps  -4(%rbx,%rcx,8), %xmm12, %xmm13
720 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x0d]
721           vcmpgeps   -4(%rbx,%rcx,8), %xmm12, %xmm13
722
723 // CHECK: vcmpgtps  -4(%rbx,%rcx,8), %xmm6, %xmm2
724 // CHECK: encoding: [0xc5,0xc8,0xc2,0x54,0xcb,0xfc,0x0e]
725           vcmpgtps   -4(%rbx,%rcx,8), %xmm6, %xmm2
726
727 // CHECK: vcmptrueps  -4(%rbx,%rcx,8), %xmm12, %xmm13
728 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x0f]
729           vcmptrueps   -4(%rbx,%rcx,8), %xmm12, %xmm13
730
731 // CHECK: vcmpeq_osps  -4(%rbx,%rcx,8), %xmm12, %xmm13
732 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x10]
733           vcmpeq_osps   -4(%rbx,%rcx,8), %xmm12, %xmm13
734
735 // CHECK: vcmplt_oqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
736 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x11]
737           vcmplt_oqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
738
739 // CHECK: vcmple_oqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
740 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x12]
741           vcmple_oqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
742
743 // CHECK: vcmpunord_sps  -4(%rbx,%rcx,8), %xmm12, %xmm13
744 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x13]
745           vcmpunord_sps   -4(%rbx,%rcx,8), %xmm12, %xmm13
746
747 // CHECK: vcmpneq_usps  -4(%rbx,%rcx,8), %xmm12, %xmm13
748 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x14]
749           vcmpneq_usps   -4(%rbx,%rcx,8), %xmm12, %xmm13
750
751 // CHECK: vcmpnlt_uqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
752 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x15]
753           vcmpnlt_uqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
754
755 // CHECK: vcmpnle_uqps  -4(%rbx,%rcx,8), %xmm6, %xmm2
756 // CHECK: encoding: [0xc5,0xc8,0xc2,0x54,0xcb,0xfc,0x16]
757           vcmpnle_uqps   -4(%rbx,%rcx,8), %xmm6, %xmm2
758
759 // CHECK: vcmpord_sps  -4(%rbx,%rcx,8), %xmm12, %xmm13
760 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x17]
761           vcmpord_sps   -4(%rbx,%rcx,8), %xmm12, %xmm13
762
763 // CHECK: vcmpeq_usps  -4(%rbx,%rcx,8), %xmm12, %xmm13
764 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x18]
765           vcmpeq_usps   -4(%rbx,%rcx,8), %xmm12, %xmm13
766
767 // CHECK: vcmpnge_uqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
768 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x19]
769           vcmpnge_uqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
770
771 // CHECK: vcmpngt_uqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
772 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x1a]
773           vcmpngt_uqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
774
775 // CHECK: vcmpfalse_osps  -4(%rbx,%rcx,8), %xmm12, %xmm13
776 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x1b]
777           vcmpfalse_osps   -4(%rbx,%rcx,8), %xmm12, %xmm13
778
779 // CHECK: vcmpneq_osps  -4(%rbx,%rcx,8), %xmm12, %xmm13
780 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x1c]
781           vcmpneq_osps   -4(%rbx,%rcx,8), %xmm12, %xmm13
782
783 // CHECK: vcmpge_oqps  -4(%rbx,%rcx,8), %xmm12, %xmm13
784 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x1d]
785           vcmpge_oqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
786
787 // CHECK: vcmpgt_oqps  -4(%rbx,%rcx,8), %xmm6, %xmm2
788 // CHECK: encoding: [0xc5,0xc8,0xc2,0x54,0xcb,0xfc,0x1e]
789           vcmpgt_oqps   -4(%rbx,%rcx,8), %xmm6, %xmm2
790
791 // CHECK: vcmptrue_usps  -4(%rbx,%rcx,8), %xmm12, %xmm13
792 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x1f]
793           vcmptrue_usps   -4(%rbx,%rcx,8), %xmm12, %xmm13
794
795 // CHECK: vcmpeq_uqpd  %xmm11, %xmm12, %xmm13
796 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x08]
797           vcmpeq_uqpd   %xmm11, %xmm12, %xmm13
798
799 // CHECK: vcmpngepd  %xmm11, %xmm12, %xmm13
800 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x09]
801           vcmpngepd   %xmm11, %xmm12, %xmm13
802
803 // CHECK: vcmpngtpd  %xmm11, %xmm12, %xmm13
804 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x0a]
805           vcmpngtpd   %xmm11, %xmm12, %xmm13
806
807 // CHECK: vcmpfalsepd  %xmm11, %xmm12, %xmm13
808 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x0b]
809           vcmpfalsepd   %xmm11, %xmm12, %xmm13
810
811 // CHECK: vcmpneq_oqpd  %xmm11, %xmm12, %xmm13
812 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x0c]
813           vcmpneq_oqpd   %xmm11, %xmm12, %xmm13
814
815 // CHECK: vcmpgepd  %xmm11, %xmm12, %xmm13
816 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x0d]
817           vcmpgepd   %xmm11, %xmm12, %xmm13
818
819 // CHECK: vcmpgtpd  %xmm11, %xmm12, %xmm13
820 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x0e]
821           vcmpgtpd   %xmm11, %xmm12, %xmm13
822
823 // CHECK: vcmptruepd  %xmm11, %xmm12, %xmm13
824 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x0f]
825           vcmptruepd   %xmm11, %xmm12, %xmm13
826
827 // CHECK: vcmpeq_ospd  %xmm11, %xmm12, %xmm13
828 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x10]
829           vcmpeq_ospd   %xmm11, %xmm12, %xmm13
830
831 // CHECK: vcmplt_oqpd  %xmm11, %xmm12, %xmm13
832 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x11]
833           vcmplt_oqpd   %xmm11, %xmm12, %xmm13
834
835 // CHECK: vcmple_oqpd  %xmm11, %xmm12, %xmm13
836 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x12]
837           vcmple_oqpd   %xmm11, %xmm12, %xmm13
838
839 // CHECK: vcmpunord_spd  %xmm11, %xmm12, %xmm13
840 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x13]
841           vcmpunord_spd   %xmm11, %xmm12, %xmm13
842
843 // CHECK: vcmpneq_uspd  %xmm11, %xmm12, %xmm13
844 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x14]
845           vcmpneq_uspd   %xmm11, %xmm12, %xmm13
846
847 // CHECK: vcmpnlt_uqpd  %xmm11, %xmm12, %xmm13
848 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x15]
849           vcmpnlt_uqpd   %xmm11, %xmm12, %xmm13
850
851 // CHECK: vcmpnle_uqpd  %xmm11, %xmm12, %xmm13
852 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x16]
853           vcmpnle_uqpd   %xmm11, %xmm12, %xmm13
854
855 // CHECK: vcmpord_spd  %xmm11, %xmm12, %xmm13
856 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x17]
857           vcmpord_spd   %xmm11, %xmm12, %xmm13
858
859 // CHECK: vcmpeq_uspd  %xmm11, %xmm12, %xmm13
860 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x18]
861           vcmpeq_uspd   %xmm11, %xmm12, %xmm13
862
863 // CHECK: vcmpnge_uqpd  %xmm11, %xmm12, %xmm13
864 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x19]
865           vcmpnge_uqpd   %xmm11, %xmm12, %xmm13
866
867 // CHECK: vcmpngt_uqpd  %xmm11, %xmm12, %xmm13
868 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x1a]
869           vcmpngt_uqpd   %xmm11, %xmm12, %xmm13
870
871 // CHECK: vcmpfalse_ospd  %xmm11, %xmm12, %xmm13
872 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x1b]
873           vcmpfalse_ospd   %xmm11, %xmm12, %xmm13
874
875 // CHECK: vcmpneq_ospd  %xmm11, %xmm12, %xmm13
876 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x1c]
877           vcmpneq_ospd   %xmm11, %xmm12, %xmm13
878
879 // CHECK: vcmpge_oqpd  %xmm11, %xmm12, %xmm13
880 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x1d]
881           vcmpge_oqpd   %xmm11, %xmm12, %xmm13
882
883 // CHECK: vcmpgt_oqpd  %xmm11, %xmm12, %xmm13
884 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x1e]
885           vcmpgt_oqpd   %xmm11, %xmm12, %xmm13
886
887 // CHECK: vcmptrue_uspd  %xmm11, %xmm12, %xmm13
888 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x1f]
889           vcmptrue_uspd   %xmm11, %xmm12, %xmm13
890
891 // CHECK: vcmpeq_uqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
892 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x08]
893           vcmpeq_uqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
894
895 // CHECK: vcmpngepd  -4(%rbx,%rcx,8), %xmm12, %xmm13
896 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x09]
897           vcmpngepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
898
899 // CHECK: vcmpngtpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
900 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x0a]
901           vcmpngtpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
902
903 // CHECK: vcmpfalsepd  -4(%rbx,%rcx,8), %xmm12, %xmm13
904 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x0b]
905           vcmpfalsepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
906
907 // CHECK: vcmpneq_oqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
908 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x0c]
909           vcmpneq_oqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
910
911 // CHECK: vcmpgepd  -4(%rbx,%rcx,8), %xmm12, %xmm13
912 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x0d]
913           vcmpgepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
914
915 // CHECK: vcmpgtpd  -4(%rbx,%rcx,8), %xmm6, %xmm2
916 // CHECK: encoding: [0xc5,0xc9,0xc2,0x54,0xcb,0xfc,0x0e]
917           vcmpgtpd   -4(%rbx,%rcx,8), %xmm6, %xmm2
918
919 // CHECK: vcmptruepd  -4(%rbx,%rcx,8), %xmm12, %xmm13
920 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x0f]
921           vcmptruepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
922
923 // CHECK: vcmpeq_ospd  -4(%rbx,%rcx,8), %xmm12, %xmm13
924 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x10]
925           vcmpeq_ospd   -4(%rbx,%rcx,8), %xmm12, %xmm13
926
927 // CHECK: vcmplt_oqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
928 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x11]
929           vcmplt_oqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
930
931 // CHECK: vcmple_oqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
932 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x12]
933           vcmple_oqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
934
935 // CHECK: vcmpunord_spd  -4(%rbx,%rcx,8), %xmm12, %xmm13
936 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x13]
937           vcmpunord_spd   -4(%rbx,%rcx,8), %xmm12, %xmm13
938
939 // CHECK: vcmpneq_uspd  -4(%rbx,%rcx,8), %xmm12, %xmm13
940 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x14]
941           vcmpneq_uspd   -4(%rbx,%rcx,8), %xmm12, %xmm13
942
943 // CHECK: vcmpnlt_uqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
944 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x15]
945           vcmpnlt_uqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
946
947 // CHECK: vcmpnle_uqpd  -4(%rbx,%rcx,8), %xmm6, %xmm2
948 // CHECK: encoding: [0xc5,0xc9,0xc2,0x54,0xcb,0xfc,0x16]
949           vcmpnle_uqpd   -4(%rbx,%rcx,8), %xmm6, %xmm2
950
951 // CHECK: vcmpord_spd  -4(%rbx,%rcx,8), %xmm12, %xmm13
952 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x17]
953           vcmpord_spd   -4(%rbx,%rcx,8), %xmm12, %xmm13
954
955 // CHECK: vcmpeq_uspd  -4(%rbx,%rcx,8), %xmm12, %xmm13
956 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x18]
957           vcmpeq_uspd   -4(%rbx,%rcx,8), %xmm12, %xmm13
958
959 // CHECK: vcmpnge_uqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
960 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x19]
961           vcmpnge_uqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
962
963 // CHECK: vcmpngt_uqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
964 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x1a]
965           vcmpngt_uqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
966
967 // CHECK: vcmpfalse_ospd  -4(%rbx,%rcx,8), %xmm12, %xmm13
968 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x1b]
969           vcmpfalse_ospd   -4(%rbx,%rcx,8), %xmm12, %xmm13
970
971 // CHECK: vcmpneq_ospd  -4(%rbx,%rcx,8), %xmm12, %xmm13
972 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x1c]
973           vcmpneq_ospd   -4(%rbx,%rcx,8), %xmm12, %xmm13
974
975 // CHECK: vcmpge_oqpd  -4(%rbx,%rcx,8), %xmm12, %xmm13
976 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x1d]
977           vcmpge_oqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
978
979 // CHECK: vcmpgt_oqpd  -4(%rbx,%rcx,8), %xmm6, %xmm2
980 // CHECK: encoding: [0xc5,0xc9,0xc2,0x54,0xcb,0xfc,0x1e]
981           vcmpgt_oqpd   -4(%rbx,%rcx,8), %xmm6, %xmm2
982
983 // CHECK: vcmptrue_uspd  -4(%rbx,%rcx,8), %xmm12, %xmm13
984 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x1f]
985           vcmptrue_uspd   -4(%rbx,%rcx,8), %xmm12, %xmm13
986
987 // CHECK: vcmpeq_uqss  %xmm11, %xmm12, %xmm13
988 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x08]
989           vcmpeq_uqss   %xmm11, %xmm12, %xmm13
990
991 // CHECK: vcmpngess  %xmm11, %xmm12, %xmm13
992 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x09]
993           vcmpngess   %xmm11, %xmm12, %xmm13
994
995 // CHECK: vcmpngtss  %xmm11, %xmm12, %xmm13
996 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x0a]
997           vcmpngtss   %xmm11, %xmm12, %xmm13
998
999 // CHECK: vcmpfalsess  %xmm11, %xmm12, %xmm13
1000 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x0b]
1001           vcmpfalsess   %xmm11, %xmm12, %xmm13
1002
1003 // CHECK: vcmpneq_oqss  %xmm11, %xmm12, %xmm13
1004 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x0c]
1005           vcmpneq_oqss   %xmm11, %xmm12, %xmm13
1006
1007 // CHECK: vcmpgess  %xmm11, %xmm12, %xmm13
1008 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x0d]
1009           vcmpgess   %xmm11, %xmm12, %xmm13
1010
1011 // CHECK: vcmpgtss  %xmm11, %xmm12, %xmm13
1012 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x0e]
1013           vcmpgtss   %xmm11, %xmm12, %xmm13
1014
1015 // CHECK: vcmptruess  %xmm11, %xmm12, %xmm13
1016 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x0f]
1017           vcmptruess   %xmm11, %xmm12, %xmm13
1018
1019 // CHECK: vcmpeq_osss  %xmm11, %xmm12, %xmm13
1020 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x10]
1021           vcmpeq_osss   %xmm11, %xmm12, %xmm13
1022
1023 // CHECK: vcmplt_oqss  %xmm11, %xmm12, %xmm13
1024 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x11]
1025           vcmplt_oqss   %xmm11, %xmm12, %xmm13
1026
1027 // CHECK: vcmple_oqss  %xmm11, %xmm12, %xmm13
1028 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x12]
1029           vcmple_oqss   %xmm11, %xmm12, %xmm13
1030
1031 // CHECK: vcmpunord_sss  %xmm11, %xmm12, %xmm13
1032 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x13]
1033           vcmpunord_sss   %xmm11, %xmm12, %xmm13
1034
1035 // CHECK: vcmpneq_usss  %xmm11, %xmm12, %xmm13
1036 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x14]
1037           vcmpneq_usss   %xmm11, %xmm12, %xmm13
1038
1039 // CHECK: vcmpnlt_uqss  %xmm11, %xmm12, %xmm13
1040 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x15]
1041           vcmpnlt_uqss   %xmm11, %xmm12, %xmm13
1042
1043 // CHECK: vcmpnle_uqss  %xmm11, %xmm12, %xmm13
1044 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x16]
1045           vcmpnle_uqss   %xmm11, %xmm12, %xmm13
1046
1047 // CHECK: vcmpord_sss  %xmm11, %xmm12, %xmm13
1048 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x17]
1049           vcmpord_sss   %xmm11, %xmm12, %xmm13
1050
1051 // CHECK: vcmpeq_usss  %xmm11, %xmm12, %xmm13
1052 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x18]
1053           vcmpeq_usss   %xmm11, %xmm12, %xmm13
1054
1055 // CHECK: vcmpnge_uqss  %xmm11, %xmm12, %xmm13
1056 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x19]
1057           vcmpnge_uqss   %xmm11, %xmm12, %xmm13
1058
1059 // CHECK: vcmpngt_uqss  %xmm11, %xmm12, %xmm13
1060 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x1a]
1061           vcmpngt_uqss   %xmm11, %xmm12, %xmm13
1062
1063 // CHECK: vcmpfalse_osss  %xmm11, %xmm12, %xmm13
1064 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x1b]
1065           vcmpfalse_osss   %xmm11, %xmm12, %xmm13
1066
1067 // CHECK: vcmpneq_osss  %xmm11, %xmm12, %xmm13
1068 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x1c]
1069           vcmpneq_osss   %xmm11, %xmm12, %xmm13
1070
1071 // CHECK: vcmpge_oqss  %xmm11, %xmm12, %xmm13
1072 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x1d]
1073           vcmpge_oqss   %xmm11, %xmm12, %xmm13
1074
1075 // CHECK: vcmpgt_oqss  %xmm11, %xmm12, %xmm13
1076 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x1e]
1077           vcmpgt_oqss   %xmm11, %xmm12, %xmm13
1078
1079 // CHECK: vcmptrue_usss  %xmm11, %xmm12, %xmm13
1080 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x1f]
1081           vcmptrue_usss   %xmm11, %xmm12, %xmm13
1082
1083 // CHECK: vcmpeq_uqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1084 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x08]
1085           vcmpeq_uqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1086
1087 // CHECK: vcmpngess  -4(%rbx,%rcx,8), %xmm12, %xmm13
1088 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x09]
1089           vcmpngess   -4(%rbx,%rcx,8), %xmm12, %xmm13
1090
1091 // CHECK: vcmpngtss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1092 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x0a]
1093           vcmpngtss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1094
1095 // CHECK: vcmpfalsess  -4(%rbx,%rcx,8), %xmm12, %xmm13
1096 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x0b]
1097           vcmpfalsess   -4(%rbx,%rcx,8), %xmm12, %xmm13
1098
1099 // CHECK: vcmpneq_oqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1100 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x0c]
1101           vcmpneq_oqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1102
1103 // CHECK: vcmpgess  -4(%rbx,%rcx,8), %xmm12, %xmm13
1104 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x0d]
1105           vcmpgess   -4(%rbx,%rcx,8), %xmm12, %xmm13
1106
1107 // CHECK: vcmpgtss  -4(%rbx,%rcx,8), %xmm6, %xmm2
1108 // CHECK: encoding: [0xc5,0xca,0xc2,0x54,0xcb,0xfc,0x0e]
1109           vcmpgtss   -4(%rbx,%rcx,8), %xmm6, %xmm2
1110
1111 // CHECK: vcmptruess  -4(%rbx,%rcx,8), %xmm12, %xmm13
1112 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x0f]
1113           vcmptruess   -4(%rbx,%rcx,8), %xmm12, %xmm13
1114
1115 // CHECK: vcmpeq_osss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1116 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x10]
1117           vcmpeq_osss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1118
1119 // CHECK: vcmplt_oqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1120 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x11]
1121           vcmplt_oqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1122
1123 // CHECK: vcmple_oqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1124 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x12]
1125           vcmple_oqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1126
1127 // CHECK: vcmpunord_sss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1128 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x13]
1129           vcmpunord_sss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1130
1131 // CHECK: vcmpneq_usss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1132 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x14]
1133           vcmpneq_usss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1134
1135 // CHECK: vcmpnlt_uqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1136 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x15]
1137           vcmpnlt_uqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1138
1139 // CHECK: vcmpnle_uqss  -4(%rbx,%rcx,8), %xmm6, %xmm2
1140 // CHECK: encoding: [0xc5,0xca,0xc2,0x54,0xcb,0xfc,0x16]
1141           vcmpnle_uqss   -4(%rbx,%rcx,8), %xmm6, %xmm2
1142
1143 // CHECK: vcmpord_sss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1144 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x17]
1145           vcmpord_sss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1146
1147 // CHECK: vcmpeq_usss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1148 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x18]
1149           vcmpeq_usss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1150
1151 // CHECK: vcmpnge_uqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1152 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x19]
1153           vcmpnge_uqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1154
1155 // CHECK: vcmpngt_uqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1156 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x1a]
1157           vcmpngt_uqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1158
1159 // CHECK: vcmpfalse_osss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1160 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x1b]
1161           vcmpfalse_osss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1162
1163 // CHECK: vcmpneq_osss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1164 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x1c]
1165           vcmpneq_osss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1166
1167 // CHECK: vcmpge_oqss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1168 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x1d]
1169           vcmpge_oqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1170
1171 // CHECK: vcmpgt_oqss  -4(%rbx,%rcx,8), %xmm6, %xmm2
1172 // CHECK: encoding: [0xc5,0xca,0xc2,0x54,0xcb,0xfc,0x1e]
1173           vcmpgt_oqss   -4(%rbx,%rcx,8), %xmm6, %xmm2
1174
1175 // CHECK: vcmptrue_usss  -4(%rbx,%rcx,8), %xmm12, %xmm13
1176 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x1f]
1177           vcmptrue_usss   -4(%rbx,%rcx,8), %xmm12, %xmm13
1178
1179 // CHECK: vcmpeq_uqsd  %xmm11, %xmm12, %xmm13
1180 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x08]
1181           vcmpeq_uqsd   %xmm11, %xmm12, %xmm13
1182
1183 // CHECK: vcmpngesd  %xmm11, %xmm12, %xmm13
1184 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x09]
1185           vcmpngesd   %xmm11, %xmm12, %xmm13
1186
1187 // CHECK: vcmpngtsd  %xmm11, %xmm12, %xmm13
1188 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x0a]
1189           vcmpngtsd   %xmm11, %xmm12, %xmm13
1190
1191 // CHECK: vcmpfalsesd  %xmm11, %xmm12, %xmm13
1192 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x0b]
1193           vcmpfalsesd   %xmm11, %xmm12, %xmm13
1194
1195 // CHECK: vcmpneq_oqsd  %xmm11, %xmm12, %xmm13
1196 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x0c]
1197           vcmpneq_oqsd   %xmm11, %xmm12, %xmm13
1198
1199 // CHECK: vcmpgesd  %xmm11, %xmm12, %xmm13
1200 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x0d]
1201           vcmpgesd   %xmm11, %xmm12, %xmm13
1202
1203 // CHECK: vcmpgtsd  %xmm11, %xmm12, %xmm13
1204 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x0e]
1205           vcmpgtsd   %xmm11, %xmm12, %xmm13
1206
1207 // CHECK: vcmptruesd  %xmm11, %xmm12, %xmm13
1208 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x0f]
1209           vcmptruesd   %xmm11, %xmm12, %xmm13
1210
1211 // CHECK: vcmpeq_ossd  %xmm11, %xmm12, %xmm13
1212 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x10]
1213           vcmpeq_ossd   %xmm11, %xmm12, %xmm13
1214
1215 // CHECK: vcmplt_oqsd  %xmm11, %xmm12, %xmm13
1216 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x11]
1217           vcmplt_oqsd   %xmm11, %xmm12, %xmm13
1218
1219 // CHECK: vcmple_oqsd  %xmm11, %xmm12, %xmm13
1220 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x12]
1221           vcmple_oqsd   %xmm11, %xmm12, %xmm13
1222
1223 // CHECK: vcmpunord_ssd  %xmm11, %xmm12, %xmm13
1224 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x13]
1225           vcmpunord_ssd   %xmm11, %xmm12, %xmm13
1226
1227 // CHECK: vcmpneq_ussd  %xmm11, %xmm12, %xmm13
1228 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x14]
1229           vcmpneq_ussd   %xmm11, %xmm12, %xmm13
1230
1231 // CHECK: vcmpnlt_uqsd  %xmm11, %xmm12, %xmm13
1232 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x15]
1233           vcmpnlt_uqsd   %xmm11, %xmm12, %xmm13
1234
1235 // CHECK: vcmpnle_uqsd  %xmm11, %xmm12, %xmm13
1236 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x16]
1237           vcmpnle_uqsd   %xmm11, %xmm12, %xmm13
1238
1239 // CHECK: vcmpord_ssd  %xmm11, %xmm12, %xmm13
1240 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x17]
1241           vcmpord_ssd   %xmm11, %xmm12, %xmm13
1242
1243 // CHECK: vcmpeq_ussd  %xmm11, %xmm12, %xmm13
1244 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x18]
1245           vcmpeq_ussd   %xmm11, %xmm12, %xmm13
1246
1247 // CHECK: vcmpnge_uqsd  %xmm11, %xmm12, %xmm13
1248 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x19]
1249           vcmpnge_uqsd   %xmm11, %xmm12, %xmm13
1250
1251 // CHECK: vcmpngt_uqsd  %xmm11, %xmm12, %xmm13
1252 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x1a]
1253           vcmpngt_uqsd   %xmm11, %xmm12, %xmm13
1254
1255 // CHECK: vcmpfalse_ossd  %xmm11, %xmm12, %xmm13
1256 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x1b]
1257           vcmpfalse_ossd   %xmm11, %xmm12, %xmm13
1258
1259 // CHECK: vcmpneq_ossd  %xmm11, %xmm12, %xmm13
1260 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x1c]
1261           vcmpneq_ossd   %xmm11, %xmm12, %xmm13
1262
1263 // CHECK: vcmpge_oqsd  %xmm11, %xmm12, %xmm13
1264 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x1d]
1265           vcmpge_oqsd   %xmm11, %xmm12, %xmm13
1266
1267 // CHECK: vcmpgt_oqsd  %xmm11, %xmm12, %xmm13
1268 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x1e]
1269           vcmpgt_oqsd   %xmm11, %xmm12, %xmm13
1270
1271 // CHECK: vcmptrue_ussd  %xmm11, %xmm12, %xmm13
1272 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x1f]
1273           vcmptrue_ussd   %xmm11, %xmm12, %xmm13
1274
1275 // CHECK: vcmpeq_uqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1276 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x08]
1277           vcmpeq_uqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1278
1279 // CHECK: vcmpngesd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1280 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x09]
1281           vcmpngesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1282
1283 // CHECK: vcmpngtsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1284 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x0a]
1285           vcmpngtsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1286
1287 // CHECK: vcmpfalsesd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1288 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x0b]
1289           vcmpfalsesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1290
1291 // CHECK: vcmpneq_oqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1292 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x0c]
1293           vcmpneq_oqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1294
1295 // CHECK: vcmpgesd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1296 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x0d]
1297           vcmpgesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1298
1299 // CHECK: vcmpgtsd  -4(%rbx,%rcx,8), %xmm6, %xmm2
1300 // CHECK: encoding: [0xc5,0xcb,0xc2,0x54,0xcb,0xfc,0x0e]
1301           vcmpgtsd   -4(%rbx,%rcx,8), %xmm6, %xmm2
1302
1303 // CHECK: vcmptruesd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1304 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x0f]
1305           vcmptruesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1306
1307 // CHECK: vcmpeq_ossd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1308 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x10]
1309           vcmpeq_ossd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1310
1311 // CHECK: vcmplt_oqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1312 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x11]
1313           vcmplt_oqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1314
1315 // CHECK: vcmple_oqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1316 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x12]
1317           vcmple_oqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1318
1319 // CHECK: vcmpunord_ssd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1320 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x13]
1321           vcmpunord_ssd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1322
1323 // CHECK: vcmpneq_ussd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1324 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x14]
1325           vcmpneq_ussd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1326
1327 // CHECK: vcmpnlt_uqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1328 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x15]
1329           vcmpnlt_uqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1330
1331 // CHECK: vcmpnle_uqsd  -4(%rbx,%rcx,8), %xmm6, %xmm2
1332 // CHECK: encoding: [0xc5,0xcb,0xc2,0x54,0xcb,0xfc,0x16]
1333           vcmpnle_uqsd   -4(%rbx,%rcx,8), %xmm6, %xmm2
1334
1335 // CHECK: vcmpord_ssd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1336 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x17]
1337           vcmpord_ssd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1338
1339 // CHECK: vcmpeq_ussd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1340 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x18]
1341           vcmpeq_ussd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1342
1343 // CHECK: vcmpnge_uqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1344 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x19]
1345           vcmpnge_uqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1346
1347 // CHECK: vcmpngt_uqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1348 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x1a]
1349           vcmpngt_uqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1350
1351 // CHECK: vcmpfalse_ossd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1352 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x1b]
1353           vcmpfalse_ossd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1354
1355 // CHECK: vcmpneq_ossd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1356 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x1c]
1357           vcmpneq_ossd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1358
1359 // CHECK: vcmpge_oqsd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1360 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x1d]
1361           vcmpge_oqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1362
1363 // CHECK: vcmpgt_oqsd  -4(%rbx,%rcx,8), %xmm6, %xmm2
1364 // CHECK: encoding: [0xc5,0xcb,0xc2,0x54,0xcb,0xfc,0x1e]
1365           vcmpgt_oqsd   -4(%rbx,%rcx,8), %xmm6, %xmm2
1366
1367 // CHECK: vcmptrue_ussd  -4(%rbx,%rcx,8), %xmm12, %xmm13
1368 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x1f]
1369           vcmptrue_ussd   -4(%rbx,%rcx,8), %xmm12, %xmm13
1370
1371 // CHECK: vucomiss  %xmm11, %xmm12
1372 // CHECK: encoding: [0xc4,0x41,0x78,0x2e,0xe3]
1373           vucomiss  %xmm11, %xmm12
1374
1375 // CHECK: vucomiss  (%rax), %xmm12
1376 // CHECK: encoding: [0xc5,0x78,0x2e,0x20]
1377           vucomiss  (%rax), %xmm12
1378
1379 // CHECK: vcomiss  %xmm11, %xmm12
1380 // CHECK: encoding: [0xc4,0x41,0x78,0x2f,0xe3]
1381           vcomiss  %xmm11, %xmm12
1382
1383 // CHECK: vcomiss  (%rax), %xmm12
1384 // CHECK: encoding: [0xc5,0x78,0x2f,0x20]
1385           vcomiss  (%rax), %xmm12
1386
1387 // CHECK: vucomisd  %xmm11, %xmm12
1388 // CHECK: encoding: [0xc4,0x41,0x79,0x2e,0xe3]
1389           vucomisd  %xmm11, %xmm12
1390
1391 // CHECK: vucomisd  (%rax), %xmm12
1392 // CHECK: encoding: [0xc5,0x79,0x2e,0x20]
1393           vucomisd  (%rax), %xmm12
1394
1395 // CHECK: vcomisd  %xmm11, %xmm12
1396 // CHECK: encoding: [0xc4,0x41,0x79,0x2f,0xe3]
1397           vcomisd  %xmm11, %xmm12
1398
1399 // CHECK: vcomisd  (%rax), %xmm12
1400 // CHECK: encoding: [0xc5,0x79,0x2f,0x20]
1401           vcomisd  (%rax), %xmm12
1402
1403 // CHECK: vcvttss2si  (%rcx), %eax
1404 // CHECK: encoding: [0xc5,0xfa,0x2c,0x01]
1405           vcvttss2si  (%rcx), %eax
1406
1407 // CHECK: vcvtsi2ssl  (%rax), %xmm11, %xmm12
1408 // CHECK: encoding: [0xc5,0x22,0x2a,0x20]
1409           vcvtsi2ssl  (%rax), %xmm11, %xmm12
1410
1411 // CHECK: vcvtsi2ssl  (%rax), %xmm11, %xmm12
1412 // CHECK: encoding: [0xc5,0x22,0x2a,0x20]
1413           vcvtsi2ssl  (%rax), %xmm11, %xmm12
1414
1415 // CHECK: vcvttsd2si  (%rcx), %eax
1416 // CHECK: encoding: [0xc5,0xfb,0x2c,0x01]
1417           vcvttsd2si  (%rcx), %eax
1418
1419 // CHECK: vcvtsi2sdl  (%rax), %xmm11, %xmm12
1420 // CHECK: encoding: [0xc5,0x23,0x2a,0x20]
1421           vcvtsi2sdl  (%rax), %xmm11, %xmm12
1422
1423 // CHECK: vcvtsi2sdl  (%rax), %xmm11, %xmm12
1424 // CHECK: encoding: [0xc5,0x23,0x2a,0x20]
1425           vcvtsi2sdl  (%rax), %xmm11, %xmm12
1426
1427 // CHECK: vmovaps  (%rax), %xmm12
1428 // CHECK: encoding: [0xc5,0x78,0x28,0x20]
1429           vmovaps  (%rax), %xmm12
1430
1431 // CHECK: vmovaps  %xmm11, %xmm12
1432 // CHECK: encoding: [0xc4,0x41,0x78,0x28,0xe3]
1433           vmovaps  %xmm11, %xmm12
1434
1435 // CHECK: vmovaps  %xmm11, (%rax)
1436 // CHECK: encoding: [0xc5,0x78,0x29,0x18]
1437           vmovaps  %xmm11, (%rax)
1438
1439 // CHECK: vmovapd  (%rax), %xmm12
1440 // CHECK: encoding: [0xc5,0x79,0x28,0x20]
1441           vmovapd  (%rax), %xmm12
1442
1443 // CHECK: vmovapd  %xmm11, %xmm12
1444 // CHECK: encoding: [0xc4,0x41,0x79,0x28,0xe3]
1445           vmovapd  %xmm11, %xmm12
1446
1447 // CHECK: vmovapd  %xmm11, (%rax)
1448 // CHECK: encoding: [0xc5,0x79,0x29,0x18]
1449           vmovapd  %xmm11, (%rax)
1450
1451 // CHECK: vmovups  (%rax), %xmm12
1452 // CHECK: encoding: [0xc5,0x78,0x10,0x20]
1453           vmovups  (%rax), %xmm12
1454
1455 // CHECK: vmovups  %xmm11, %xmm12
1456 // CHECK: encoding: [0xc4,0x41,0x78,0x10,0xe3]
1457           vmovups  %xmm11, %xmm12
1458
1459 // CHECK: vmovups  %xmm11, (%rax)
1460 // CHECK: encoding: [0xc5,0x78,0x11,0x18]
1461           vmovups  %xmm11, (%rax)
1462
1463 // CHECK: vmovupd  (%rax), %xmm12
1464 // CHECK: encoding: [0xc5,0x79,0x10,0x20]
1465           vmovupd  (%rax), %xmm12
1466
1467 // CHECK: vmovupd  %xmm11, %xmm12
1468 // CHECK: encoding: [0xc4,0x41,0x79,0x10,0xe3]
1469           vmovupd  %xmm11, %xmm12
1470
1471 // CHECK: vmovupd  %xmm11, (%rax)
1472 // CHECK: encoding: [0xc5,0x79,0x11,0x18]
1473           vmovupd  %xmm11, (%rax)
1474
1475 // CHECK: vmovlps  %xmm11, (%rax)
1476 // CHECK: encoding: [0xc5,0x78,0x13,0x18]
1477           vmovlps  %xmm11, (%rax)
1478
1479 // CHECK: vmovlps  (%rax), %xmm12, %xmm13
1480 // CHECK: encoding: [0xc5,0x18,0x12,0x28]
1481           vmovlps  (%rax), %xmm12, %xmm13
1482
1483 // CHECK: vmovlpd  %xmm11, (%rax)
1484 // CHECK: encoding: [0xc5,0x79,0x13,0x18]
1485           vmovlpd  %xmm11, (%rax)
1486
1487 // CHECK: vmovlpd  (%rax), %xmm12, %xmm13
1488 // CHECK: encoding: [0xc5,0x19,0x12,0x28]
1489           vmovlpd  (%rax), %xmm12, %xmm13
1490
1491 // CHECK: vmovhps  %xmm11, (%rax)
1492 // CHECK: encoding: [0xc5,0x78,0x17,0x18]
1493           vmovhps  %xmm11, (%rax)
1494
1495 // CHECK: vmovhps  (%rax), %xmm12, %xmm13
1496 // CHECK: encoding: [0xc5,0x18,0x16,0x28]
1497           vmovhps  (%rax), %xmm12, %xmm13
1498
1499 // CHECK: vmovhpd  %xmm11, (%rax)
1500 // CHECK: encoding: [0xc5,0x79,0x17,0x18]
1501           vmovhpd  %xmm11, (%rax)
1502
1503 // CHECK: vmovhpd  (%rax), %xmm12, %xmm13
1504 // CHECK: encoding: [0xc5,0x19,0x16,0x28]
1505           vmovhpd  (%rax), %xmm12, %xmm13
1506
1507 // CHECK: vmovlhps  %xmm11, %xmm12, %xmm13
1508 // CHECK: encoding: [0xc4,0x41,0x18,0x16,0xeb]
1509           vmovlhps  %xmm11, %xmm12, %xmm13
1510
1511 // CHECK: vmovhlps  %xmm11, %xmm12, %xmm13
1512 // CHECK: encoding: [0xc4,0x41,0x18,0x12,0xeb]
1513           vmovhlps  %xmm11, %xmm12, %xmm13
1514
1515 // CHECK: vcvtss2si  %xmm11, %eax
1516 // CHECK: encoding: [0xc4,0xc1,0x7a,0x2d,0xc3]
1517           vcvtss2si  %xmm11, %eax
1518
1519 // CHECK: vcvtss2si  (%rax), %ebx
1520 // CHECK: encoding: [0xc5,0xfa,0x2d,0x18]
1521           vcvtss2si  (%rax), %ebx
1522
1523 // CHECK: vcvtdq2ps  %xmm10, %xmm12
1524 // CHECK: encoding: [0xc4,0x41,0x78,0x5b,0xe2]
1525           vcvtdq2ps  %xmm10, %xmm12
1526
1527 // CHECK: vcvtdq2ps  (%rax), %xmm12
1528 // CHECK: encoding: [0xc5,0x78,0x5b,0x20]
1529           vcvtdq2ps  (%rax), %xmm12
1530
1531 // CHECK: vcvtsd2ss  %xmm12, %xmm13, %xmm10
1532 // CHECK: encoding: [0xc4,0x41,0x13,0x5a,0xd4]
1533           vcvtsd2ss  %xmm12, %xmm13, %xmm10
1534
1535 // CHECK: vcvtsd2ss  (%rax), %xmm13, %xmm10
1536 // CHECK: encoding: [0xc5,0x13,0x5a,0x10]
1537           vcvtsd2ss  (%rax), %xmm13, %xmm10
1538
1539 // CHECK: vcvtps2dq  %xmm12, %xmm11
1540 // CHECK: encoding: [0xc4,0x41,0x79,0x5b,0xdc]
1541           vcvtps2dq  %xmm12, %xmm11
1542
1543 // CHECK: vcvtps2dq  (%rax), %xmm11
1544 // CHECK: encoding: [0xc5,0x79,0x5b,0x18]
1545           vcvtps2dq  (%rax), %xmm11
1546
1547 // CHECK: vcvtss2sd  %xmm12, %xmm13, %xmm10
1548 // CHECK: encoding: [0xc4,0x41,0x12,0x5a,0xd4]
1549           vcvtss2sd  %xmm12, %xmm13, %xmm10
1550
1551 // CHECK: vcvtss2sd  (%rax), %xmm13, %xmm10
1552 // CHECK: encoding: [0xc5,0x12,0x5a,0x10]
1553           vcvtss2sd  (%rax), %xmm13, %xmm10
1554
1555 // CHECK: vcvtdq2ps  %xmm13, %xmm10
1556 // CHECK: encoding: [0xc4,0x41,0x78,0x5b,0xd5]
1557           vcvtdq2ps  %xmm13, %xmm10
1558
1559 // CHECK: vcvtdq2ps  (%ecx), %xmm13
1560 // CHECK: encoding: [0x67,0xc5,0x78,0x5b,0x29]
1561           vcvtdq2ps  (%ecx), %xmm13
1562
1563 // CHECK: vcvttps2dq  %xmm12, %xmm11
1564 // CHECK: encoding: [0xc4,0x41,0x7a,0x5b,0xdc]
1565           vcvttps2dq  %xmm12, %xmm11
1566
1567 // CHECK: vcvttps2dq  (%rax), %xmm11
1568 // CHECK: encoding: [0xc5,0x7a,0x5b,0x18]
1569           vcvttps2dq  (%rax), %xmm11
1570
1571 // CHECK: vcvtps2pd  %xmm12, %xmm11
1572 // CHECK: encoding: [0xc4,0x41,0x78,0x5a,0xdc]
1573           vcvtps2pd  %xmm12, %xmm11
1574
1575 // CHECK: vcvtps2pd  (%rax), %xmm11
1576 // CHECK: encoding: [0xc5,0x78,0x5a,0x18]
1577           vcvtps2pd  (%rax), %xmm11
1578
1579 // CHECK: vcvtpd2ps  %xmm12, %xmm11
1580 // CHECK: encoding: [0xc4,0x41,0x79,0x5a,0xdc]
1581           vcvtpd2ps  %xmm12, %xmm11
1582
1583 // CHECK: vsqrtpd  %xmm11, %xmm12
1584 // CHECK: encoding: [0xc4,0x41,0x79,0x51,0xe3]
1585           vsqrtpd  %xmm11, %xmm12
1586
1587 // CHECK: vsqrtpd  (%rax), %xmm12
1588 // CHECK: encoding: [0xc5,0x79,0x51,0x20]
1589           vsqrtpd  (%rax), %xmm12
1590
1591 // CHECK: vsqrtps  %xmm11, %xmm12
1592 // CHECK: encoding: [0xc4,0x41,0x78,0x51,0xe3]
1593           vsqrtps  %xmm11, %xmm12
1594
1595 // CHECK: vsqrtps  (%rax), %xmm12
1596 // CHECK: encoding: [0xc5,0x78,0x51,0x20]
1597           vsqrtps  (%rax), %xmm12
1598
1599 // CHECK: vsqrtsd  %xmm11, %xmm12, %xmm10
1600 // CHECK: encoding: [0xc4,0x41,0x1b,0x51,0xd3]
1601           vsqrtsd  %xmm11, %xmm12, %xmm10
1602
1603 // CHECK: vsqrtsd  (%rax), %xmm12, %xmm10
1604 // CHECK: encoding: [0xc5,0x1b,0x51,0x10]
1605           vsqrtsd  (%rax), %xmm12, %xmm10
1606
1607 // CHECK: vsqrtss  %xmm11, %xmm12, %xmm10
1608 // CHECK: encoding: [0xc4,0x41,0x1a,0x51,0xd3]
1609           vsqrtss  %xmm11, %xmm12, %xmm10
1610
1611 // CHECK: vsqrtss  (%rax), %xmm12, %xmm10
1612 // CHECK: encoding: [0xc5,0x1a,0x51,0x10]
1613           vsqrtss  (%rax), %xmm12, %xmm10
1614
1615 // CHECK: vrsqrtps  %xmm11, %xmm12
1616 // CHECK: encoding: [0xc4,0x41,0x78,0x52,0xe3]
1617           vrsqrtps  %xmm11, %xmm12
1618
1619 // CHECK: vrsqrtps  (%rax), %xmm12
1620 // CHECK: encoding: [0xc5,0x78,0x52,0x20]
1621           vrsqrtps  (%rax), %xmm12
1622
1623 // CHECK: vrsqrtss  %xmm11, %xmm12, %xmm10
1624 // CHECK: encoding: [0xc4,0x41,0x1a,0x52,0xd3]
1625           vrsqrtss  %xmm11, %xmm12, %xmm10
1626
1627 // CHECK: vrsqrtss  (%rax), %xmm12, %xmm10
1628 // CHECK: encoding: [0xc5,0x1a,0x52,0x10]
1629           vrsqrtss  (%rax), %xmm12, %xmm10
1630
1631 // CHECK: vrcpps  %xmm11, %xmm12
1632 // CHECK: encoding: [0xc4,0x41,0x78,0x53,0xe3]
1633           vrcpps  %xmm11, %xmm12
1634
1635 // CHECK: vrcpps  (%rax), %xmm12
1636 // CHECK: encoding: [0xc5,0x78,0x53,0x20]
1637           vrcpps  (%rax), %xmm12
1638
1639 // CHECK: vrcpss  %xmm11, %xmm12, %xmm10
1640 // CHECK: encoding: [0xc4,0x41,0x1a,0x53,0xd3]
1641           vrcpss  %xmm11, %xmm12, %xmm10
1642
1643 // CHECK: vrcpss  (%rax), %xmm12, %xmm10
1644 // CHECK: encoding: [0xc5,0x1a,0x53,0x10]
1645           vrcpss  (%rax), %xmm12, %xmm10
1646
1647 // CHECK: vmovntdq  %xmm11, (%rax)
1648 // CHECK: encoding: [0xc5,0x79,0xe7,0x18]
1649           vmovntdq  %xmm11, (%rax)
1650
1651 // CHECK: vmovntpd  %xmm11, (%rax)
1652 // CHECK: encoding: [0xc5,0x79,0x2b,0x18]
1653           vmovntpd  %xmm11, (%rax)
1654
1655 // CHECK: vmovntps  %xmm11, (%rax)
1656 // CHECK: encoding: [0xc5,0x78,0x2b,0x18]
1657           vmovntps  %xmm11, (%rax)
1658
1659 // CHECK: vldmxcsr  -4(%rip)
1660 // CHECK: encoding: [0xc5,0xf8,0xae,0x15,0xfc,0xff,0xff,0xff]
1661           vldmxcsr  -4(%rip)
1662
1663 // CHECK: vstmxcsr  -4(%rsp)
1664 // CHECK: encoding: [0xc5,0xf8,0xae,0x5c,0x24,0xfc]
1665           vstmxcsr  -4(%rsp)
1666
1667 // CHECK: vpsubb  %xmm11, %xmm12, %xmm13
1668 // CHECK: encoding: [0xc4,0x41,0x19,0xf8,0xeb]
1669           vpsubb  %xmm11, %xmm12, %xmm13
1670
1671 // CHECK: vpsubb  (%rax), %xmm12, %xmm13
1672 // CHECK: encoding: [0xc5,0x19,0xf8,0x28]
1673           vpsubb  (%rax), %xmm12, %xmm13
1674
1675 // CHECK: vpsubw  %xmm11, %xmm12, %xmm13
1676 // CHECK: encoding: [0xc4,0x41,0x19,0xf9,0xeb]
1677           vpsubw  %xmm11, %xmm12, %xmm13
1678
1679 // CHECK: vpsubw  (%rax), %xmm12, %xmm13
1680 // CHECK: encoding: [0xc5,0x19,0xf9,0x28]
1681           vpsubw  (%rax), %xmm12, %xmm13
1682
1683 // CHECK: vpsubd  %xmm11, %xmm12, %xmm13
1684 // CHECK: encoding: [0xc4,0x41,0x19,0xfa,0xeb]
1685           vpsubd  %xmm11, %xmm12, %xmm13
1686
1687 // CHECK: vpsubd  (%rax), %xmm12, %xmm13
1688 // CHECK: encoding: [0xc5,0x19,0xfa,0x28]
1689           vpsubd  (%rax), %xmm12, %xmm13
1690
1691 // CHECK: vpsubq  %xmm11, %xmm12, %xmm13
1692 // CHECK: encoding: [0xc4,0x41,0x19,0xfb,0xeb]
1693           vpsubq  %xmm11, %xmm12, %xmm13
1694
1695 // CHECK: vpsubq  (%rax), %xmm12, %xmm13
1696 // CHECK: encoding: [0xc5,0x19,0xfb,0x28]
1697           vpsubq  (%rax), %xmm12, %xmm13
1698
1699 // CHECK: vpsubsb  %xmm11, %xmm12, %xmm13
1700 // CHECK: encoding: [0xc4,0x41,0x19,0xe8,0xeb]
1701           vpsubsb  %xmm11, %xmm12, %xmm13
1702
1703 // CHECK: vpsubsb  (%rax), %xmm12, %xmm13
1704 // CHECK: encoding: [0xc5,0x19,0xe8,0x28]
1705           vpsubsb  (%rax), %xmm12, %xmm13
1706
1707 // CHECK: vpsubsw  %xmm11, %xmm12, %xmm13
1708 // CHECK: encoding: [0xc4,0x41,0x19,0xe9,0xeb]
1709           vpsubsw  %xmm11, %xmm12, %xmm13
1710
1711 // CHECK: vpsubsw  (%rax), %xmm12, %xmm13
1712 // CHECK: encoding: [0xc5,0x19,0xe9,0x28]
1713           vpsubsw  (%rax), %xmm12, %xmm13
1714
1715 // CHECK: vpsubusb  %xmm11, %xmm12, %xmm13
1716 // CHECK: encoding: [0xc4,0x41,0x19,0xd8,0xeb]
1717           vpsubusb  %xmm11, %xmm12, %xmm13
1718
1719 // CHECK: vpsubusb  (%rax), %xmm12, %xmm13
1720 // CHECK: encoding: [0xc5,0x19,0xd8,0x28]
1721           vpsubusb  (%rax), %xmm12, %xmm13
1722
1723 // CHECK: vpsubusw  %xmm11, %xmm12, %xmm13
1724 // CHECK: encoding: [0xc4,0x41,0x19,0xd9,0xeb]
1725           vpsubusw  %xmm11, %xmm12, %xmm13
1726
1727 // CHECK: vpsubusw  (%rax), %xmm12, %xmm13
1728 // CHECK: encoding: [0xc5,0x19,0xd9,0x28]
1729           vpsubusw  (%rax), %xmm12, %xmm13
1730
1731 // CHECK: vpaddb  %xmm11, %xmm12, %xmm13
1732 // CHECK: encoding: [0xc4,0x41,0x19,0xfc,0xeb]
1733           vpaddb  %xmm11, %xmm12, %xmm13
1734
1735 // CHECK: vpaddb  (%rax), %xmm12, %xmm13
1736 // CHECK: encoding: [0xc5,0x19,0xfc,0x28]
1737           vpaddb  (%rax), %xmm12, %xmm13
1738
1739 // CHECK: vpaddw  %xmm11, %xmm12, %xmm13
1740 // CHECK: encoding: [0xc4,0x41,0x19,0xfd,0xeb]
1741           vpaddw  %xmm11, %xmm12, %xmm13
1742
1743 // CHECK: vpaddw  (%rax), %xmm12, %xmm13
1744 // CHECK: encoding: [0xc5,0x19,0xfd,0x28]
1745           vpaddw  (%rax), %xmm12, %xmm13
1746
1747 // CHECK: vpaddd  %xmm11, %xmm12, %xmm13
1748 // CHECK: encoding: [0xc4,0x41,0x19,0xfe,0xeb]
1749           vpaddd  %xmm11, %xmm12, %xmm13
1750
1751 // CHECK: vpaddd  (%rax), %xmm12, %xmm13
1752 // CHECK: encoding: [0xc5,0x19,0xfe,0x28]
1753           vpaddd  (%rax), %xmm12, %xmm13
1754
1755 // CHECK: vpaddq  %xmm11, %xmm12, %xmm13
1756 // CHECK: encoding: [0xc4,0x41,0x19,0xd4,0xeb]
1757           vpaddq  %xmm11, %xmm12, %xmm13
1758
1759 // CHECK: vpaddq  (%rax), %xmm12, %xmm13
1760 // CHECK: encoding: [0xc5,0x19,0xd4,0x28]
1761           vpaddq  (%rax), %xmm12, %xmm13
1762
1763 // CHECK: vpaddsb  %xmm11, %xmm12, %xmm13
1764 // CHECK: encoding: [0xc4,0x41,0x19,0xec,0xeb]
1765           vpaddsb  %xmm11, %xmm12, %xmm13
1766
1767 // CHECK: vpaddsb  (%rax), %xmm12, %xmm13
1768 // CHECK: encoding: [0xc5,0x19,0xec,0x28]
1769           vpaddsb  (%rax), %xmm12, %xmm13
1770
1771 // CHECK: vpaddsw  %xmm11, %xmm12, %xmm13
1772 // CHECK: encoding: [0xc4,0x41,0x19,0xed,0xeb]
1773           vpaddsw  %xmm11, %xmm12, %xmm13
1774
1775 // CHECK: vpaddsw  (%rax), %xmm12, %xmm13
1776 // CHECK: encoding: [0xc5,0x19,0xed,0x28]
1777           vpaddsw  (%rax), %xmm12, %xmm13
1778
1779 // CHECK: vpaddusb  %xmm11, %xmm12, %xmm13
1780 // CHECK: encoding: [0xc4,0x41,0x19,0xdc,0xeb]
1781           vpaddusb  %xmm11, %xmm12, %xmm13
1782
1783 // CHECK: vpaddusb  (%rax), %xmm12, %xmm13
1784 // CHECK: encoding: [0xc5,0x19,0xdc,0x28]
1785           vpaddusb  (%rax), %xmm12, %xmm13
1786
1787 // CHECK: vpaddusw  %xmm11, %xmm12, %xmm13
1788 // CHECK: encoding: [0xc4,0x41,0x19,0xdd,0xeb]
1789           vpaddusw  %xmm11, %xmm12, %xmm13
1790
1791 // CHECK: vpaddusw  (%rax), %xmm12, %xmm13
1792 // CHECK: encoding: [0xc5,0x19,0xdd,0x28]
1793           vpaddusw  (%rax), %xmm12, %xmm13
1794
1795 // CHECK: vpmulhuw  %xmm11, %xmm12, %xmm13
1796 // CHECK: encoding: [0xc4,0x41,0x19,0xe4,0xeb]
1797           vpmulhuw  %xmm11, %xmm12, %xmm13
1798
1799 // CHECK: vpmulhuw  (%rax), %xmm12, %xmm13
1800 // CHECK: encoding: [0xc5,0x19,0xe4,0x28]
1801           vpmulhuw  (%rax), %xmm12, %xmm13
1802
1803 // CHECK: vpmulhw  %xmm11, %xmm12, %xmm13
1804 // CHECK: encoding: [0xc4,0x41,0x19,0xe5,0xeb]
1805           vpmulhw  %xmm11, %xmm12, %xmm13
1806
1807 // CHECK: vpmulhw  (%rax), %xmm12, %xmm13
1808 // CHECK: encoding: [0xc5,0x19,0xe5,0x28]
1809           vpmulhw  (%rax), %xmm12, %xmm13
1810
1811 // CHECK: vpmullw  %xmm11, %xmm12, %xmm13
1812 // CHECK: encoding: [0xc4,0x41,0x19,0xd5,0xeb]
1813           vpmullw  %xmm11, %xmm12, %xmm13
1814
1815 // CHECK: vpmullw  (%rax), %xmm12, %xmm13
1816 // CHECK: encoding: [0xc5,0x19,0xd5,0x28]
1817           vpmullw  (%rax), %xmm12, %xmm13
1818
1819 // CHECK: vpmuludq  %xmm11, %xmm12, %xmm13
1820 // CHECK: encoding: [0xc4,0x41,0x19,0xf4,0xeb]
1821           vpmuludq  %xmm11, %xmm12, %xmm13
1822
1823 // CHECK: vpmuludq  (%rax), %xmm12, %xmm13
1824 // CHECK: encoding: [0xc5,0x19,0xf4,0x28]
1825           vpmuludq  (%rax), %xmm12, %xmm13
1826
1827 // CHECK: vpavgb  %xmm11, %xmm12, %xmm13
1828 // CHECK: encoding: [0xc4,0x41,0x19,0xe0,0xeb]
1829           vpavgb  %xmm11, %xmm12, %xmm13
1830
1831 // CHECK: vpavgb  (%rax), %xmm12, %xmm13
1832 // CHECK: encoding: [0xc5,0x19,0xe0,0x28]
1833           vpavgb  (%rax), %xmm12, %xmm13
1834
1835 // CHECK: vpavgw  %xmm11, %xmm12, %xmm13
1836 // CHECK: encoding: [0xc4,0x41,0x19,0xe3,0xeb]
1837           vpavgw  %xmm11, %xmm12, %xmm13
1838
1839 // CHECK: vpavgw  (%rax), %xmm12, %xmm13
1840 // CHECK: encoding: [0xc5,0x19,0xe3,0x28]
1841           vpavgw  (%rax), %xmm12, %xmm13
1842
1843 // CHECK: vpminsw  %xmm11, %xmm12, %xmm13
1844 // CHECK: encoding: [0xc4,0x41,0x19,0xea,0xeb]
1845           vpminsw  %xmm11, %xmm12, %xmm13
1846
1847 // CHECK: vpminsw  (%rax), %xmm12, %xmm13
1848 // CHECK: encoding: [0xc5,0x19,0xea,0x28]
1849           vpminsw  (%rax), %xmm12, %xmm13
1850
1851 // CHECK: vpminub  %xmm11, %xmm12, %xmm13
1852 // CHECK: encoding: [0xc4,0x41,0x19,0xda,0xeb]
1853           vpminub  %xmm11, %xmm12, %xmm13
1854
1855 // CHECK: vpminub  (%rax), %xmm12, %xmm13
1856 // CHECK: encoding: [0xc5,0x19,0xda,0x28]
1857           vpminub  (%rax), %xmm12, %xmm13
1858
1859 // CHECK: vpmaxsw  %xmm11, %xmm12, %xmm13
1860 // CHECK: encoding: [0xc4,0x41,0x19,0xee,0xeb]
1861           vpmaxsw  %xmm11, %xmm12, %xmm13
1862
1863 // CHECK: vpmaxsw  (%rax), %xmm12, %xmm13
1864 // CHECK: encoding: [0xc5,0x19,0xee,0x28]
1865           vpmaxsw  (%rax), %xmm12, %xmm13
1866
1867 // CHECK: vpmaxub  %xmm11, %xmm12, %xmm13
1868 // CHECK: encoding: [0xc4,0x41,0x19,0xde,0xeb]
1869           vpmaxub  %xmm11, %xmm12, %xmm13
1870
1871 // CHECK: vpmaxub  (%rax), %xmm12, %xmm13
1872 // CHECK: encoding: [0xc5,0x19,0xde,0x28]
1873           vpmaxub  (%rax), %xmm12, %xmm13
1874
1875 // CHECK: vpsadbw  %xmm11, %xmm12, %xmm13
1876 // CHECK: encoding: [0xc4,0x41,0x19,0xf6,0xeb]
1877           vpsadbw  %xmm11, %xmm12, %xmm13
1878
1879 // CHECK: vpsadbw  (%rax), %xmm12, %xmm13
1880 // CHECK: encoding: [0xc5,0x19,0xf6,0x28]
1881           vpsadbw  (%rax), %xmm12, %xmm13
1882
1883 // CHECK: vpsllw  %xmm11, %xmm12, %xmm13
1884 // CHECK: encoding: [0xc4,0x41,0x19,0xf1,0xeb]
1885           vpsllw  %xmm11, %xmm12, %xmm13
1886
1887 // CHECK: vpsllw  (%rax), %xmm12, %xmm13
1888 // CHECK: encoding: [0xc5,0x19,0xf1,0x28]
1889           vpsllw  (%rax), %xmm12, %xmm13
1890
1891 // CHECK: vpslld  %xmm11, %xmm12, %xmm13
1892 // CHECK: encoding: [0xc4,0x41,0x19,0xf2,0xeb]
1893           vpslld  %xmm11, %xmm12, %xmm13
1894
1895 // CHECK: vpslld  (%rax), %xmm12, %xmm13
1896 // CHECK: encoding: [0xc5,0x19,0xf2,0x28]
1897           vpslld  (%rax), %xmm12, %xmm13
1898
1899 // CHECK: vpsllq  %xmm11, %xmm12, %xmm13
1900 // CHECK: encoding: [0xc4,0x41,0x19,0xf3,0xeb]
1901           vpsllq  %xmm11, %xmm12, %xmm13
1902
1903 // CHECK: vpsllq  (%rax), %xmm12, %xmm13
1904 // CHECK: encoding: [0xc5,0x19,0xf3,0x28]
1905           vpsllq  (%rax), %xmm12, %xmm13
1906
1907 // CHECK: vpsraw  %xmm11, %xmm12, %xmm13
1908 // CHECK: encoding: [0xc4,0x41,0x19,0xe1,0xeb]
1909           vpsraw  %xmm11, %xmm12, %xmm13
1910
1911 // CHECK: vpsraw  (%rax), %xmm12, %xmm13
1912 // CHECK: encoding: [0xc5,0x19,0xe1,0x28]
1913           vpsraw  (%rax), %xmm12, %xmm13
1914
1915 // CHECK: vpsrad  %xmm11, %xmm12, %xmm13
1916 // CHECK: encoding: [0xc4,0x41,0x19,0xe2,0xeb]
1917           vpsrad  %xmm11, %xmm12, %xmm13
1918
1919 // CHECK: vpsrad  (%rax), %xmm12, %xmm13
1920 // CHECK: encoding: [0xc5,0x19,0xe2,0x28]
1921           vpsrad  (%rax), %xmm12, %xmm13
1922
1923 // CHECK: vpsrlw  %xmm11, %xmm12, %xmm13
1924 // CHECK: encoding: [0xc4,0x41,0x19,0xd1,0xeb]
1925           vpsrlw  %xmm11, %xmm12, %xmm13
1926
1927 // CHECK: vpsrlw  (%rax), %xmm12, %xmm13
1928 // CHECK: encoding: [0xc5,0x19,0xd1,0x28]
1929           vpsrlw  (%rax), %xmm12, %xmm13
1930
1931 // CHECK: vpsrld  %xmm11, %xmm12, %xmm13
1932 // CHECK: encoding: [0xc4,0x41,0x19,0xd2,0xeb]
1933           vpsrld  %xmm11, %xmm12, %xmm13
1934
1935 // CHECK: vpsrld  (%rax), %xmm12, %xmm13
1936 // CHECK: encoding: [0xc5,0x19,0xd2,0x28]
1937           vpsrld  (%rax), %xmm12, %xmm13
1938
1939 // CHECK: vpsrlq  %xmm11, %xmm12, %xmm13
1940 // CHECK: encoding: [0xc4,0x41,0x19,0xd3,0xeb]
1941           vpsrlq  %xmm11, %xmm12, %xmm13
1942
1943 // CHECK: vpsrlq  (%rax), %xmm12, %xmm13
1944 // CHECK: encoding: [0xc5,0x19,0xd3,0x28]
1945           vpsrlq  (%rax), %xmm12, %xmm13
1946
1947 // CHECK: vpslld  $10, %xmm12, %xmm13
1948 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xf4,0x0a]
1949           vpslld  $10, %xmm12, %xmm13
1950
1951 // CHECK: vpslldq  $10, %xmm12, %xmm13
1952 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xfc,0x0a]
1953           vpslldq  $10, %xmm12, %xmm13
1954
1955 // CHECK: vpsllq  $10, %xmm12, %xmm13
1956 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xf4,0x0a]
1957           vpsllq  $10, %xmm12, %xmm13
1958
1959 // CHECK: vpsllw  $10, %xmm12, %xmm13
1960 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xf4,0x0a]
1961           vpsllw  $10, %xmm12, %xmm13
1962
1963 // CHECK: vpsrad  $10, %xmm12, %xmm13
1964 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xe4,0x0a]
1965           vpsrad  $10, %xmm12, %xmm13
1966
1967 // CHECK: vpsraw  $10, %xmm12, %xmm13
1968 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xe4,0x0a]
1969           vpsraw  $10, %xmm12, %xmm13
1970
1971 // CHECK: vpsrld  $10, %xmm12, %xmm13
1972 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xd4,0x0a]
1973           vpsrld  $10, %xmm12, %xmm13
1974
1975 // CHECK: vpsrldq  $10, %xmm12, %xmm13
1976 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xdc,0x0a]
1977           vpsrldq  $10, %xmm12, %xmm13
1978
1979 // CHECK: vpsrlq  $10, %xmm12, %xmm13
1980 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xd4,0x0a]
1981           vpsrlq  $10, %xmm12, %xmm13
1982
1983 // CHECK: vpsrlw  $10, %xmm12, %xmm13
1984 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xd4,0x0a]
1985           vpsrlw  $10, %xmm12, %xmm13
1986
1987 // CHECK: vpslld  $10, %xmm12, %xmm13
1988 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xf4,0x0a]
1989           vpslld  $10, %xmm12, %xmm13
1990
1991 // CHECK: vpand  %xmm11, %xmm12, %xmm13
1992 // CHECK: encoding: [0xc4,0x41,0x19,0xdb,0xeb]
1993           vpand  %xmm11, %xmm12, %xmm13
1994
1995 // CHECK: vpand  (%rax), %xmm12, %xmm13
1996 // CHECK: encoding: [0xc5,0x19,0xdb,0x28]
1997           vpand  (%rax), %xmm12, %xmm13
1998
1999 // CHECK: vpor  %xmm11, %xmm12, %xmm13
2000 // CHECK: encoding: [0xc4,0x41,0x19,0xeb,0xeb]
2001           vpor  %xmm11, %xmm12, %xmm13
2002
2003 // CHECK: vpor  (%rax), %xmm12, %xmm13
2004 // CHECK: encoding: [0xc5,0x19,0xeb,0x28]
2005           vpor  (%rax), %xmm12, %xmm13
2006
2007 // CHECK: vpxor  %xmm11, %xmm12, %xmm13
2008 // CHECK: encoding: [0xc4,0x41,0x19,0xef,0xeb]
2009           vpxor  %xmm11, %xmm12, %xmm13
2010
2011 // CHECK: vpxor  (%rax), %xmm12, %xmm13
2012 // CHECK: encoding: [0xc5,0x19,0xef,0x28]
2013           vpxor  (%rax), %xmm12, %xmm13
2014
2015 // CHECK: vpandn  %xmm11, %xmm12, %xmm13
2016 // CHECK: encoding: [0xc4,0x41,0x19,0xdf,0xeb]
2017           vpandn  %xmm11, %xmm12, %xmm13
2018
2019 // CHECK: vpandn  (%rax), %xmm12, %xmm13
2020 // CHECK: encoding: [0xc5,0x19,0xdf,0x28]
2021           vpandn  (%rax), %xmm12, %xmm13
2022
2023 // CHECK: vpcmpeqb  %xmm11, %xmm12, %xmm13
2024 // CHECK: encoding: [0xc4,0x41,0x19,0x74,0xeb]
2025           vpcmpeqb  %xmm11, %xmm12, %xmm13
2026
2027 // CHECK: vpcmpeqb  (%rax), %xmm12, %xmm13
2028 // CHECK: encoding: [0xc5,0x19,0x74,0x28]
2029           vpcmpeqb  (%rax), %xmm12, %xmm13
2030
2031 // CHECK: vpcmpeqw  %xmm11, %xmm12, %xmm13
2032 // CHECK: encoding: [0xc4,0x41,0x19,0x75,0xeb]
2033           vpcmpeqw  %xmm11, %xmm12, %xmm13
2034
2035 // CHECK: vpcmpeqw  (%rax), %xmm12, %xmm13
2036 // CHECK: encoding: [0xc5,0x19,0x75,0x28]
2037           vpcmpeqw  (%rax), %xmm12, %xmm13
2038
2039 // CHECK: vpcmpeqd  %xmm11, %xmm12, %xmm13
2040 // CHECK: encoding: [0xc4,0x41,0x19,0x76,0xeb]
2041           vpcmpeqd  %xmm11, %xmm12, %xmm13
2042
2043 // CHECK: vpcmpeqd  (%rax), %xmm12, %xmm13
2044 // CHECK: encoding: [0xc5,0x19,0x76,0x28]
2045           vpcmpeqd  (%rax), %xmm12, %xmm13
2046
2047 // CHECK: vpcmpgtb  %xmm11, %xmm12, %xmm13
2048 // CHECK: encoding: [0xc4,0x41,0x19,0x64,0xeb]
2049           vpcmpgtb  %xmm11, %xmm12, %xmm13
2050
2051 // CHECK: vpcmpgtb  (%rax), %xmm12, %xmm13
2052 // CHECK: encoding: [0xc5,0x19,0x64,0x28]
2053           vpcmpgtb  (%rax), %xmm12, %xmm13
2054
2055 // CHECK: vpcmpgtw  %xmm11, %xmm12, %xmm13
2056 // CHECK: encoding: [0xc4,0x41,0x19,0x65,0xeb]
2057           vpcmpgtw  %xmm11, %xmm12, %xmm13
2058
2059 // CHECK: vpcmpgtw  (%rax), %xmm12, %xmm13
2060 // CHECK: encoding: [0xc5,0x19,0x65,0x28]
2061           vpcmpgtw  (%rax), %xmm12, %xmm13
2062
2063 // CHECK: vpcmpgtd  %xmm11, %xmm12, %xmm13
2064 // CHECK: encoding: [0xc4,0x41,0x19,0x66,0xeb]
2065           vpcmpgtd  %xmm11, %xmm12, %xmm13
2066
2067 // CHECK: vpcmpgtd  (%rax), %xmm12, %xmm13
2068 // CHECK: encoding: [0xc5,0x19,0x66,0x28]
2069           vpcmpgtd  (%rax), %xmm12, %xmm13
2070
2071 // CHECK: vpacksswb  %xmm11, %xmm12, %xmm13
2072 // CHECK: encoding: [0xc4,0x41,0x19,0x63,0xeb]
2073           vpacksswb  %xmm11, %xmm12, %xmm13
2074
2075 // CHECK: vpacksswb  (%rax), %xmm12, %xmm13
2076 // CHECK: encoding: [0xc5,0x19,0x63,0x28]
2077           vpacksswb  (%rax), %xmm12, %xmm13
2078
2079 // CHECK: vpackssdw  %xmm11, %xmm12, %xmm13
2080 // CHECK: encoding: [0xc4,0x41,0x19,0x6b,0xeb]
2081           vpackssdw  %xmm11, %xmm12, %xmm13
2082
2083 // CHECK: vpackssdw  (%rax), %xmm12, %xmm13
2084 // CHECK: encoding: [0xc5,0x19,0x6b,0x28]
2085           vpackssdw  (%rax), %xmm12, %xmm13
2086
2087 // CHECK: vpackuswb  %xmm11, %xmm12, %xmm13
2088 // CHECK: encoding: [0xc4,0x41,0x19,0x67,0xeb]
2089           vpackuswb  %xmm11, %xmm12, %xmm13
2090
2091 // CHECK: vpackuswb  (%rax), %xmm12, %xmm13
2092 // CHECK: encoding: [0xc5,0x19,0x67,0x28]
2093           vpackuswb  (%rax), %xmm12, %xmm13
2094
2095 // CHECK: vpshufd  $4, %xmm12, %xmm13
2096 // CHECK: encoding: [0xc4,0x41,0x79,0x70,0xec,0x04]
2097           vpshufd  $4, %xmm12, %xmm13
2098
2099 // CHECK: vpshufd  $4, (%rax), %xmm13
2100 // CHECK: encoding: [0xc5,0x79,0x70,0x28,0x04]
2101           vpshufd  $4, (%rax), %xmm13
2102
2103 // CHECK: vpshufhw  $4, %xmm12, %xmm13
2104 // CHECK: encoding: [0xc4,0x41,0x7a,0x70,0xec,0x04]
2105           vpshufhw  $4, %xmm12, %xmm13
2106
2107 // CHECK: vpshufhw  $4, (%rax), %xmm13
2108 // CHECK: encoding: [0xc5,0x7a,0x70,0x28,0x04]
2109           vpshufhw  $4, (%rax), %xmm13
2110
2111 // CHECK: vpshuflw  $4, %xmm12, %xmm13
2112 // CHECK: encoding: [0xc4,0x41,0x7b,0x70,0xec,0x04]
2113           vpshuflw  $4, %xmm12, %xmm13
2114
2115 // CHECK: vpshuflw  $4, (%rax), %xmm13
2116 // CHECK: encoding: [0xc5,0x7b,0x70,0x28,0x04]
2117           vpshuflw  $4, (%rax), %xmm13
2118
2119 // CHECK: vpunpcklbw  %xmm11, %xmm12, %xmm13
2120 // CHECK: encoding: [0xc4,0x41,0x19,0x60,0xeb]
2121           vpunpcklbw  %xmm11, %xmm12, %xmm13
2122
2123 // CHECK: vpunpcklbw  (%rax), %xmm12, %xmm13
2124 // CHECK: encoding: [0xc5,0x19,0x60,0x28]
2125           vpunpcklbw  (%rax), %xmm12, %xmm13
2126
2127 // CHECK: vpunpcklwd  %xmm11, %xmm12, %xmm13
2128 // CHECK: encoding: [0xc4,0x41,0x19,0x61,0xeb]
2129           vpunpcklwd  %xmm11, %xmm12, %xmm13
2130
2131 // CHECK: vpunpcklwd  (%rax), %xmm12, %xmm13
2132 // CHECK: encoding: [0xc5,0x19,0x61,0x28]
2133           vpunpcklwd  (%rax), %xmm12, %xmm13
2134
2135 // CHECK: vpunpckldq  %xmm11, %xmm12, %xmm13
2136 // CHECK: encoding: [0xc4,0x41,0x19,0x62,0xeb]
2137           vpunpckldq  %xmm11, %xmm12, %xmm13
2138
2139 // CHECK: vpunpckldq  (%rax), %xmm12, %xmm13
2140 // CHECK: encoding: [0xc5,0x19,0x62,0x28]
2141           vpunpckldq  (%rax), %xmm12, %xmm13
2142
2143 // CHECK: vpunpcklqdq  %xmm11, %xmm12, %xmm13
2144 // CHECK: encoding: [0xc4,0x41,0x19,0x6c,0xeb]
2145           vpunpcklqdq  %xmm11, %xmm12, %xmm13
2146
2147 // CHECK: vpunpcklqdq  (%rax), %xmm12, %xmm13
2148 // CHECK: encoding: [0xc5,0x19,0x6c,0x28]
2149           vpunpcklqdq  (%rax), %xmm12, %xmm13
2150
2151 // CHECK: vpunpckhbw  %xmm11, %xmm12, %xmm13
2152 // CHECK: encoding: [0xc4,0x41,0x19,0x68,0xeb]
2153           vpunpckhbw  %xmm11, %xmm12, %xmm13
2154
2155 // CHECK: vpunpckhbw  (%rax), %xmm12, %xmm13
2156 // CHECK: encoding: [0xc5,0x19,0x68,0x28]
2157           vpunpckhbw  (%rax), %xmm12, %xmm13
2158
2159 // CHECK: vpunpckhwd  %xmm11, %xmm12, %xmm13
2160 // CHECK: encoding: [0xc4,0x41,0x19,0x69,0xeb]
2161           vpunpckhwd  %xmm11, %xmm12, %xmm13
2162
2163 // CHECK: vpunpckhwd  (%rax), %xmm12, %xmm13
2164 // CHECK: encoding: [0xc5,0x19,0x69,0x28]
2165           vpunpckhwd  (%rax), %xmm12, %xmm13
2166
2167 // CHECK: vpunpckhdq  %xmm11, %xmm12, %xmm13
2168 // CHECK: encoding: [0xc4,0x41,0x19,0x6a,0xeb]
2169           vpunpckhdq  %xmm11, %xmm12, %xmm13
2170
2171 // CHECK: vpunpckhdq  (%rax), %xmm12, %xmm13
2172 // CHECK: encoding: [0xc5,0x19,0x6a,0x28]
2173           vpunpckhdq  (%rax), %xmm12, %xmm13
2174
2175 // CHECK: vpunpckhqdq  %xmm11, %xmm12, %xmm13
2176 // CHECK: encoding: [0xc4,0x41,0x19,0x6d,0xeb]
2177           vpunpckhqdq  %xmm11, %xmm12, %xmm13
2178
2179 // CHECK: vpunpckhqdq  (%rax), %xmm12, %xmm13
2180 // CHECK: encoding: [0xc5,0x19,0x6d,0x28]
2181           vpunpckhqdq  (%rax), %xmm12, %xmm13
2182
2183 // CHECK: vpinsrw  $7, %eax, %xmm12, %xmm13
2184 // CHECK: encoding: [0xc5,0x19,0xc4,0xe8,0x07]
2185           vpinsrw  $7, %eax, %xmm12, %xmm13
2186
2187 // CHECK: vpinsrw  $7, (%rax), %xmm12, %xmm13
2188 // CHECK: encoding: [0xc5,0x19,0xc4,0x28,0x07]
2189           vpinsrw  $7, (%rax), %xmm12, %xmm13
2190
2191 // CHECK: vpextrw  $7, %xmm12, %eax
2192 // CHECK: encoding: [0xc4,0xc1,0x79,0xc5,0xc4,0x07]
2193           vpextrw  $7, %xmm12, %eax
2194
2195 // CHECK: vpmovmskb  %xmm12, %eax
2196 // CHECK: encoding: [0xc4,0xc1,0x79,0xd7,0xc4]
2197           vpmovmskb  %xmm12, %eax
2198
2199 // CHECK: vmaskmovdqu  %xmm14, %xmm15
2200 // CHECK: encoding: [0xc4,0x41,0x79,0xf7,0xfe]
2201           vmaskmovdqu  %xmm14, %xmm15
2202
2203 // CHECK: vmovd  %eax, %xmm14
2204 // CHECK: encoding: [0xc5,0x79,0x6e,0xf0]
2205           vmovd  %eax, %xmm14
2206
2207 // CHECK: vmovd  (%rax), %xmm14
2208 // CHECK: encoding: [0xc5,0x79,0x6e,0x30]
2209           vmovd  (%rax), %xmm14
2210
2211 // CHECK: vmovd  %xmm14, (%rax)
2212 // CHECK: encoding: [0xc5,0x79,0x7e,0x30]
2213           vmovd  %xmm14, (%rax)
2214
2215 // CHECK: vmovq  %rax, %xmm14
2216 // CHECK: encoding: [0xc4,0x61,0xf9,0x6e,0xf0]
2217           vmovd  %rax, %xmm14
2218
2219 // CHECK: vmovq %xmm0, %rax
2220 // CHECK: encoding: [0xc4,0xe1,0xf9,0x7e,0xc0]
2221           vmovd %xmm0, %rax
2222
2223 // CHECK: vmovq  %xmm14, (%rax)
2224 // CHECK: encoding: [0xc5,0x79,0xd6,0x30]
2225           vmovq  %xmm14, (%rax)
2226
2227 // CHECK: vmovq  %xmm14, %xmm12
2228 // CHECK: encoding: [0xc4,0x41,0x7a,0x7e,0xe6]
2229           vmovq  %xmm14, %xmm12
2230
2231 // CHECK: vmovq  (%rax), %xmm14
2232 // CHECK: encoding: [0xc5,0x7a,0x7e,0x30]
2233           vmovq  (%rax), %xmm14
2234
2235 // CHECK: vmovq  %rax, %xmm14
2236 // CHECK: encoding: [0xc4,0x61,0xf9,0x6e,0xf0]
2237           vmovq  %rax, %xmm14
2238
2239 // CHECK: vmovq  %xmm14, %rax
2240 // CHECK: encoding: [0xc4,0x61,0xf9,0x7e,0xf0]
2241           vmovq  %xmm14, %rax
2242
2243 // CHECK: vcvtpd2dq  %xmm11, %xmm12
2244 // CHECK: encoding: [0xc4,0x41,0x7b,0xe6,0xe3]
2245           vcvtpd2dq  %xmm11, %xmm12
2246
2247 // CHECK: vcvtdq2pd  %xmm11, %xmm12
2248 // CHECK: encoding: [0xc4,0x41,0x7a,0xe6,0xe3]
2249           vcvtdq2pd  %xmm11, %xmm12
2250
2251 // CHECK: vcvtdq2pd  (%rax), %xmm12
2252 // CHECK: encoding: [0xc5,0x7a,0xe6,0x20]
2253           vcvtdq2pd  (%rax), %xmm12
2254
2255 // CHECK: vmovshdup  %xmm11, %xmm12
2256 // CHECK: encoding: [0xc4,0x41,0x7a,0x16,0xe3]
2257           vmovshdup  %xmm11, %xmm12
2258
2259 // CHECK: vmovshdup  (%rax), %xmm12
2260 // CHECK: encoding: [0xc5,0x7a,0x16,0x20]
2261           vmovshdup  (%rax), %xmm12
2262
2263 // CHECK: vmovsldup  %xmm11, %xmm12
2264 // CHECK: encoding: [0xc4,0x41,0x7a,0x12,0xe3]
2265           vmovsldup  %xmm11, %xmm12
2266
2267 // CHECK: vmovsldup  (%rax), %xmm12
2268 // CHECK: encoding: [0xc5,0x7a,0x12,0x20]
2269           vmovsldup  (%rax), %xmm12
2270
2271 // CHECK: vmovddup  %xmm11, %xmm12
2272 // CHECK: encoding: [0xc4,0x41,0x7b,0x12,0xe3]
2273           vmovddup  %xmm11, %xmm12
2274
2275 // CHECK: vmovddup  (%rax), %xmm12
2276 // CHECK: encoding: [0xc5,0x7b,0x12,0x20]
2277           vmovddup  (%rax), %xmm12
2278
2279 // CHECK: vaddsubps  %xmm11, %xmm12, %xmm13
2280 // CHECK: encoding: [0xc4,0x41,0x1b,0xd0,0xeb]
2281           vaddsubps  %xmm11, %xmm12, %xmm13
2282
2283 // CHECK: vaddsubps  (%rax), %xmm11, %xmm12
2284 // CHECK: encoding: [0xc5,0x23,0xd0,0x20]
2285           vaddsubps  (%rax), %xmm11, %xmm12
2286
2287 // CHECK: vaddsubpd  %xmm11, %xmm12, %xmm13
2288 // CHECK: encoding: [0xc4,0x41,0x19,0xd0,0xeb]
2289           vaddsubpd  %xmm11, %xmm12, %xmm13
2290
2291 // CHECK: vaddsubpd  (%rax), %xmm11, %xmm12
2292 // CHECK: encoding: [0xc5,0x21,0xd0,0x20]
2293           vaddsubpd  (%rax), %xmm11, %xmm12
2294
2295 // CHECK: vhaddps  %xmm11, %xmm12, %xmm13
2296 // CHECK: encoding: [0xc4,0x41,0x1b,0x7c,0xeb]
2297           vhaddps  %xmm11, %xmm12, %xmm13
2298
2299 // CHECK: vhaddps  (%rax), %xmm12, %xmm13
2300 // CHECK: encoding: [0xc5,0x1b,0x7c,0x28]
2301           vhaddps  (%rax), %xmm12, %xmm13
2302
2303 // CHECK: vhaddpd  %xmm11, %xmm12, %xmm13
2304 // CHECK: encoding: [0xc4,0x41,0x19,0x7c,0xeb]
2305           vhaddpd  %xmm11, %xmm12, %xmm13
2306
2307 // CHECK: vhaddpd  (%rax), %xmm12, %xmm13
2308 // CHECK: encoding: [0xc5,0x19,0x7c,0x28]
2309           vhaddpd  (%rax), %xmm12, %xmm13
2310
2311 // CHECK: vhsubps  %xmm11, %xmm12, %xmm13
2312 // CHECK: encoding: [0xc4,0x41,0x1b,0x7d,0xeb]
2313           vhsubps  %xmm11, %xmm12, %xmm13
2314
2315 // CHECK: vhsubps  (%rax), %xmm12, %xmm13
2316 // CHECK: encoding: [0xc5,0x1b,0x7d,0x28]
2317           vhsubps  (%rax), %xmm12, %xmm13
2318
2319 // CHECK: vhsubpd  %xmm11, %xmm12, %xmm13
2320 // CHECK: encoding: [0xc4,0x41,0x19,0x7d,0xeb]
2321           vhsubpd  %xmm11, %xmm12, %xmm13
2322
2323 // CHECK: vhsubpd  (%rax), %xmm12, %xmm13
2324 // CHECK: encoding: [0xc5,0x19,0x7d,0x28]
2325           vhsubpd  (%rax), %xmm12, %xmm13
2326
2327 // CHECK: vpabsb  %xmm11, %xmm12
2328 // CHECK: encoding: [0xc4,0x42,0x79,0x1c,0xe3]
2329           vpabsb  %xmm11, %xmm12
2330
2331 // CHECK: vpabsb  (%rax), %xmm12
2332 // CHECK: encoding: [0xc4,0x62,0x79,0x1c,0x20]
2333           vpabsb  (%rax), %xmm12
2334
2335 // CHECK: vpabsw  %xmm11, %xmm12
2336 // CHECK: encoding: [0xc4,0x42,0x79,0x1d,0xe3]
2337           vpabsw  %xmm11, %xmm12
2338
2339 // CHECK: vpabsw  (%rax), %xmm12
2340 // CHECK: encoding: [0xc4,0x62,0x79,0x1d,0x20]
2341           vpabsw  (%rax), %xmm12
2342
2343 // CHECK: vpabsd  %xmm11, %xmm12
2344 // CHECK: encoding: [0xc4,0x42,0x79,0x1e,0xe3]
2345           vpabsd  %xmm11, %xmm12
2346
2347 // CHECK: vpabsd  (%rax), %xmm12
2348 // CHECK: encoding: [0xc4,0x62,0x79,0x1e,0x20]
2349           vpabsd  (%rax), %xmm12
2350
2351 // CHECK: vphaddw  %xmm11, %xmm12, %xmm13
2352 // CHECK: encoding: [0xc4,0x42,0x19,0x01,0xeb]
2353           vphaddw  %xmm11, %xmm12, %xmm13
2354
2355 // CHECK: vphaddw  (%rax), %xmm12, %xmm13
2356 // CHECK: encoding: [0xc4,0x62,0x19,0x01,0x28]
2357           vphaddw  (%rax), %xmm12, %xmm13
2358
2359 // CHECK: vphaddd  %xmm11, %xmm12, %xmm13
2360 // CHECK: encoding: [0xc4,0x42,0x19,0x02,0xeb]
2361           vphaddd  %xmm11, %xmm12, %xmm13
2362
2363 // CHECK: vphaddd  (%rax), %xmm12, %xmm13
2364 // CHECK: encoding: [0xc4,0x62,0x19,0x02,0x28]
2365           vphaddd  (%rax), %xmm12, %xmm13
2366
2367 // CHECK: vphaddsw  %xmm11, %xmm12, %xmm13
2368 // CHECK: encoding: [0xc4,0x42,0x19,0x03,0xeb]
2369           vphaddsw  %xmm11, %xmm12, %xmm13
2370
2371 // CHECK: vphaddsw  (%rax), %xmm12, %xmm13
2372 // CHECK: encoding: [0xc4,0x62,0x19,0x03,0x28]
2373           vphaddsw  (%rax), %xmm12, %xmm13
2374
2375 // CHECK: vphsubw  %xmm11, %xmm12, %xmm13
2376 // CHECK: encoding: [0xc4,0x42,0x19,0x05,0xeb]
2377           vphsubw  %xmm11, %xmm12, %xmm13
2378
2379 // CHECK: vphsubw  (%rax), %xmm12, %xmm13
2380 // CHECK: encoding: [0xc4,0x62,0x19,0x05,0x28]
2381           vphsubw  (%rax), %xmm12, %xmm13
2382
2383 // CHECK: vphsubd  %xmm11, %xmm12, %xmm13
2384 // CHECK: encoding: [0xc4,0x42,0x19,0x06,0xeb]
2385           vphsubd  %xmm11, %xmm12, %xmm13
2386
2387 // CHECK: vphsubd  (%rax), %xmm12, %xmm13
2388 // CHECK: encoding: [0xc4,0x62,0x19,0x06,0x28]
2389           vphsubd  (%rax), %xmm12, %xmm13
2390
2391 // CHECK: vphsubsw  %xmm11, %xmm12, %xmm13
2392 // CHECK: encoding: [0xc4,0x42,0x19,0x07,0xeb]
2393           vphsubsw  %xmm11, %xmm12, %xmm13
2394
2395 // CHECK: vphsubsw  (%rax), %xmm12, %xmm13
2396 // CHECK: encoding: [0xc4,0x62,0x19,0x07,0x28]
2397           vphsubsw  (%rax), %xmm12, %xmm13
2398
2399 // CHECK: vpmaddubsw  %xmm11, %xmm12, %xmm13
2400 // CHECK: encoding: [0xc4,0x42,0x19,0x04,0xeb]
2401           vpmaddubsw  %xmm11, %xmm12, %xmm13
2402
2403 // CHECK: vpmaddubsw  (%rax), %xmm12, %xmm13
2404 // CHECK: encoding: [0xc4,0x62,0x19,0x04,0x28]
2405           vpmaddubsw  (%rax), %xmm12, %xmm13
2406
2407 // CHECK: vpshufb  %xmm11, %xmm12, %xmm13
2408 // CHECK: encoding: [0xc4,0x42,0x19,0x00,0xeb]
2409           vpshufb  %xmm11, %xmm12, %xmm13
2410
2411 // CHECK: vpshufb  (%rax), %xmm12, %xmm13
2412 // CHECK: encoding: [0xc4,0x62,0x19,0x00,0x28]
2413           vpshufb  (%rax), %xmm12, %xmm13
2414
2415 // CHECK: vpsignb  %xmm11, %xmm12, %xmm13
2416 // CHECK: encoding: [0xc4,0x42,0x19,0x08,0xeb]
2417           vpsignb  %xmm11, %xmm12, %xmm13
2418
2419 // CHECK: vpsignb  (%rax), %xmm12, %xmm13
2420 // CHECK: encoding: [0xc4,0x62,0x19,0x08,0x28]
2421           vpsignb  (%rax), %xmm12, %xmm13
2422
2423 // CHECK: vpsignw  %xmm11, %xmm12, %xmm13
2424 // CHECK: encoding: [0xc4,0x42,0x19,0x09,0xeb]
2425           vpsignw  %xmm11, %xmm12, %xmm13
2426
2427 // CHECK: vpsignw  (%rax), %xmm12, %xmm13
2428 // CHECK: encoding: [0xc4,0x62,0x19,0x09,0x28]
2429           vpsignw  (%rax), %xmm12, %xmm13
2430
2431 // CHECK: vpsignd  %xmm11, %xmm12, %xmm13
2432 // CHECK: encoding: [0xc4,0x42,0x19,0x0a,0xeb]
2433           vpsignd  %xmm11, %xmm12, %xmm13
2434
2435 // CHECK: vpsignd  (%rax), %xmm12, %xmm13
2436 // CHECK: encoding: [0xc4,0x62,0x19,0x0a,0x28]
2437           vpsignd  (%rax), %xmm12, %xmm13
2438
2439 // CHECK: vpmulhrsw  %xmm11, %xmm12, %xmm13
2440 // CHECK: encoding: [0xc4,0x42,0x19,0x0b,0xeb]
2441           vpmulhrsw  %xmm11, %xmm12, %xmm13
2442
2443 // CHECK: vpmulhrsw  (%rax), %xmm12, %xmm13
2444 // CHECK: encoding: [0xc4,0x62,0x19,0x0b,0x28]
2445           vpmulhrsw  (%rax), %xmm12, %xmm13
2446
2447 // CHECK: vpalignr  $7, %xmm11, %xmm12, %xmm13
2448 // CHECK: encoding: [0xc4,0x43,0x19,0x0f,0xeb,0x07]
2449           vpalignr  $7, %xmm11, %xmm12, %xmm13
2450
2451 // CHECK: vpalignr  $7, (%rax), %xmm12, %xmm13
2452 // CHECK: encoding: [0xc4,0x63,0x19,0x0f,0x28,0x07]
2453           vpalignr  $7, (%rax), %xmm12, %xmm13
2454
2455 // CHECK: vroundsd  $7, %xmm11, %xmm12, %xmm13
2456 // CHECK: encoding: [0xc4,0x43,0x19,0x0b,0xeb,0x07]
2457           vroundsd  $7, %xmm11, %xmm12, %xmm13
2458
2459 // CHECK: vroundsd  $7, (%rax), %xmm12, %xmm13
2460 // CHECK: encoding: [0xc4,0x63,0x19,0x0b,0x28,0x07]
2461           vroundsd  $7, (%rax), %xmm12, %xmm13
2462
2463 // CHECK: vroundss  $7, %xmm11, %xmm12, %xmm13
2464 // CHECK: encoding: [0xc4,0x43,0x19,0x0a,0xeb,0x07]
2465           vroundss  $7, %xmm11, %xmm12, %xmm13
2466
2467 // CHECK: vroundss  $7, (%rax), %xmm12, %xmm13
2468 // CHECK: encoding: [0xc4,0x63,0x19,0x0a,0x28,0x07]
2469           vroundss  $7, (%rax), %xmm12, %xmm13
2470
2471 // CHECK: vroundpd  $7, %xmm12, %xmm13
2472 // CHECK: encoding: [0xc4,0x43,0x79,0x09,0xec,0x07]
2473           vroundpd  $7, %xmm12, %xmm13
2474
2475 // CHECK: vroundpd  $7, (%rax), %xmm13
2476 // CHECK: encoding: [0xc4,0x63,0x79,0x09,0x28,0x07]
2477           vroundpd  $7, (%rax), %xmm13
2478
2479 // CHECK: vroundps  $7, %xmm12, %xmm13
2480 // CHECK: encoding: [0xc4,0x43,0x79,0x08,0xec,0x07]
2481           vroundps  $7, %xmm12, %xmm13
2482
2483 // CHECK: vroundps  $7, (%rax), %xmm13
2484 // CHECK: encoding: [0xc4,0x63,0x79,0x08,0x28,0x07]
2485           vroundps  $7, (%rax), %xmm13
2486
2487 // CHECK: vphminposuw  %xmm12, %xmm13
2488 // CHECK: encoding: [0xc4,0x42,0x79,0x41,0xec]
2489           vphminposuw  %xmm12, %xmm13
2490
2491 // CHECK: vphminposuw  (%rax), %xmm12
2492 // CHECK: encoding: [0xc4,0x62,0x79,0x41,0x20]
2493           vphminposuw  (%rax), %xmm12
2494
2495 // CHECK: vpackusdw  %xmm12, %xmm13, %xmm11
2496 // CHECK: encoding: [0xc4,0x42,0x11,0x2b,0xdc]
2497           vpackusdw  %xmm12, %xmm13, %xmm11
2498
2499 // CHECK: vpackusdw  (%rax), %xmm12, %xmm13
2500 // CHECK: encoding: [0xc4,0x62,0x19,0x2b,0x28]
2501           vpackusdw  (%rax), %xmm12, %xmm13
2502
2503 // CHECK: vpcmpeqq  %xmm12, %xmm13, %xmm11
2504 // CHECK: encoding: [0xc4,0x42,0x11,0x29,0xdc]
2505           vpcmpeqq  %xmm12, %xmm13, %xmm11
2506
2507 // CHECK: vpcmpeqq  (%rax), %xmm12, %xmm13
2508 // CHECK: encoding: [0xc4,0x62,0x19,0x29,0x28]
2509           vpcmpeqq  (%rax), %xmm12, %xmm13
2510
2511 // CHECK: vpminsb  %xmm12, %xmm13, %xmm11
2512 // CHECK: encoding: [0xc4,0x42,0x11,0x38,0xdc]
2513           vpminsb  %xmm12, %xmm13, %xmm11
2514
2515 // CHECK: vpminsb  (%rax), %xmm12, %xmm13
2516 // CHECK: encoding: [0xc4,0x62,0x19,0x38,0x28]
2517           vpminsb  (%rax), %xmm12, %xmm13
2518
2519 // CHECK: vpminsd  %xmm12, %xmm13, %xmm11
2520 // CHECK: encoding: [0xc4,0x42,0x11,0x39,0xdc]
2521           vpminsd  %xmm12, %xmm13, %xmm11
2522
2523 // CHECK: vpminsd  (%rax), %xmm12, %xmm13
2524 // CHECK: encoding: [0xc4,0x62,0x19,0x39,0x28]
2525           vpminsd  (%rax), %xmm12, %xmm13
2526
2527 // CHECK: vpminud  %xmm12, %xmm13, %xmm11
2528 // CHECK: encoding: [0xc4,0x42,0x11,0x3b,0xdc]
2529           vpminud  %xmm12, %xmm13, %xmm11
2530
2531 // CHECK: vpminud  (%rax), %xmm12, %xmm13
2532 // CHECK: encoding: [0xc4,0x62,0x19,0x3b,0x28]
2533           vpminud  (%rax), %xmm12, %xmm13
2534
2535 // CHECK: vpminuw  %xmm12, %xmm13, %xmm11
2536 // CHECK: encoding: [0xc4,0x42,0x11,0x3a,0xdc]
2537           vpminuw  %xmm12, %xmm13, %xmm11
2538
2539 // CHECK: vpminuw  (%rax), %xmm12, %xmm13
2540 // CHECK: encoding: [0xc4,0x62,0x19,0x3a,0x28]
2541           vpminuw  (%rax), %xmm12, %xmm13
2542
2543 // CHECK: vpmaxsb  %xmm12, %xmm13, %xmm11
2544 // CHECK: encoding: [0xc4,0x42,0x11,0x3c,0xdc]
2545           vpmaxsb  %xmm12, %xmm13, %xmm11
2546
2547 // CHECK: vpmaxsb  (%rax), %xmm12, %xmm13
2548 // CHECK: encoding: [0xc4,0x62,0x19,0x3c,0x28]
2549           vpmaxsb  (%rax), %xmm12, %xmm13
2550
2551 // CHECK: vpmaxsd  %xmm12, %xmm13, %xmm11
2552 // CHECK: encoding: [0xc4,0x42,0x11,0x3d,0xdc]
2553           vpmaxsd  %xmm12, %xmm13, %xmm11
2554
2555 // CHECK: vpmaxsd  (%rax), %xmm12, %xmm13
2556 // CHECK: encoding: [0xc4,0x62,0x19,0x3d,0x28]
2557           vpmaxsd  (%rax), %xmm12, %xmm13
2558
2559 // CHECK: vpmaxud  %xmm12, %xmm13, %xmm11
2560 // CHECK: encoding: [0xc4,0x42,0x11,0x3f,0xdc]
2561           vpmaxud  %xmm12, %xmm13, %xmm11
2562
2563 // CHECK: vpmaxud  (%rax), %xmm12, %xmm13
2564 // CHECK: encoding: [0xc4,0x62,0x19,0x3f,0x28]
2565           vpmaxud  (%rax), %xmm12, %xmm13
2566
2567 // CHECK: vpmaxuw  %xmm12, %xmm13, %xmm11
2568 // CHECK: encoding: [0xc4,0x42,0x11,0x3e,0xdc]
2569           vpmaxuw  %xmm12, %xmm13, %xmm11
2570
2571 // CHECK: vpmaxuw  (%rax), %xmm12, %xmm13
2572 // CHECK: encoding: [0xc4,0x62,0x19,0x3e,0x28]
2573           vpmaxuw  (%rax), %xmm12, %xmm13
2574
2575 // CHECK: vpmuldq  %xmm12, %xmm13, %xmm11
2576 // CHECK: encoding: [0xc4,0x42,0x11,0x28,0xdc]
2577           vpmuldq  %xmm12, %xmm13, %xmm11
2578
2579 // CHECK: vpmuldq  (%rax), %xmm12, %xmm13
2580 // CHECK: encoding: [0xc4,0x62,0x19,0x28,0x28]
2581           vpmuldq  (%rax), %xmm12, %xmm13
2582
2583 // CHECK: vpmulld  %xmm12, %xmm5, %xmm11
2584 // CHECK: encoding: [0xc4,0x42,0x51,0x40,0xdc]
2585           vpmulld  %xmm12, %xmm5, %xmm11
2586
2587 // CHECK: vpmulld  (%rax), %xmm5, %xmm13
2588 // CHECK: encoding: [0xc4,0x62,0x51,0x40,0x28]
2589           vpmulld  (%rax), %xmm5, %xmm13
2590
2591 // CHECK: vblendps  $3, %xmm12, %xmm5, %xmm11
2592 // CHECK: encoding: [0xc4,0x43,0x51,0x0c,0xdc,0x03]
2593           vblendps  $3, %xmm12, %xmm5, %xmm11
2594
2595 // CHECK: vblendps  $3, (%rax), %xmm5, %xmm11
2596 // CHECK: encoding: [0xc4,0x63,0x51,0x0c,0x18,0x03]
2597           vblendps  $3, (%rax), %xmm5, %xmm11
2598
2599 // CHECK: vblendpd  $3, %xmm12, %xmm5, %xmm11
2600 // CHECK: encoding: [0xc4,0x43,0x51,0x0d,0xdc,0x03]
2601           vblendpd  $3, %xmm12, %xmm5, %xmm11
2602
2603 // CHECK: vblendpd  $3, (%rax), %xmm5, %xmm11
2604 // CHECK: encoding: [0xc4,0x63,0x51,0x0d,0x18,0x03]
2605           vblendpd  $3, (%rax), %xmm5, %xmm11
2606
2607 // CHECK: vpblendw  $3, %xmm12, %xmm5, %xmm11
2608 // CHECK: encoding: [0xc4,0x43,0x51,0x0e,0xdc,0x03]
2609           vpblendw  $3, %xmm12, %xmm5, %xmm11
2610
2611 // CHECK: vpblendw  $3, (%rax), %xmm5, %xmm11
2612 // CHECK: encoding: [0xc4,0x63,0x51,0x0e,0x18,0x03]
2613           vpblendw  $3, (%rax), %xmm5, %xmm11
2614
2615 // CHECK: vmpsadbw  $3, %xmm12, %xmm5, %xmm11
2616 // CHECK: encoding: [0xc4,0x43,0x51,0x42,0xdc,0x03]
2617           vmpsadbw  $3, %xmm12, %xmm5, %xmm11
2618
2619 // CHECK: vmpsadbw  $3, (%rax), %xmm5, %xmm11
2620 // CHECK: encoding: [0xc4,0x63,0x51,0x42,0x18,0x03]
2621           vmpsadbw  $3, (%rax), %xmm5, %xmm11
2622
2623 // CHECK: vdpps  $3, %xmm12, %xmm5, %xmm11
2624 // CHECK: encoding: [0xc4,0x43,0x51,0x40,0xdc,0x03]
2625           vdpps  $3, %xmm12, %xmm5, %xmm11
2626
2627 // CHECK: vdpps  $3, (%rax), %xmm5, %xmm11
2628 // CHECK: encoding: [0xc4,0x63,0x51,0x40,0x18,0x03]
2629           vdpps  $3, (%rax), %xmm5, %xmm11
2630
2631 // CHECK: vdppd  $3, %xmm12, %xmm5, %xmm11
2632 // CHECK: encoding: [0xc4,0x43,0x51,0x41,0xdc,0x03]
2633           vdppd  $3, %xmm12, %xmm5, %xmm11
2634
2635 // CHECK: vdppd  $3, (%rax), %xmm5, %xmm11
2636 // CHECK: encoding: [0xc4,0x63,0x51,0x41,0x18,0x03]
2637           vdppd  $3, (%rax), %xmm5, %xmm11
2638
2639 // CHECK: vblendvpd  %xmm12, %xmm5, %xmm11, %xmm13
2640 // CHECK: encoding: [0xc4,0x63,0x21,0x4b,0xed,0xc0]
2641           vblendvpd  %xmm12, %xmm5, %xmm11, %xmm13
2642
2643 // CHECK: vblendvpd  %xmm12, (%rax), %xmm11, %xmm13
2644 // CHECK: encoding: [0xc4,0x63,0x21,0x4b,0x28,0xc0]
2645           vblendvpd  %xmm12, (%rax), %xmm11, %xmm13
2646
2647 // CHECK: vblendvps  %xmm12, %xmm5, %xmm11, %xmm13
2648 // CHECK: encoding: [0xc4,0x63,0x21,0x4a,0xed,0xc0]
2649           vblendvps  %xmm12, %xmm5, %xmm11, %xmm13
2650
2651 // CHECK: vblendvps  %xmm12, (%rax), %xmm11, %xmm13
2652 // CHECK: encoding: [0xc4,0x63,0x21,0x4a,0x28,0xc0]
2653           vblendvps  %xmm12, (%rax), %xmm11, %xmm13
2654
2655 // CHECK: vpblendvb  %xmm12, %xmm5, %xmm11, %xmm13
2656 // CHECK: encoding: [0xc4,0x63,0x21,0x4c,0xed,0xc0]
2657           vpblendvb  %xmm12, %xmm5, %xmm11, %xmm13
2658
2659 // CHECK: vpblendvb  %xmm12, (%rax), %xmm11, %xmm13
2660 // CHECK: encoding: [0xc4,0x63,0x21,0x4c,0x28,0xc0]
2661           vpblendvb  %xmm12, (%rax), %xmm11, %xmm13
2662
2663 // CHECK: vpmovsxbw  %xmm12, %xmm10
2664 // CHECK: encoding: [0xc4,0x42,0x79,0x20,0xd4]
2665           vpmovsxbw  %xmm12, %xmm10
2666
2667 // CHECK: vpmovsxbw  (%rax), %xmm12
2668 // CHECK: encoding: [0xc4,0x62,0x79,0x20,0x20]
2669           vpmovsxbw  (%rax), %xmm12
2670
2671 // CHECK: vpmovsxwd  %xmm12, %xmm10
2672 // CHECK: encoding: [0xc4,0x42,0x79,0x23,0xd4]
2673           vpmovsxwd  %xmm12, %xmm10
2674
2675 // CHECK: vpmovsxwd  (%rax), %xmm12
2676 // CHECK: encoding: [0xc4,0x62,0x79,0x23,0x20]
2677           vpmovsxwd  (%rax), %xmm12
2678
2679 // CHECK: vpmovsxdq  %xmm12, %xmm10
2680 // CHECK: encoding: [0xc4,0x42,0x79,0x25,0xd4]
2681           vpmovsxdq  %xmm12, %xmm10
2682
2683 // CHECK: vpmovsxdq  (%rax), %xmm12
2684 // CHECK: encoding: [0xc4,0x62,0x79,0x25,0x20]
2685           vpmovsxdq  (%rax), %xmm12
2686
2687 // CHECK: vpmovzxbw  %xmm12, %xmm10
2688 // CHECK: encoding: [0xc4,0x42,0x79,0x30,0xd4]
2689           vpmovzxbw  %xmm12, %xmm10
2690
2691 // CHECK: vpmovzxbw  (%rax), %xmm12
2692 // CHECK: encoding: [0xc4,0x62,0x79,0x30,0x20]
2693           vpmovzxbw  (%rax), %xmm12
2694
2695 // CHECK: vpmovzxwd  %xmm12, %xmm10
2696 // CHECK: encoding: [0xc4,0x42,0x79,0x33,0xd4]
2697           vpmovzxwd  %xmm12, %xmm10
2698
2699 // CHECK: vpmovzxwd  (%rax), %xmm12
2700 // CHECK: encoding: [0xc4,0x62,0x79,0x33,0x20]
2701           vpmovzxwd  (%rax), %xmm12
2702
2703 // CHECK: vpmovzxdq  %xmm12, %xmm10
2704 // CHECK: encoding: [0xc4,0x42,0x79,0x35,0xd4]
2705           vpmovzxdq  %xmm12, %xmm10
2706
2707 // CHECK: vpmovzxdq  (%rax), %xmm12
2708 // CHECK: encoding: [0xc4,0x62,0x79,0x35,0x20]
2709           vpmovzxdq  (%rax), %xmm12
2710
2711 // CHECK: vpmovsxbq  %xmm12, %xmm10
2712 // CHECK: encoding: [0xc4,0x42,0x79,0x22,0xd4]
2713           vpmovsxbq  %xmm12, %xmm10
2714
2715 // CHECK: vpmovsxbq  (%rax), %xmm12
2716 // CHECK: encoding: [0xc4,0x62,0x79,0x22,0x20]
2717           vpmovsxbq  (%rax), %xmm12
2718
2719 // CHECK: vpmovzxbq  %xmm12, %xmm10
2720 // CHECK: encoding: [0xc4,0x42,0x79,0x32,0xd4]
2721           vpmovzxbq  %xmm12, %xmm10
2722
2723 // CHECK: vpmovzxbq  (%rax), %xmm12
2724 // CHECK: encoding: [0xc4,0x62,0x79,0x32,0x20]
2725           vpmovzxbq  (%rax), %xmm12
2726
2727 // CHECK: vpmovsxbd  %xmm12, %xmm10
2728 // CHECK: encoding: [0xc4,0x42,0x79,0x21,0xd4]
2729           vpmovsxbd  %xmm12, %xmm10
2730
2731 // CHECK: vpmovsxbd  (%rax), %xmm12
2732 // CHECK: encoding: [0xc4,0x62,0x79,0x21,0x20]
2733           vpmovsxbd  (%rax), %xmm12
2734
2735 // CHECK: vpmovsxwq  %xmm12, %xmm10
2736 // CHECK: encoding: [0xc4,0x42,0x79,0x24,0xd4]
2737           vpmovsxwq  %xmm12, %xmm10
2738
2739 // CHECK: vpmovsxwq  (%rax), %xmm12
2740 // CHECK: encoding: [0xc4,0x62,0x79,0x24,0x20]
2741           vpmovsxwq  (%rax), %xmm12
2742
2743 // CHECK: vpmovzxbd  %xmm12, %xmm10
2744 // CHECK: encoding: [0xc4,0x42,0x79,0x31,0xd4]
2745           vpmovzxbd  %xmm12, %xmm10
2746
2747 // CHECK: vpmovzxbd  (%rax), %xmm12
2748 // CHECK: encoding: [0xc4,0x62,0x79,0x31,0x20]
2749           vpmovzxbd  (%rax), %xmm12
2750
2751 // CHECK: vpmovzxwq  %xmm12, %xmm10
2752 // CHECK: encoding: [0xc4,0x42,0x79,0x34,0xd4]
2753           vpmovzxwq  %xmm12, %xmm10
2754
2755 // CHECK: vpmovzxwq  (%rax), %xmm12
2756 // CHECK: encoding: [0xc4,0x62,0x79,0x34,0x20]
2757           vpmovzxwq  (%rax), %xmm12
2758
2759 // CHECK: vpextrw  $7, %xmm12, %eax
2760 // CHECK: encoding: [0xc4,0xc1,0x79,0xc5,0xc4,0x07]
2761           vpextrw  $7, %xmm12, %eax
2762
2763 // CHECK: vpextrw  $7, %xmm12, (%rax)
2764 // CHECK: encoding: [0xc4,0x63,0x79,0x15,0x20,0x07]
2765           vpextrw  $7, %xmm12, (%rax)
2766
2767 // CHECK: vpextrd  $7, %xmm12, %eax
2768 // CHECK: encoding: [0xc4,0x63,0x79,0x16,0xe0,0x07]
2769           vpextrd  $7, %xmm12, %eax
2770
2771 // CHECK: vpextrd  $7, %xmm12, (%rax)
2772 // CHECK: encoding: [0xc4,0x63,0x79,0x16,0x20,0x07]
2773           vpextrd  $7, %xmm12, (%rax)
2774
2775 // CHECK: vpextrb  $7, %xmm12, %eax
2776 // CHECK: encoding: [0xc4,0x63,0x79,0x14,0xe0,0x07]
2777           vpextrb  $7, %xmm12, %eax
2778
2779 // CHECK: vpextrb  $7, %xmm12, (%rax)
2780 // CHECK: encoding: [0xc4,0x63,0x79,0x14,0x20,0x07]
2781           vpextrb  $7, %xmm12, (%rax)
2782
2783 // CHECK: vpextrq  $7, %xmm12, %rcx
2784 // CHECK: encoding: [0xc4,0x63,0xf9,0x16,0xe1,0x07]
2785           vpextrq  $7, %xmm12, %rcx
2786
2787 // CHECK: vpextrq  $7, %xmm12, (%rcx)
2788 // CHECK: encoding: [0xc4,0x63,0xf9,0x16,0x21,0x07]
2789           vpextrq  $7, %xmm12, (%rcx)
2790
2791 // CHECK: vextractps  $7, %xmm12, (%rax)
2792 // CHECK: encoding: [0xc4,0x63,0x79,0x17,0x20,0x07]
2793           vextractps  $7, %xmm12, (%rax)
2794
2795 // CHECK: vextractps  $7, %xmm12, %eax
2796 // CHECK: encoding: [0xc4,0x63,0x79,0x17,0xe0,0x07]
2797           vextractps  $7, %xmm12, %eax
2798
2799 // CHECK: vpinsrw  $7, %eax, %xmm12, %xmm10
2800 // CHECK: encoding: [0xc5,0x19,0xc4,0xd0,0x07]
2801           vpinsrw  $7, %eax, %xmm12, %xmm10
2802
2803 // CHECK: vpinsrw  $7, (%rax), %xmm12, %xmm10
2804 // CHECK: encoding: [0xc5,0x19,0xc4,0x10,0x07]
2805           vpinsrw  $7, (%rax), %xmm12, %xmm10
2806
2807 // CHECK: vpinsrb  $7, %eax, %xmm12, %xmm10
2808 // CHECK: encoding: [0xc4,0x63,0x19,0x20,0xd0,0x07]
2809           vpinsrb  $7, %eax, %xmm12, %xmm10
2810
2811 // CHECK: vpinsrb  $7, (%rax), %xmm12, %xmm10
2812 // CHECK: encoding: [0xc4,0x63,0x19,0x20,0x10,0x07]
2813           vpinsrb  $7, (%rax), %xmm12, %xmm10
2814
2815 // CHECK: vpinsrd  $7, %eax, %xmm12, %xmm10
2816 // CHECK: encoding: [0xc4,0x63,0x19,0x22,0xd0,0x07]
2817           vpinsrd  $7, %eax, %xmm12, %xmm10
2818
2819 // CHECK: vpinsrd  $7, (%rax), %xmm12, %xmm10
2820 // CHECK: encoding: [0xc4,0x63,0x19,0x22,0x10,0x07]
2821           vpinsrd  $7, (%rax), %xmm12, %xmm10
2822
2823 // CHECK: vpinsrq  $7, %rax, %xmm12, %xmm10
2824 // CHECK: encoding: [0xc4,0x63,0x99,0x22,0xd0,0x07]
2825           vpinsrq  $7, %rax, %xmm12, %xmm10
2826
2827 // CHECK: vpinsrq  $7, (%rax), %xmm12, %xmm10
2828 // CHECK: encoding: [0xc4,0x63,0x99,0x22,0x10,0x07]
2829           vpinsrq  $7, (%rax), %xmm12, %xmm10
2830
2831 // CHECK: vinsertps  $7, %xmm12, %xmm10, %xmm11
2832 // CHECK: encoding: [0xc4,0x43,0x29,0x21,0xdc,0x07]
2833           vinsertps  $7, %xmm12, %xmm10, %xmm11
2834
2835 // CHECK: vinsertps  $7, (%rax), %xmm10, %xmm11
2836 // CHECK: encoding: [0xc4,0x63,0x29,0x21,0x18,0x07]
2837           vinsertps  $7, (%rax), %xmm10, %xmm11
2838
2839 // CHECK: vptest  %xmm12, %xmm10
2840 // CHECK: encoding: [0xc4,0x42,0x79,0x17,0xd4]
2841           vptest  %xmm12, %xmm10
2842
2843 // CHECK: vptest  (%rax), %xmm12
2844 // CHECK: encoding: [0xc4,0x62,0x79,0x17,0x20]
2845           vptest  (%rax), %xmm12
2846
2847 // CHECK: vmovntdqa  (%rax), %xmm12
2848 // CHECK: encoding: [0xc4,0x62,0x79,0x2a,0x20]
2849           vmovntdqa  (%rax), %xmm12
2850
2851 // CHECK: vpcmpgtq  %xmm12, %xmm10, %xmm11
2852 // CHECK: encoding: [0xc4,0x42,0x29,0x37,0xdc]
2853           vpcmpgtq  %xmm12, %xmm10, %xmm11
2854
2855 // CHECK: vpcmpgtq  (%rax), %xmm10, %xmm13
2856 // CHECK: encoding: [0xc4,0x62,0x29,0x37,0x28]
2857           vpcmpgtq  (%rax), %xmm10, %xmm13
2858
2859 // CHECK: vpcmpistrm  $7, %xmm12, %xmm10
2860 // CHECK: encoding: [0xc4,0x43,0x79,0x62,0xd4,0x07]
2861           vpcmpistrm  $7, %xmm12, %xmm10
2862
2863 // CHECK: vpcmpistrm  $7, (%rax), %xmm10
2864 // CHECK: encoding: [0xc4,0x63,0x79,0x62,0x10,0x07]
2865           vpcmpistrm  $7, (%rax), %xmm10
2866
2867 // CHECK: vpcmpestrm  $7, %xmm12, %xmm10
2868 // CHECK: encoding: [0xc4,0x43,0x79,0x60,0xd4,0x07]
2869           vpcmpestrm  $7, %xmm12, %xmm10
2870
2871 // CHECK: vpcmpestrm  $7, (%rax), %xmm10
2872 // CHECK: encoding: [0xc4,0x63,0x79,0x60,0x10,0x07]
2873           vpcmpestrm  $7, (%rax), %xmm10
2874
2875 // CHECK: vpcmpistri  $7, %xmm12, %xmm10
2876 // CHECK: encoding: [0xc4,0x43,0x79,0x63,0xd4,0x07]
2877           vpcmpistri  $7, %xmm12, %xmm10
2878
2879 // CHECK: vpcmpistri  $7, (%rax), %xmm10
2880 // CHECK: encoding: [0xc4,0x63,0x79,0x63,0x10,0x07]
2881           vpcmpistri  $7, (%rax), %xmm10
2882
2883 // CHECK: vpcmpestri  $7, %xmm12, %xmm10
2884 // CHECK: encoding: [0xc4,0x43,0x79,0x61,0xd4,0x07]
2885           vpcmpestri  $7, %xmm12, %xmm10
2886
2887 // CHECK: vpcmpestri  $7, (%rax), %xmm10
2888 // CHECK: encoding: [0xc4,0x63,0x79,0x61,0x10,0x07]
2889           vpcmpestri  $7, (%rax), %xmm10
2890
2891 // CHECK: vaesimc  %xmm12, %xmm10
2892 // CHECK: encoding: [0xc4,0x42,0x79,0xdb,0xd4]
2893           vaesimc  %xmm12, %xmm10
2894
2895 // CHECK: vaesimc  (%rax), %xmm12
2896 // CHECK: encoding: [0xc4,0x62,0x79,0xdb,0x20]
2897           vaesimc  (%rax), %xmm12
2898
2899 // CHECK: vaesenc  %xmm12, %xmm10, %xmm11
2900 // CHECK: encoding: [0xc4,0x42,0x29,0xdc,0xdc]
2901           vaesenc  %xmm12, %xmm10, %xmm11
2902
2903 // CHECK: vaesenc  (%rax), %xmm10, %xmm13
2904 // CHECK: encoding: [0xc4,0x62,0x29,0xdc,0x28]
2905           vaesenc  (%rax), %xmm10, %xmm13
2906
2907 // CHECK: vaesenclast  %xmm12, %xmm10, %xmm11
2908 // CHECK: encoding: [0xc4,0x42,0x29,0xdd,0xdc]
2909           vaesenclast  %xmm12, %xmm10, %xmm11
2910
2911 // CHECK: vaesenclast  (%rax), %xmm10, %xmm13
2912 // CHECK: encoding: [0xc4,0x62,0x29,0xdd,0x28]
2913           vaesenclast  (%rax), %xmm10, %xmm13
2914
2915 // CHECK: vaesdec  %xmm12, %xmm10, %xmm11
2916 // CHECK: encoding: [0xc4,0x42,0x29,0xde,0xdc]
2917           vaesdec  %xmm12, %xmm10, %xmm11
2918
2919 // CHECK: vaesdec  (%rax), %xmm10, %xmm13
2920 // CHECK: encoding: [0xc4,0x62,0x29,0xde,0x28]
2921           vaesdec  (%rax), %xmm10, %xmm13
2922
2923 // CHECK: vaesdeclast  %xmm12, %xmm10, %xmm11
2924 // CHECK: encoding: [0xc4,0x42,0x29,0xdf,0xdc]
2925           vaesdeclast  %xmm12, %xmm10, %xmm11
2926
2927 // CHECK: vaesdeclast  (%rax), %xmm10, %xmm13
2928 // CHECK: encoding: [0xc4,0x62,0x29,0xdf,0x28]
2929           vaesdeclast  (%rax), %xmm10, %xmm13
2930
2931 // CHECK: vaeskeygenassist  $7, %xmm12, %xmm10
2932 // CHECK: encoding: [0xc4,0x43,0x79,0xdf,0xd4,0x07]
2933           vaeskeygenassist  $7, %xmm12, %xmm10
2934
2935 // CHECK: vaeskeygenassist  $7, (%rax), %xmm10
2936 // CHECK: encoding: [0xc4,0x63,0x79,0xdf,0x10,0x07]
2937           vaeskeygenassist  $7, (%rax), %xmm10
2938
2939 // CHECK: vcmpeq_uqps  %xmm11, %xmm12, %xmm13
2940 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x08]
2941           vcmpeq_uqps %xmm11, %xmm12, %xmm13
2942
2943 // CHECK: vcmpngeps  %xmm11, %xmm12, %xmm13
2944 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x09]
2945           vcmpngeps %xmm11, %xmm12, %xmm13
2946
2947 // CHECK: vcmpngtps  %xmm11, %xmm12, %xmm13
2948 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0a]
2949           vcmpngtps %xmm11, %xmm12, %xmm13
2950
2951 // CHECK: vcmpfalseps  %xmm11, %xmm12, %xmm13
2952 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0b]
2953           vcmpfalseps %xmm11, %xmm12, %xmm13
2954
2955 // CHECK: vcmpneq_oqps  %xmm11, %xmm12, %xmm13
2956 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0c]
2957           vcmpneq_oqps %xmm11, %xmm12, %xmm13
2958
2959 // CHECK: vcmpgeps  %xmm11, %xmm12, %xmm13
2960 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0d]
2961           vcmpgeps %xmm11, %xmm12, %xmm13
2962
2963 // CHECK: vcmpgtps  %xmm11, %xmm12, %xmm13
2964 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0e]
2965           vcmpgtps %xmm11, %xmm12, %xmm13
2966
2967 // CHECK: vcmptrueps  %xmm11, %xmm12, %xmm13
2968 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0f]
2969           vcmptrueps %xmm11, %xmm12, %xmm13
2970
2971 // CHECK: vcmpeq_osps  %xmm11, %xmm12, %xmm13
2972 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x10]
2973           vcmpeq_osps %xmm11, %xmm12, %xmm13
2974
2975 // CHECK: vcmplt_oqps  %xmm11, %xmm12, %xmm13
2976 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x11]
2977           vcmplt_oqps %xmm11, %xmm12, %xmm13
2978
2979 // CHECK: vcmple_oqps  %xmm11, %xmm12, %xmm13
2980 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x12]
2981           vcmple_oqps %xmm11, %xmm12, %xmm13
2982
2983 // CHECK: vcmpunord_sps  %xmm11, %xmm12, %xmm13
2984 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x13]
2985           vcmpunord_sps %xmm11, %xmm12, %xmm13
2986
2987 // CHECK: vcmpneq_usps  %xmm11, %xmm12, %xmm13
2988 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x14]
2989           vcmpneq_usps %xmm11, %xmm12, %xmm13
2990
2991 // CHECK: vcmpnlt_uqps  %xmm11, %xmm12, %xmm13
2992 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x15]
2993           vcmpnlt_uqps %xmm11, %xmm12, %xmm13
2994
2995 // CHECK: vcmpnle_uqps  %xmm11, %xmm12, %xmm13
2996 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x16]
2997           vcmpnle_uqps %xmm11, %xmm12, %xmm13
2998
2999 // CHECK: vcmpord_sps  %xmm11, %xmm12, %xmm13
3000 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x17]
3001           vcmpord_sps %xmm11, %xmm12, %xmm13
3002
3003 // CHECK: vcmpeq_usps  %xmm11, %xmm12, %xmm13
3004 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x18]
3005           vcmpeq_usps %xmm11, %xmm12, %xmm13
3006
3007 // CHECK: vcmpnge_uqps  %xmm11, %xmm12, %xmm13
3008 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x19]
3009           vcmpnge_uqps %xmm11, %xmm12, %xmm13
3010
3011 // CHECK: vcmpngt_uqps  %xmm11, %xmm12, %xmm13
3012 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1a]
3013           vcmpngt_uqps %xmm11, %xmm12, %xmm13
3014
3015 // CHECK: vcmpfalse_osps  %xmm11, %xmm12, %xmm13
3016 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1b]
3017           vcmpfalse_osps %xmm11, %xmm12, %xmm13
3018
3019 // CHECK: vcmpneq_osps  %xmm11, %xmm12, %xmm13
3020 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1c]
3021           vcmpneq_osps %xmm11, %xmm12, %xmm13
3022
3023 // CHECK: vcmpge_oqps  %xmm11, %xmm12, %xmm13
3024 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1d]
3025           vcmpge_oqps %xmm11, %xmm12, %xmm13
3026
3027 // CHECK: vcmpgt_oqps  %xmm11, %xmm12, %xmm13
3028 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1e]
3029           vcmpgt_oqps %xmm11, %xmm12, %xmm13
3030
3031 // CHECK: vcmptrue_usps  %xmm11, %xmm12, %xmm13
3032 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1f]
3033           vcmptrue_usps %xmm11, %xmm12, %xmm13
3034
3035 // CHECK: vmovaps  (%rax), %ymm12
3036 // CHECK: encoding: [0xc5,0x7c,0x28,0x20]
3037           vmovaps  (%rax), %ymm12
3038
3039 // CHECK: vmovaps  %ymm11, %ymm12
3040 // CHECK: encoding: [0xc4,0x41,0x7c,0x28,0xe3]
3041           vmovaps  %ymm11, %ymm12
3042
3043 // CHECK: vmovaps  %ymm11, (%rax)
3044 // CHECK: encoding: [0xc5,0x7c,0x29,0x18]
3045           vmovaps  %ymm11, (%rax)
3046
3047 // CHECK: vmovapd  (%rax), %ymm12
3048 // CHECK: encoding: [0xc5,0x7d,0x28,0x20]
3049           vmovapd  (%rax), %ymm12
3050
3051 // CHECK: vmovapd  %ymm11, %ymm12
3052 // CHECK: encoding: [0xc4,0x41,0x7d,0x28,0xe3]
3053           vmovapd  %ymm11, %ymm12
3054
3055 // CHECK: vmovapd  %ymm11, (%rax)
3056 // CHECK: encoding: [0xc5,0x7d,0x29,0x18]
3057           vmovapd  %ymm11, (%rax)
3058
3059 // CHECK: vmovups  (%rax), %ymm12
3060 // CHECK: encoding: [0xc5,0x7c,0x10,0x20]
3061           vmovups  (%rax), %ymm12
3062
3063 // CHECK: vmovups  %ymm11, %ymm12
3064 // CHECK: encoding: [0xc4,0x41,0x7c,0x10,0xe3]
3065           vmovups  %ymm11, %ymm12
3066
3067 // CHECK: vmovups  %ymm11, (%rax)
3068 // CHECK: encoding: [0xc5,0x7c,0x11,0x18]
3069           vmovups  %ymm11, (%rax)
3070
3071 // CHECK: vmovupd  (%rax), %ymm12
3072 // CHECK: encoding: [0xc5,0x7d,0x10,0x20]
3073           vmovupd  (%rax), %ymm12
3074
3075 // CHECK: vmovupd  %ymm11, %ymm12
3076 // CHECK: encoding: [0xc4,0x41,0x7d,0x10,0xe3]
3077           vmovupd  %ymm11, %ymm12
3078
3079 // CHECK: vmovupd  %ymm11, (%rax)
3080 // CHECK: encoding: [0xc5,0x7d,0x11,0x18]
3081           vmovupd  %ymm11, (%rax)
3082
3083 // CHECK: vunpckhps  %ymm11, %ymm12, %ymm4
3084 // CHECK: encoding: [0xc4,0xc1,0x1c,0x15,0xe3]
3085           vunpckhps  %ymm11, %ymm12, %ymm4
3086
3087 // CHECK: vunpckhpd  %ymm11, %ymm12, %ymm4
3088 // CHECK: encoding: [0xc4,0xc1,0x1d,0x15,0xe3]
3089           vunpckhpd  %ymm11, %ymm12, %ymm4
3090
3091 // CHECK: vunpcklps  %ymm11, %ymm12, %ymm4
3092 // CHECK: encoding: [0xc4,0xc1,0x1c,0x14,0xe3]
3093           vunpcklps  %ymm11, %ymm12, %ymm4
3094
3095 // CHECK: vunpcklpd  %ymm11, %ymm12, %ymm4
3096 // CHECK: encoding: [0xc4,0xc1,0x1d,0x14,0xe3]
3097           vunpcklpd  %ymm11, %ymm12, %ymm4
3098
3099 // CHECK: vunpckhps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3100 // CHECK: encoding: [0xc5,0x1c,0x15,0x54,0xcb,0xfc]
3101           vunpckhps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3102
3103 // CHECK: vunpckhpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3104 // CHECK: encoding: [0xc5,0x1d,0x15,0x54,0xcb,0xfc]
3105           vunpckhpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3106
3107 // CHECK: vunpcklps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3108 // CHECK: encoding: [0xc5,0x1c,0x14,0x54,0xcb,0xfc]
3109           vunpcklps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3110
3111 // CHECK: vunpcklpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3112 // CHECK: encoding: [0xc5,0x1d,0x14,0x54,0xcb,0xfc]
3113           vunpcklpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3114
3115 // CHECK: vmovntdq  %ymm11, (%rax)
3116 // CHECK: encoding: [0xc5,0x7d,0xe7,0x18]
3117           vmovntdq  %ymm11, (%rax)
3118
3119 // CHECK: vmovntpd  %ymm11, (%rax)
3120 // CHECK: encoding: [0xc5,0x7d,0x2b,0x18]
3121           vmovntpd  %ymm11, (%rax)
3122
3123 // CHECK: vmovntps  %ymm11, (%rax)
3124 // CHECK: encoding: [0xc5,0x7c,0x2b,0x18]
3125           vmovntps  %ymm11, (%rax)
3126
3127 // CHECK: vmovmskps  %xmm12, %eax
3128 // CHECK: encoding: [0xc4,0xc1,0x78,0x50,0xc4]
3129           vmovmskps  %xmm12, %eax
3130
3131 // CHECK: vmovmskpd  %xmm12, %eax
3132 // CHECK: encoding: [0xc4,0xc1,0x79,0x50,0xc4]
3133           vmovmskpd  %xmm12, %eax
3134
3135 // CHECK: vmaxps  %ymm12, %ymm4, %ymm6
3136 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5f,0xf4]
3137           vmaxps  %ymm12, %ymm4, %ymm6
3138
3139 // CHECK: vmaxpd  %ymm12, %ymm4, %ymm6
3140 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5f,0xf4]
3141           vmaxpd  %ymm12, %ymm4, %ymm6
3142
3143 // CHECK: vminps  %ymm12, %ymm4, %ymm6
3144 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5d,0xf4]
3145           vminps  %ymm12, %ymm4, %ymm6
3146
3147 // CHECK: vminpd  %ymm12, %ymm4, %ymm6
3148 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5d,0xf4]
3149           vminpd  %ymm12, %ymm4, %ymm6
3150
3151 // CHECK: vsubps  %ymm12, %ymm4, %ymm6
3152 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5c,0xf4]
3153           vsubps  %ymm12, %ymm4, %ymm6
3154
3155 // CHECK: vsubpd  %ymm12, %ymm4, %ymm6
3156 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5c,0xf4]
3157           vsubpd  %ymm12, %ymm4, %ymm6
3158
3159 // CHECK: vdivps  %ymm12, %ymm4, %ymm6
3160 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5e,0xf4]
3161           vdivps  %ymm12, %ymm4, %ymm6
3162
3163 // CHECK: vdivpd  %ymm12, %ymm4, %ymm6
3164 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5e,0xf4]
3165           vdivpd  %ymm12, %ymm4, %ymm6
3166
3167 // CHECK: vaddps  %ymm12, %ymm4, %ymm6
3168 // CHECK: encoding: [0xc4,0xc1,0x5c,0x58,0xf4]
3169           vaddps  %ymm12, %ymm4, %ymm6
3170
3171 // CHECK: vaddpd  %ymm12, %ymm4, %ymm6
3172 // CHECK: encoding: [0xc4,0xc1,0x5d,0x58,0xf4]
3173           vaddpd  %ymm12, %ymm4, %ymm6
3174
3175 // CHECK: vmulps  %ymm12, %ymm4, %ymm6
3176 // CHECK: encoding: [0xc4,0xc1,0x5c,0x59,0xf4]
3177           vmulps  %ymm12, %ymm4, %ymm6
3178
3179 // CHECK: vmulpd  %ymm12, %ymm4, %ymm6
3180 // CHECK: encoding: [0xc4,0xc1,0x5d,0x59,0xf4]
3181           vmulpd  %ymm12, %ymm4, %ymm6
3182
3183 // CHECK: vmaxps  (%rax), %ymm4, %ymm6
3184 // CHECK: encoding: [0xc5,0xdc,0x5f,0x30]
3185           vmaxps  (%rax), %ymm4, %ymm6
3186
3187 // CHECK: vmaxpd  (%rax), %ymm4, %ymm6
3188 // CHECK: encoding: [0xc5,0xdd,0x5f,0x30]
3189           vmaxpd  (%rax), %ymm4, %ymm6
3190
3191 // CHECK: vminps  (%rax), %ymm4, %ymm6
3192 // CHECK: encoding: [0xc5,0xdc,0x5d,0x30]
3193           vminps  (%rax), %ymm4, %ymm6
3194
3195 // CHECK: vminpd  (%rax), %ymm4, %ymm6
3196 // CHECK: encoding: [0xc5,0xdd,0x5d,0x30]
3197           vminpd  (%rax), %ymm4, %ymm6
3198
3199 // CHECK: vsubps  (%rax), %ymm4, %ymm6
3200 // CHECK: encoding: [0xc5,0xdc,0x5c,0x30]
3201           vsubps  (%rax), %ymm4, %ymm6
3202
3203 // CHECK: vsubpd  (%rax), %ymm4, %ymm6
3204 // CHECK: encoding: [0xc5,0xdd,0x5c,0x30]
3205           vsubpd  (%rax), %ymm4, %ymm6
3206
3207 // CHECK: vdivps  (%rax), %ymm4, %ymm6
3208 // CHECK: encoding: [0xc5,0xdc,0x5e,0x30]
3209           vdivps  (%rax), %ymm4, %ymm6
3210
3211 // CHECK: vdivpd  (%rax), %ymm4, %ymm6
3212 // CHECK: encoding: [0xc5,0xdd,0x5e,0x30]
3213           vdivpd  (%rax), %ymm4, %ymm6
3214
3215 // CHECK: vaddps  (%rax), %ymm4, %ymm6
3216 // CHECK: encoding: [0xc5,0xdc,0x58,0x30]
3217           vaddps  (%rax), %ymm4, %ymm6
3218
3219 // CHECK: vaddpd  (%rax), %ymm4, %ymm6
3220 // CHECK: encoding: [0xc5,0xdd,0x58,0x30]
3221           vaddpd  (%rax), %ymm4, %ymm6
3222
3223 // CHECK: vmulps  (%rax), %ymm4, %ymm6
3224 // CHECK: encoding: [0xc5,0xdc,0x59,0x30]
3225           vmulps  (%rax), %ymm4, %ymm6
3226
3227 // CHECK: vmulpd  (%rax), %ymm4, %ymm6
3228 // CHECK: encoding: [0xc5,0xdd,0x59,0x30]
3229           vmulpd  (%rax), %ymm4, %ymm6
3230
3231 // CHECK: vsqrtpd  %ymm11, %ymm12
3232 // CHECK: encoding: [0xc4,0x41,0x7d,0x51,0xe3]
3233           vsqrtpd  %ymm11, %ymm12
3234
3235 // CHECK: vsqrtpd  (%rax), %ymm12
3236 // CHECK: encoding: [0xc5,0x7d,0x51,0x20]
3237           vsqrtpd  (%rax), %ymm12
3238
3239 // CHECK: vsqrtps  %ymm11, %ymm12
3240 // CHECK: encoding: [0xc4,0x41,0x7c,0x51,0xe3]
3241           vsqrtps  %ymm11, %ymm12
3242
3243 // CHECK: vsqrtps  (%rax), %ymm12
3244 // CHECK: encoding: [0xc5,0x7c,0x51,0x20]
3245           vsqrtps  (%rax), %ymm12
3246
3247 // CHECK: vrsqrtps  %ymm11, %ymm12
3248 // CHECK: encoding: [0xc4,0x41,0x7c,0x52,0xe3]
3249           vrsqrtps  %ymm11, %ymm12
3250
3251 // CHECK: vrsqrtps  (%rax), %ymm12
3252 // CHECK: encoding: [0xc5,0x7c,0x52,0x20]
3253           vrsqrtps  (%rax), %ymm12
3254
3255 // CHECK: vrcpps  %ymm11, %ymm12
3256 // CHECK: encoding: [0xc4,0x41,0x7c,0x53,0xe3]
3257           vrcpps  %ymm11, %ymm12
3258
3259 // CHECK: vrcpps  (%rax), %ymm12
3260 // CHECK: encoding: [0xc5,0x7c,0x53,0x20]
3261           vrcpps  (%rax), %ymm12
3262
3263 // CHECK: vandps  %ymm12, %ymm14, %ymm11
3264 // CHECK: encoding: [0xc4,0x41,0x0c,0x54,0xdc]
3265           vandps  %ymm12, %ymm14, %ymm11
3266
3267 // CHECK: vandpd  %ymm12, %ymm14, %ymm11
3268 // CHECK: encoding: [0xc4,0x41,0x0d,0x54,0xdc]
3269           vandpd  %ymm12, %ymm14, %ymm11
3270
3271 // CHECK: vandps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3272 // CHECK: encoding: [0xc5,0x1c,0x54,0x54,0xcb,0xfc]
3273           vandps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3274
3275 // CHECK: vandpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3276 // CHECK: encoding: [0xc5,0x1d,0x54,0x54,0xcb,0xfc]
3277           vandpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3278
3279 // CHECK: vorps  %ymm12, %ymm14, %ymm11
3280 // CHECK: encoding: [0xc4,0x41,0x0c,0x56,0xdc]
3281           vorps  %ymm12, %ymm14, %ymm11
3282
3283 // CHECK: vorpd  %ymm12, %ymm14, %ymm11
3284 // CHECK: encoding: [0xc4,0x41,0x0d,0x56,0xdc]
3285           vorpd  %ymm12, %ymm14, %ymm11
3286
3287 // CHECK: vorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3288 // CHECK: encoding: [0xc5,0x1c,0x56,0x54,0xcb,0xfc]
3289           vorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3290
3291 // CHECK: vorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3292 // CHECK: encoding: [0xc5,0x1d,0x56,0x54,0xcb,0xfc]
3293           vorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3294
3295 // CHECK: vxorps  %ymm12, %ymm14, %ymm11
3296 // CHECK: encoding: [0xc4,0x41,0x0c,0x57,0xdc]
3297           vxorps  %ymm12, %ymm14, %ymm11
3298
3299 // CHECK: vxorpd  %ymm12, %ymm14, %ymm11
3300 // CHECK: encoding: [0xc4,0x41,0x0d,0x57,0xdc]
3301           vxorpd  %ymm12, %ymm14, %ymm11
3302
3303 // CHECK: vxorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3304 // CHECK: encoding: [0xc5,0x1c,0x57,0x54,0xcb,0xfc]
3305           vxorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3306
3307 // CHECK: vxorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3308 // CHECK: encoding: [0xc5,0x1d,0x57,0x54,0xcb,0xfc]
3309           vxorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3310
3311 // CHECK: vandnps  %ymm12, %ymm14, %ymm11
3312 // CHECK: encoding: [0xc4,0x41,0x0c,0x55,0xdc]
3313           vandnps  %ymm12, %ymm14, %ymm11
3314
3315 // CHECK: vandnpd  %ymm12, %ymm14, %ymm11
3316 // CHECK: encoding: [0xc4,0x41,0x0d,0x55,0xdc]
3317           vandnpd  %ymm12, %ymm14, %ymm11
3318
3319 // CHECK: vandnps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3320 // CHECK: encoding: [0xc5,0x1c,0x55,0x54,0xcb,0xfc]
3321           vandnps  -4(%rbx,%rcx,8), %ymm12, %ymm10
3322
3323 // CHECK: vandnpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3324 // CHECK: encoding: [0xc5,0x1d,0x55,0x54,0xcb,0xfc]
3325           vandnpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
3326
3327 // CHECK: vcvtps2pd  %xmm13, %ymm12
3328 // CHECK: encoding: [0xc4,0x41,0x7c,0x5a,0xe5]
3329           vcvtps2pd  %xmm13, %ymm12
3330
3331 // CHECK: vcvtps2pd  (%rax), %ymm12
3332 // CHECK: encoding: [0xc5,0x7c,0x5a,0x20]
3333           vcvtps2pd  (%rax), %ymm12
3334
3335 // CHECK: vcvtdq2pd  %xmm13, %ymm12
3336 // CHECK: encoding: [0xc4,0x41,0x7e,0xe6,0xe5]
3337           vcvtdq2pd  %xmm13, %ymm12
3338
3339 // CHECK: vcvtdq2pd  (%rax), %ymm12
3340 // CHECK: encoding: [0xc5,0x7e,0xe6,0x20]
3341           vcvtdq2pd  (%rax), %ymm12
3342
3343 // CHECK: vcvtdq2ps  %ymm12, %ymm10
3344 // CHECK: encoding: [0xc4,0x41,0x7c,0x5b,0xd4]
3345           vcvtdq2ps  %ymm12, %ymm10
3346
3347 // CHECK: vcvtdq2ps  (%rax), %ymm12
3348 // CHECK: encoding: [0xc5,0x7c,0x5b,0x20]
3349           vcvtdq2ps  (%rax), %ymm12
3350
3351 // CHECK: vcvtps2dq  %ymm12, %ymm10
3352 // CHECK: encoding: [0xc4,0x41,0x7d,0x5b,0xd4]
3353           vcvtps2dq  %ymm12, %ymm10
3354
3355 // CHECK: vcvtps2dq  (%rax), %ymm10
3356 // CHECK: encoding: [0xc5,0x7d,0x5b,0x10]
3357           vcvtps2dq  (%rax), %ymm10
3358
3359 // CHECK: vcvttps2dq  %ymm12, %ymm10
3360 // CHECK: encoding: [0xc4,0x41,0x7e,0x5b,0xd4]
3361           vcvttps2dq  %ymm12, %ymm10
3362
3363 // CHECK: vcvttps2dq  (%rax), %ymm10
3364 // CHECK: encoding: [0xc5,0x7e,0x5b,0x10]
3365           vcvttps2dq  (%rax), %ymm10
3366
3367 // CHECK: vcvttpd2dq  %xmm11, %xmm10
3368 // CHECK: encoding: [0xc4,0x41,0x79,0xe6,0xd3]
3369           vcvttpd2dq  %xmm11, %xmm10
3370
3371 // CHECK: vcvttpd2dqy %ymm12, %xmm10
3372 // CHECK: encoding: [0xc4,0x41,0x7d,0xe6,0xd4]
3373           vcvttpd2dq  %ymm12, %xmm10
3374
3375 // CHECK: vcvttpd2dq   %xmm11, %xmm10
3376 // CHECK: encoding: [0xc4,0x41,0x79,0xe6,0xd3]
3377           vcvttpd2dqx  %xmm11, %xmm10
3378
3379 // CHECK: vcvttpd2dqx  (%rax), %xmm11
3380 // CHECK: encoding: [0xc5,0x79,0xe6,0x18]
3381           vcvttpd2dqx  (%rax), %xmm11
3382
3383 // CHECK: vcvttpd2dqy  %ymm12, %xmm11
3384 // CHECK: encoding: [0xc4,0x41,0x7d,0xe6,0xdc]
3385           vcvttpd2dqy  %ymm12, %xmm11
3386
3387 // CHECK: vcvttpd2dqy  (%rax), %xmm11
3388 // CHECK: encoding: [0xc5,0x7d,0xe6,0x18]
3389           vcvttpd2dqy  (%rax), %xmm11
3390
3391 // CHECK: vcvtpd2psy %ymm12, %xmm10
3392 // CHECK: encoding: [0xc4,0x41,0x7d,0x5a,0xd4]
3393           vcvtpd2ps  %ymm12, %xmm10
3394
3395 // CHECK: vcvtpd2ps   %xmm11, %xmm10
3396 // CHECK: encoding: [0xc4,0x41,0x79,0x5a,0xd3]
3397           vcvtpd2psx  %xmm11, %xmm10
3398
3399 // CHECK: vcvtpd2psx  (%rax), %xmm11
3400 // CHECK: encoding: [0xc5,0x79,0x5a,0x18]
3401           vcvtpd2psx  (%rax), %xmm11
3402
3403 // CHECK: vcvtpd2psy  %ymm12, %xmm11
3404 // CHECK: encoding: [0xc4,0x41,0x7d,0x5a,0xdc]
3405           vcvtpd2psy  %ymm12, %xmm11
3406
3407 // CHECK: vcvtpd2psy  (%rax), %xmm11
3408 // CHECK: encoding: [0xc5,0x7d,0x5a,0x18]
3409           vcvtpd2psy  (%rax), %xmm11
3410
3411 // CHECK: vcvtpd2dqy %ymm12, %xmm10
3412 // CHECK: encoding: [0xc4,0x41,0x7f,0xe6,0xd4]
3413           vcvtpd2dq  %ymm12, %xmm10
3414
3415 // CHECK: vcvtpd2dqy  %ymm12, %xmm11
3416 // CHECK: encoding: [0xc4,0x41,0x7f,0xe6,0xdc]
3417           vcvtpd2dqy  %ymm12, %xmm11
3418
3419 // CHECK: vcvtpd2dqy  (%rax), %xmm11
3420 // CHECK: encoding: [0xc5,0x7f,0xe6,0x18]
3421           vcvtpd2dqy  (%rax), %xmm11
3422
3423 // CHECK: vcvtpd2dq   %xmm11, %xmm10
3424 // CHECK: encoding: [0xc4,0x41,0x7b,0xe6,0xd3]
3425           vcvtpd2dqx  %xmm11, %xmm10
3426
3427 // CHECK: vcvtpd2dqx  (%rax), %xmm11
3428 // CHECK: encoding: [0xc5,0x7b,0xe6,0x18]
3429           vcvtpd2dqx  (%rax), %xmm11
3430
3431 // CHECK: vcmpeqps  %ymm11, %ymm12, %ymm13
3432 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x00]
3433           vcmpeqps %ymm11, %ymm12, %ymm13
3434
3435 // CHECK: vcmpleps  %ymm11, %ymm12, %ymm13
3436 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x02]
3437           vcmpleps %ymm11, %ymm12, %ymm13
3438
3439 // CHECK: vcmpltps  %ymm11, %ymm12, %ymm13
3440 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x01]
3441           vcmpltps %ymm11, %ymm12, %ymm13
3442
3443 // CHECK: vcmpneqps  %ymm11, %ymm12, %ymm13
3444 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x04]
3445           vcmpneqps %ymm11, %ymm12, %ymm13
3446
3447 // CHECK: vcmpnleps  %ymm11, %ymm12, %ymm13
3448 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x06]
3449           vcmpnleps %ymm11, %ymm12, %ymm13
3450
3451 // CHECK: vcmpnltps  %ymm11, %ymm12, %ymm13
3452 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x05]
3453           vcmpnltps %ymm11, %ymm12, %ymm13
3454
3455 // CHECK: vcmpordps  %ymm11, %ymm12, %ymm13
3456 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x07]
3457           vcmpordps %ymm11, %ymm12, %ymm13
3458
3459 // CHECK: vcmpunordps  %ymm11, %ymm12, %ymm13
3460 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x03]
3461           vcmpunordps %ymm11, %ymm12, %ymm13
3462
3463 // CHECK: vcmpeqps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3464 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x00]
3465           vcmpeqps -4(%rbx,%rcx,8), %ymm12, %ymm13
3466
3467 // CHECK: vcmpleps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3468 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x02]
3469           vcmpleps -4(%rbx,%rcx,8), %ymm12, %ymm13
3470
3471 // CHECK: vcmpltps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3472 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x01]
3473           vcmpltps -4(%rbx,%rcx,8), %ymm12, %ymm13
3474
3475 // CHECK: vcmpneqps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3476 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x04]
3477           vcmpneqps -4(%rbx,%rcx,8), %ymm12, %ymm13
3478
3479 // CHECK: vcmpnleps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3480 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x06]
3481           vcmpnleps -4(%rbx,%rcx,8), %ymm12, %ymm13
3482
3483 // CHECK: vcmpnltps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3484 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x05]
3485           vcmpnltps -4(%rbx,%rcx,8), %ymm12, %ymm13
3486
3487 // CHECK: vcmpordps  -4(%rbx,%rcx,8), %ymm6, %ymm12
3488 // CHECK: encoding: [0xc5,0x4c,0xc2,0x64,0xcb,0xfc,0x07]
3489           vcmpordps -4(%rbx,%rcx,8), %ymm6, %ymm12
3490
3491 // CHECK: vcmpunordps  -4(%rbx,%rcx,8), %ymm12, %ymm13
3492 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x03]
3493           vcmpunordps -4(%rbx,%rcx,8), %ymm12, %ymm13
3494
3495 // CHECK: vcmpeqpd  %ymm11, %ymm12, %ymm13
3496 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x00]
3497           vcmpeqpd %ymm11, %ymm12, %ymm13
3498
3499 // CHECK: vcmplepd  %ymm11, %ymm12, %ymm13
3500 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x02]
3501           vcmplepd %ymm11, %ymm12, %ymm13
3502
3503 // CHECK: vcmpltpd  %ymm11, %ymm12, %ymm13
3504 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x01]
3505           vcmpltpd %ymm11, %ymm12, %ymm13
3506
3507 // CHECK: vcmpneqpd  %ymm11, %ymm12, %ymm13
3508 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x04]
3509           vcmpneqpd %ymm11, %ymm12, %ymm13
3510
3511 // CHECK: vcmpnlepd  %ymm11, %ymm12, %ymm13
3512 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x06]
3513           vcmpnlepd %ymm11, %ymm12, %ymm13
3514
3515 // CHECK: vcmpnltpd  %ymm11, %ymm12, %ymm13
3516 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x05]
3517           vcmpnltpd %ymm11, %ymm12, %ymm13
3518
3519 // CHECK: vcmpordpd  %ymm11, %ymm12, %ymm13
3520 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x07]
3521           vcmpordpd %ymm11, %ymm12, %ymm13
3522
3523 // CHECK: vcmpunordpd  %ymm11, %ymm12, %ymm13
3524 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x03]
3525           vcmpunordpd %ymm11, %ymm12, %ymm13
3526
3527 // CHECK: vcmpeqpd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3528 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x00]
3529           vcmpeqpd -4(%rbx,%rcx,8), %ymm12, %ymm13
3530
3531 // CHECK: vcmplepd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3532 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x02]
3533           vcmplepd -4(%rbx,%rcx,8), %ymm12, %ymm13
3534
3535 // CHECK: vcmpltpd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3536 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x01]
3537           vcmpltpd -4(%rbx,%rcx,8), %ymm12, %ymm13
3538
3539 // CHECK: vcmpneqpd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3540 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x04]
3541           vcmpneqpd -4(%rbx,%rcx,8), %ymm12, %ymm13
3542
3543 // CHECK: vcmpnlepd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3544 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x06]
3545           vcmpnlepd -4(%rbx,%rcx,8), %ymm12, %ymm13
3546
3547 // CHECK: vcmpnltpd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3548 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x05]
3549           vcmpnltpd -4(%rbx,%rcx,8), %ymm12, %ymm13
3550
3551 // CHECK: vcmpordpd  -4(%rbx,%rcx,8), %ymm6, %ymm12
3552 // CHECK: encoding: [0xc5,0x4d,0xc2,0x64,0xcb,0xfc,0x07]
3553           vcmpordpd -4(%rbx,%rcx,8), %ymm6, %ymm12
3554
3555 // CHECK: vcmpunordpd  -4(%rbx,%rcx,8), %ymm12, %ymm13
3556 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x03]
3557           vcmpunordpd -4(%rbx,%rcx,8), %ymm12, %ymm13
3558
3559 // CHECK: vcmpeq_uqps  %ymm11, %ymm12, %ymm13
3560 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x08]
3561           vcmpeq_uqps %ymm11, %ymm12, %ymm13
3562
3563 // CHECK: vcmpngeps  %ymm11, %ymm12, %ymm13
3564 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x09]
3565           vcmpngeps %ymm11, %ymm12, %ymm13
3566
3567 // CHECK: vcmpngtps  %ymm11, %ymm12, %ymm13
3568 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0a]
3569           vcmpngtps %ymm11, %ymm12, %ymm13
3570
3571 // CHECK: vcmpfalseps  %ymm11, %ymm12, %ymm13
3572 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0b]
3573           vcmpfalseps %ymm11, %ymm12, %ymm13
3574
3575 // CHECK: vcmpneq_oqps  %ymm11, %ymm12, %ymm13
3576 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0c]
3577           vcmpneq_oqps %ymm11, %ymm12, %ymm13
3578
3579 // CHECK: vcmpgeps  %ymm11, %ymm12, %ymm13
3580 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0d]
3581           vcmpgeps %ymm11, %ymm12, %ymm13
3582
3583 // CHECK: vcmpgtps  %ymm11, %ymm12, %ymm13
3584 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0e]
3585           vcmpgtps %ymm11, %ymm12, %ymm13
3586
3587 // CHECK: vcmptrueps  %ymm11, %ymm12, %ymm13
3588 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0f]
3589           vcmptrueps %ymm11, %ymm12, %ymm13
3590
3591 // CHECK: vcmpeq_osps  %ymm11, %ymm12, %ymm13
3592 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x10]
3593           vcmpeq_osps %ymm11, %ymm12, %ymm13
3594
3595 // CHECK: vcmplt_oqps  %ymm11, %ymm12, %ymm13
3596 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x11]
3597           vcmplt_oqps %ymm11, %ymm12, %ymm13
3598
3599 // CHECK: vcmple_oqps  %ymm11, %ymm12, %ymm13
3600 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x12]
3601           vcmple_oqps %ymm11, %ymm12, %ymm13
3602
3603 // CHECK: vcmpunord_sps  %ymm11, %ymm12, %ymm13
3604 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x13]
3605           vcmpunord_sps %ymm11, %ymm12, %ymm13
3606
3607 // CHECK: vcmpneq_usps  %ymm11, %ymm12, %ymm13
3608 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x14]
3609           vcmpneq_usps %ymm11, %ymm12, %ymm13
3610
3611 // CHECK: vcmpnlt_uqps  %ymm11, %ymm12, %ymm13
3612 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x15]
3613           vcmpnlt_uqps %ymm11, %ymm12, %ymm13
3614
3615 // CHECK: vcmpnle_uqps  %ymm11, %ymm12, %ymm13
3616 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x16]
3617           vcmpnle_uqps %ymm11, %ymm12, %ymm13
3618
3619 // CHECK: vcmpord_sps  %ymm11, %ymm12, %ymm13
3620 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x17]
3621           vcmpord_sps %ymm11, %ymm12, %ymm13
3622
3623 // CHECK: vcmpeq_usps  %ymm11, %ymm12, %ymm13
3624 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x18]
3625           vcmpeq_usps %ymm11, %ymm12, %ymm13
3626
3627 // CHECK: vcmpnge_uqps  %ymm11, %ymm12, %ymm13
3628 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x19]
3629           vcmpnge_uqps %ymm11, %ymm12, %ymm13
3630
3631 // CHECK: vcmpngt_uqps  %ymm11, %ymm12, %ymm13
3632 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1a]
3633           vcmpngt_uqps %ymm11, %ymm12, %ymm13
3634
3635 // CHECK: vcmpfalse_osps  %ymm11, %ymm12, %ymm13
3636 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1b]
3637           vcmpfalse_osps %ymm11, %ymm12, %ymm13
3638
3639 // CHECK: vcmpneq_osps  %ymm11, %ymm12, %ymm13
3640 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1c]
3641           vcmpneq_osps %ymm11, %ymm12, %ymm13
3642
3643 // CHECK: vcmpge_oqps  %ymm11, %ymm12, %ymm13
3644 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1d]
3645           vcmpge_oqps %ymm11, %ymm12, %ymm13
3646
3647 // CHECK: vcmpgt_oqps  %ymm11, %ymm12, %ymm13
3648 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1e]
3649           vcmpgt_oqps %ymm11, %ymm12, %ymm13
3650
3651 // CHECK: vcmptrue_usps  %ymm11, %ymm12, %ymm13
3652 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1f]
3653           vcmptrue_usps %ymm11, %ymm12, %ymm13
3654
3655 // CHECK: vaddsubps  %ymm11, %ymm12, %ymm13
3656 // CHECK: encoding: [0xc4,0x41,0x1f,0xd0,0xeb]
3657           vaddsubps  %ymm11, %ymm12, %ymm13
3658
3659 // CHECK: vaddsubps  (%rax), %ymm11, %ymm12
3660 // CHECK: encoding: [0xc5,0x27,0xd0,0x20]
3661           vaddsubps  (%rax), %ymm11, %ymm12
3662
3663 // CHECK: vaddsubpd  %ymm11, %ymm12, %ymm13
3664 // CHECK: encoding: [0xc4,0x41,0x1d,0xd0,0xeb]
3665           vaddsubpd  %ymm11, %ymm12, %ymm13
3666
3667 // CHECK: vaddsubpd  (%rax), %ymm11, %ymm12
3668 // CHECK: encoding: [0xc5,0x25,0xd0,0x20]
3669           vaddsubpd  (%rax), %ymm11, %ymm12
3670
3671 // CHECK: vhaddps  %ymm11, %ymm12, %ymm13
3672 // CHECK: encoding: [0xc4,0x41,0x1f,0x7c,0xeb]
3673           vhaddps  %ymm11, %ymm12, %ymm13
3674
3675 // CHECK: vhaddps  (%rax), %ymm12, %ymm13
3676 // CHECK: encoding: [0xc5,0x1f,0x7c,0x28]
3677           vhaddps  (%rax), %ymm12, %ymm13
3678
3679 // CHECK: vhaddpd  %ymm11, %ymm12, %ymm13
3680 // CHECK: encoding: [0xc4,0x41,0x1d,0x7c,0xeb]
3681           vhaddpd  %ymm11, %ymm12, %ymm13
3682
3683 // CHECK: vhaddpd  (%rax), %ymm12, %ymm13
3684 // CHECK: encoding: [0xc5,0x1d,0x7c,0x28]
3685           vhaddpd  (%rax), %ymm12, %ymm13
3686
3687 // CHECK: vhsubps  %ymm11, %ymm12, %ymm13
3688 // CHECK: encoding: [0xc4,0x41,0x1f,0x7d,0xeb]
3689           vhsubps  %ymm11, %ymm12, %ymm13
3690
3691 // CHECK: vhsubps  (%rax), %ymm12, %ymm13
3692 // CHECK: encoding: [0xc5,0x1f,0x7d,0x28]
3693           vhsubps  (%rax), %ymm12, %ymm13
3694
3695 // CHECK: vhsubpd  %ymm11, %ymm12, %ymm13
3696 // CHECK: encoding: [0xc4,0x41,0x1d,0x7d,0xeb]
3697           vhsubpd  %ymm11, %ymm12, %ymm13
3698
3699 // CHECK: vhsubpd  (%rax), %ymm12, %ymm13
3700 // CHECK: encoding: [0xc5,0x1d,0x7d,0x28]
3701           vhsubpd  (%rax), %ymm12, %ymm13
3702
3703 // CHECK: vblendps  $3, %ymm12, %ymm10, %ymm11
3704 // CHECK: encoding: [0xc4,0x43,0x2d,0x0c,0xdc,0x03]
3705           vblendps  $3, %ymm12, %ymm10, %ymm11
3706
3707 // CHECK: vblendps  $3, (%rax), %ymm10, %ymm11
3708 // CHECK: encoding: [0xc4,0x63,0x2d,0x0c,0x18,0x03]
3709           vblendps  $3, (%rax), %ymm10, %ymm11
3710
3711 // CHECK: vblendpd  $3, %ymm12, %ymm10, %ymm11
3712 // CHECK: encoding: [0xc4,0x43,0x2d,0x0d,0xdc,0x03]
3713           vblendpd  $3, %ymm12, %ymm10, %ymm11
3714
3715 // CHECK: vblendpd  $3, (%rax), %ymm10, %ymm11
3716 // CHECK: encoding: [0xc4,0x63,0x2d,0x0d,0x18,0x03]
3717           vblendpd  $3, (%rax), %ymm10, %ymm11
3718
3719 // CHECK: vdpps  $3, %ymm12, %ymm10, %ymm11
3720 // CHECK: encoding: [0xc4,0x43,0x2d,0x40,0xdc,0x03]
3721           vdpps  $3, %ymm12, %ymm10, %ymm11
3722
3723 // CHECK: vdpps  $3, (%rax), %ymm10, %ymm11
3724 // CHECK: encoding: [0xc4,0x63,0x2d,0x40,0x18,0x03]
3725           vdpps  $3, (%rax), %ymm10, %ymm11
3726
3727 // CHECK: vbroadcasti128  (%rax), %ymm12
3728 // CHECK: encoding: [0xc4,0x62,0x7d,0x5a,0x20]
3729           vbroadcasti128  (%rax), %ymm12
3730
3731 // CHECK: vbroadcastf128  (%rax), %ymm12
3732 // CHECK: encoding: [0xc4,0x62,0x7d,0x1a,0x20]
3733           vbroadcastf128  (%rax), %ymm12
3734
3735 // CHECK: vbroadcastsd  (%rax), %ymm12
3736 // CHECK: encoding: [0xc4,0x62,0x7d,0x19,0x20]
3737           vbroadcastsd  (%rax), %ymm12
3738
3739 // CHECK: vbroadcastss  (%rax), %xmm12
3740 // CHECK: encoding: [0xc4,0x62,0x79,0x18,0x20]
3741           vbroadcastss  (%rax), %xmm12
3742
3743 // CHECK: vbroadcastss  (%rax), %ymm12
3744 // CHECK: encoding: [0xc4,0x62,0x7d,0x18,0x20]
3745           vbroadcastss  (%rax), %ymm12
3746
3747 // CHECK: vinsertf128  $7, %xmm12, %ymm12, %ymm10
3748 // CHECK: encoding: [0xc4,0x43,0x1d,0x18,0xd4,0x07]
3749           vinsertf128  $7, %xmm12, %ymm12, %ymm10
3750
3751 // CHECK: vinsertf128  $7, (%rax), %ymm12, %ymm10
3752 // CHECK: encoding: [0xc4,0x63,0x1d,0x18,0x10,0x07]
3753           vinsertf128  $7, (%rax), %ymm12, %ymm10
3754
3755 // CHECK: vextractf128  $7, %ymm12, %xmm12
3756 // CHECK: encoding: [0xc4,0x43,0x7d,0x19,0xe4,0x07]
3757           vextractf128  $7, %ymm12, %xmm12
3758
3759 // CHECK: vextractf128  $7, %ymm12, (%rax)
3760 // CHECK: encoding: [0xc4,0x63,0x7d,0x19,0x20,0x07]
3761           vextractf128  $7, %ymm12, (%rax)
3762
3763 // CHECK: vmaskmovpd  %xmm12, %xmm10, (%rax)
3764 // CHECK: encoding: [0xc4,0x62,0x29,0x2f,0x20]
3765           vmaskmovpd  %xmm12, %xmm10, (%rax)
3766
3767 // CHECK: vmaskmovpd  %ymm12, %ymm10, (%rax)
3768 // CHECK: encoding: [0xc4,0x62,0x2d,0x2f,0x20]
3769           vmaskmovpd  %ymm12, %ymm10, (%rax)
3770
3771 // CHECK: vmaskmovpd  (%rax), %xmm12, %xmm10
3772 // CHECK: encoding: [0xc4,0x62,0x19,0x2d,0x10]
3773           vmaskmovpd  (%rax), %xmm12, %xmm10
3774
3775 // CHECK: vmaskmovpd  (%rax), %ymm12, %ymm10
3776 // CHECK: encoding: [0xc4,0x62,0x1d,0x2d,0x10]
3777           vmaskmovpd  (%rax), %ymm12, %ymm10
3778
3779 // CHECK: vmaskmovps  %xmm12, %xmm10, (%rax)
3780 // CHECK: encoding: [0xc4,0x62,0x29,0x2e,0x20]
3781           vmaskmovps  %xmm12, %xmm10, (%rax)
3782
3783 // CHECK: vmaskmovps  %ymm12, %ymm10, (%rax)
3784 // CHECK: encoding: [0xc4,0x62,0x2d,0x2e,0x20]
3785           vmaskmovps  %ymm12, %ymm10, (%rax)
3786
3787 // CHECK: vmaskmovps  (%rax), %xmm12, %xmm10
3788 // CHECK: encoding: [0xc4,0x62,0x19,0x2c,0x10]
3789           vmaskmovps  (%rax), %xmm12, %xmm10
3790
3791 // CHECK: vmaskmovps  (%rax), %ymm12, %ymm10
3792 // CHECK: encoding: [0xc4,0x62,0x1d,0x2c,0x10]
3793           vmaskmovps  (%rax), %ymm12, %ymm10
3794
3795 // CHECK: vpermilps  $7, %xmm11, %xmm10
3796 // CHECK: encoding: [0xc4,0x43,0x79,0x04,0xd3,0x07]
3797           vpermilps  $7, %xmm11, %xmm10
3798
3799 // CHECK: vpermilps  $7, %ymm10, %ymm11
3800 // CHECK: encoding: [0xc4,0x43,0x7d,0x04,0xda,0x07]
3801           vpermilps  $7, %ymm10, %ymm11
3802
3803 // CHECK: vpermilps  $7, (%rax), %xmm10
3804 // CHECK: encoding: [0xc4,0x63,0x79,0x04,0x10,0x07]
3805           vpermilps  $7, (%rax), %xmm10
3806
3807 // CHECK: vpermilps  $7, (%rax), %ymm10
3808 // CHECK: encoding: [0xc4,0x63,0x7d,0x04,0x10,0x07]
3809           vpermilps  $7, (%rax), %ymm10
3810
3811 // CHECK: vpermilps  %xmm11, %xmm10, %xmm11
3812 // CHECK: encoding: [0xc4,0x42,0x29,0x0c,0xdb]
3813           vpermilps  %xmm11, %xmm10, %xmm11
3814
3815 // CHECK: vpermilps  %ymm11, %ymm10, %ymm11
3816 // CHECK: encoding: [0xc4,0x42,0x2d,0x0c,0xdb]
3817           vpermilps  %ymm11, %ymm10, %ymm11
3818
3819 // CHECK: vpermilps  (%rax), %xmm10, %xmm13
3820 // CHECK: encoding: [0xc4,0x62,0x29,0x0c,0x28]
3821           vpermilps  (%rax), %xmm10, %xmm13
3822
3823 // CHECK: vpermilps  (%rax), %ymm10, %ymm11
3824 // CHECK: encoding: [0xc4,0x62,0x2d,0x0c,0x18]
3825           vpermilps  (%rax), %ymm10, %ymm11
3826
3827 // CHECK: vpermilpd  $7, %xmm11, %xmm10
3828 // CHECK: encoding: [0xc4,0x43,0x79,0x05,0xd3,0x07]
3829           vpermilpd  $7, %xmm11, %xmm10
3830
3831 // CHECK: vpermilpd  $7, %ymm10, %ymm11
3832 // CHECK: encoding: [0xc4,0x43,0x7d,0x05,0xda,0x07]
3833           vpermilpd  $7, %ymm10, %ymm11
3834
3835 // CHECK: vpermilpd  $7, (%rax), %xmm10
3836 // CHECK: encoding: [0xc4,0x63,0x79,0x05,0x10,0x07]
3837           vpermilpd  $7, (%rax), %xmm10
3838
3839 // CHECK: vpermilpd  $7, (%rax), %ymm10
3840 // CHECK: encoding: [0xc4,0x63,0x7d,0x05,0x10,0x07]
3841           vpermilpd  $7, (%rax), %ymm10
3842
3843 // CHECK: vpermilpd  %xmm11, %xmm10, %xmm11
3844 // CHECK: encoding: [0xc4,0x42,0x29,0x0d,0xdb]
3845           vpermilpd  %xmm11, %xmm10, %xmm11
3846
3847 // CHECK: vpermilpd  %ymm11, %ymm10, %ymm11
3848 // CHECK: encoding: [0xc4,0x42,0x2d,0x0d,0xdb]
3849           vpermilpd  %ymm11, %ymm10, %ymm11
3850
3851 // CHECK: vpermilpd  (%rax), %xmm10, %xmm13
3852 // CHECK: encoding: [0xc4,0x62,0x29,0x0d,0x28]
3853           vpermilpd  (%rax), %xmm10, %xmm13
3854
3855 // CHECK: vpermilpd  (%rax), %ymm10, %ymm11
3856 // CHECK: encoding: [0xc4,0x62,0x2d,0x0d,0x18]
3857           vpermilpd  (%rax), %ymm10, %ymm11
3858
3859 // CHECK: vperm2f128  $7, %ymm12, %ymm10, %ymm11
3860 // CHECK: encoding: [0xc4,0x43,0x2d,0x06,0xdc,0x07]
3861           vperm2f128  $7, %ymm12, %ymm10, %ymm11
3862
3863 // CHECK: vperm2f128  $7, (%rax), %ymm10, %ymm11
3864 // CHECK: encoding: [0xc4,0x63,0x2d,0x06,0x18,0x07]
3865           vperm2f128  $7, (%rax), %ymm10, %ymm11
3866
3867 // CHECK: vcvtsd2si  %xmm8, %r8d
3868 // CHECK: encoding: [0xc4,0x41,0x7b,0x2d,0xc0]
3869           vcvtsd2si  %xmm8, %r8d
3870
3871 // CHECK: vcvtsd2si  (%rcx), %ecx
3872 // CHECK: encoding: [0xc5,0xfb,0x2d,0x09]
3873           vcvtsd2si  (%rcx), %ecx
3874
3875 // CHECK: vcvtss2si  %xmm4, %rcx
3876 // CHECK: encoding: [0xc4,0xe1,0xfa,0x2d,0xcc]
3877           vcvtss2si  %xmm4, %rcx
3878
3879 // CHECK: vcvtss2si  (%rcx), %r8
3880 // CHECK: encoding: [0xc4,0x61,0xfa,0x2d,0x01]
3881           vcvtss2si  (%rcx), %r8
3882
3883 // CHECK: vcvtsi2sdl  %r8d, %xmm8, %xmm15
3884 // CHECK: encoding: [0xc4,0x41,0x3b,0x2a,0xf8]
3885           vcvtsi2sdl  %r8d, %xmm8, %xmm15
3886
3887 // CHECK: vcvtsi2sdl  (%rbp), %xmm8, %xmm15
3888 // CHECK: encoding: [0xc5,0x3b,0x2a,0x7d,0x00]
3889           vcvtsi2sdl  (%rbp), %xmm8, %xmm15
3890
3891 // CHECK: vcvtsi2sdq  %rcx, %xmm4, %xmm6
3892 // CHECK: encoding: [0xc4,0xe1,0xdb,0x2a,0xf1]
3893           vcvtsi2sdq  %rcx, %xmm4, %xmm6
3894
3895 // CHECK: vcvtsi2sdq  (%rcx), %xmm4, %xmm6
3896 // CHECK: encoding: [0xc4,0xe1,0xdb,0x2a,0x31]
3897           vcvtsi2sdq  (%rcx), %xmm4, %xmm6
3898
3899 // CHECK: vcvtsi2ssq  %rcx, %xmm4, %xmm6
3900 // CHECK: encoding: [0xc4,0xe1,0xda,0x2a,0xf1]
3901           vcvtsi2ssq  %rcx, %xmm4, %xmm6
3902
3903 // CHECK: vcvtsi2ssq  (%rcx), %xmm4, %xmm6
3904 // CHECK: encoding: [0xc4,0xe1,0xda,0x2a,0x31]
3905           vcvtsi2ssq  (%rcx), %xmm4, %xmm6
3906
3907 // CHECK: vcvttsd2si  %xmm4, %rcx
3908 // CHECK: encoding: [0xc4,0xe1,0xfb,0x2c,0xcc]
3909           vcvttsd2si  %xmm4, %rcx
3910
3911 // CHECK: vcvttsd2si  (%rcx), %rcx
3912 // CHECK: encoding: [0xc4,0xe1,0xfb,0x2c,0x09]
3913           vcvttsd2si  (%rcx), %rcx
3914
3915 // CHECK: vcvttss2si  %xmm4, %rcx
3916 // CHECK: encoding: [0xc4,0xe1,0xfa,0x2c,0xcc]
3917           vcvttss2si  %xmm4, %rcx
3918
3919 // CHECK: vcvttss2si  (%rcx), %rcx
3920 // CHECK: encoding: [0xc4,0xe1,0xfa,0x2c,0x09]
3921           vcvttss2si  (%rcx), %rcx
3922
3923 // CHECK: vlddqu  (%rax), %ymm12
3924 // CHECK: encoding: [0xc5,0x7f,0xf0,0x20]
3925           vlddqu  (%rax), %ymm12
3926
3927 // CHECK: vmovddup  %ymm12, %ymm10
3928 // CHECK: encoding: [0xc4,0x41,0x7f,0x12,0xd4]
3929           vmovddup  %ymm12, %ymm10
3930
3931 // CHECK: vmovddup  (%rax), %ymm12
3932 // CHECK: encoding: [0xc5,0x7f,0x12,0x20]
3933           vmovddup  (%rax), %ymm12
3934
3935 // CHECK: vmovdqa  %ymm12, %ymm10
3936 // CHECK: encoding: [0xc4,0x41,0x7d,0x6f,0xd4]
3937           vmovdqa  %ymm12, %ymm10
3938
3939 // CHECK: vmovdqa  %ymm12, (%rax)
3940 // CHECK: encoding: [0xc5,0x7d,0x7f,0x20]
3941           vmovdqa  %ymm12, (%rax)
3942
3943 // CHECK: vmovdqa  (%rax), %ymm12
3944 // CHECK: encoding: [0xc5,0x7d,0x6f,0x20]
3945           vmovdqa  (%rax), %ymm12
3946
3947 // CHECK: vmovdqu  %ymm12, %ymm10
3948 // CHECK: encoding: [0xc4,0x41,0x7e,0x6f,0xd4]
3949           vmovdqu  %ymm12, %ymm10
3950
3951 // CHECK: vmovdqu  %ymm12, (%rax)
3952 // CHECK: encoding: [0xc5,0x7e,0x7f,0x20]
3953           vmovdqu  %ymm12, (%rax)
3954
3955 // CHECK: vmovdqu  (%rax), %ymm12
3956 // CHECK: encoding: [0xc5,0x7e,0x6f,0x20]
3957           vmovdqu  (%rax), %ymm12
3958
3959 // CHECK: vmovshdup  %ymm12, %ymm10
3960 // CHECK: encoding: [0xc4,0x41,0x7e,0x16,0xd4]
3961           vmovshdup  %ymm12, %ymm10
3962
3963 // CHECK: vmovshdup  (%rax), %ymm12
3964 // CHECK: encoding: [0xc5,0x7e,0x16,0x20]
3965           vmovshdup  (%rax), %ymm12
3966
3967 // CHECK: vmovsldup  %ymm12, %ymm10
3968 // CHECK: encoding: [0xc4,0x41,0x7e,0x12,0xd4]
3969           vmovsldup  %ymm12, %ymm10
3970
3971 // CHECK: vmovsldup  (%rax), %ymm12
3972 // CHECK: encoding: [0xc5,0x7e,0x12,0x20]
3973           vmovsldup  (%rax), %ymm12
3974
3975 // CHECK: vptest  %ymm12, %ymm10
3976 // CHECK: encoding: [0xc4,0x42,0x7d,0x17,0xd4]
3977           vptest  %ymm12, %ymm10
3978
3979 // CHECK: vptest  (%rax), %ymm12
3980 // CHECK: encoding: [0xc4,0x62,0x7d,0x17,0x20]
3981           vptest  (%rax), %ymm12
3982
3983 // CHECK: vroundpd  $7, %ymm10, %ymm11
3984 // CHECK: encoding: [0xc4,0x43,0x7d,0x09,0xda,0x07]
3985           vroundpd  $7, %ymm10, %ymm11
3986
3987 // CHECK: vroundpd  $7, (%rax), %ymm10
3988 // CHECK: encoding: [0xc4,0x63,0x7d,0x09,0x10,0x07]
3989           vroundpd  $7, (%rax), %ymm10
3990
3991 // CHECK: vroundps  $7, %ymm10, %ymm11
3992 // CHECK: encoding: [0xc4,0x43,0x7d,0x08,0xda,0x07]
3993           vroundps  $7, %ymm10, %ymm11
3994
3995 // CHECK: vroundps  $7, (%rax), %ymm10
3996 // CHECK: encoding: [0xc4,0x63,0x7d,0x08,0x10,0x07]
3997           vroundps  $7, (%rax), %ymm10
3998
3999 // CHECK: vshufpd  $7, %ymm12, %ymm10, %ymm11
4000 // CHECK: encoding: [0xc4,0x41,0x2d,0xc6,0xdc,0x07]
4001           vshufpd  $7, %ymm12, %ymm10, %ymm11
4002
4003 // CHECK: vshufpd  $7, (%rax), %ymm10, %ymm11
4004 // CHECK: encoding: [0xc5,0x2d,0xc6,0x18,0x07]
4005           vshufpd  $7, (%rax), %ymm10, %ymm11
4006
4007 // CHECK: vshufps  $7, %ymm12, %ymm10, %ymm11
4008 // CHECK: encoding: [0xc4,0x41,0x2c,0xc6,0xdc,0x07]
4009           vshufps  $7, %ymm12, %ymm10, %ymm11
4010
4011 // CHECK: vshufps  $7, (%rax), %ymm10, %ymm11
4012 // CHECK: encoding: [0xc5,0x2c,0xc6,0x18,0x07]
4013           vshufps  $7, (%rax), %ymm10, %ymm11
4014
4015 // CHECK: vtestpd  %xmm12, %xmm10
4016 // CHECK: encoding: [0xc4,0x42,0x79,0x0f,0xd4]
4017           vtestpd  %xmm12, %xmm10
4018
4019 // CHECK: vtestpd  %ymm12, %ymm10
4020 // CHECK: encoding: [0xc4,0x42,0x7d,0x0f,0xd4]
4021           vtestpd  %ymm12, %ymm10
4022
4023 // CHECK: vtestpd  (%rax), %xmm12
4024 // CHECK: encoding: [0xc4,0x62,0x79,0x0f,0x20]
4025           vtestpd  (%rax), %xmm12
4026
4027 // CHECK: vtestpd  (%rax), %ymm12
4028 // CHECK: encoding: [0xc4,0x62,0x7d,0x0f,0x20]
4029           vtestpd  (%rax), %ymm12
4030
4031 // CHECK: vtestps  %xmm12, %xmm10
4032 // CHECK: encoding: [0xc4,0x42,0x79,0x0e,0xd4]
4033           vtestps  %xmm12, %xmm10
4034
4035 // CHECK: vtestps  %ymm12, %ymm10
4036 // CHECK: encoding: [0xc4,0x42,0x7d,0x0e,0xd4]
4037           vtestps  %ymm12, %ymm10
4038
4039 // CHECK: vtestps  (%rax), %xmm12
4040 // CHECK: encoding: [0xc4,0x62,0x79,0x0e,0x20]
4041           vtestps  (%rax), %xmm12
4042
4043 // CHECK: vtestps  (%rax), %ymm12
4044 // CHECK: encoding: [0xc4,0x62,0x7d,0x0e,0x20]
4045           vtestps  (%rax), %ymm12
4046
4047 // CHECK: vextractps   $10, %xmm8, %r8
4048 // CHECK: encoding: [0xc4,0x43,0x79,0x17,0xc0,0x0a]
4049           vextractps   $10, %xmm8, %r8
4050
4051 // CHECK: vextractps   $7, %xmm4, %ecx
4052 // CHECK: encoding: [0xc4,0xe3,0x79,0x17,0xe1,0x07]
4053           vextractps   $7, %xmm4, %rcx
4054
4055 // CHECK: vmovq  %xmm4, %rcx
4056 // CHECK: encoding: [0xc4,0xe1,0xf9,0x7e,0xe1]
4057           vmovd  %xmm4, %rcx
4058
4059 // CHECK: vmovmskpd  %xmm4, %ecx
4060 // CHECK: encoding: [0xc5,0xf9,0x50,0xcc]
4061           vmovmskpd  %xmm4, %rcx
4062
4063 // CHECK: vmovmskpd  %ymm4, %ecx
4064 // CHECK: encoding: [0xc5,0xfd,0x50,0xcc]
4065           vmovmskpd  %ymm4, %rcx
4066
4067 // CHECK: vmovmskps  %xmm4, %ecx
4068 // CHECK: encoding: [0xc5,0xf8,0x50,0xcc]
4069           vmovmskps  %xmm4, %rcx
4070
4071 // CHECK: vmovmskps  %ymm4, %ecx
4072 // CHECK: encoding: [0xc5,0xfc,0x50,0xcc]
4073           vmovmskps  %ymm4, %rcx
4074
4075 // CHECK: vpextrb  $7, %xmm4, %ecx
4076 // CHECK: encoding: [0xc4,0xe3,0x79,0x14,0xe1,0x07]
4077           vpextrb  $7, %xmm4, %rcx
4078
4079 // CHECK: vpinsrw  $7, %r8d, %xmm15, %xmm8
4080 // CHECK: encoding: [0xc4,0x41,0x01,0xc4,0xc0,0x07]
4081           vpinsrw  $7, %r8, %xmm15, %xmm8
4082
4083 // CHECK: vpinsrw  $7, %ecx, %xmm4, %xmm6
4084 // CHECK: encoding: [0xc5,0xd9,0xc4,0xf1,0x07]
4085           vpinsrw  $7, %rcx, %xmm4, %xmm6
4086
4087 // CHECK: vpmovmskb  %xmm4, %ecx
4088 // CHECK: encoding: [0xc5,0xf9,0xd7,0xcc]
4089           vpmovmskb  %xmm4, %rcx
4090
4091 // CHECK: vblendvpd  %ymm11, 57005(%rax,%riz), %ymm12, %ymm13
4092 // CHECK: encoding: [0xc4,0x63,0x1d,0x4b,0xac,0x20,0xad,0xde,0x00,0x00,0xb0]
4093           vblendvpd  %ymm11, 0xdead(%rax,%riz), %ymm12, %ymm13
4094
4095 // CHECK: vmovaps       %xmm3, (%r14,%r11)
4096 // CHECK: encoding: [0xc4,0x81,0x78,0x29,0x1c,0x1e]
4097           vmovaps       %xmm3, (%r14,%r11)
4098
4099 // CHECK: vmovaps       (%r14,%r11), %xmm3
4100 // CHECK: encoding: [0xc4,0x81,0x78,0x28,0x1c,0x1e]
4101           vmovaps       (%r14,%r11), %xmm3
4102
4103 // CHECK: vmovaps       %xmm3, (%r14,%rbx)
4104 // CHECK: encoding: [0xc4,0xc1,0x78,0x29,0x1c,0x1e]
4105           vmovaps       %xmm3, (%r14,%rbx)
4106
4107 // CHECK: vmovaps       (%r14,%rbx), %xmm3
4108 // CHECK: encoding: [0xc4,0xc1,0x78,0x28,0x1c,0x1e]
4109           vmovaps       (%r14,%rbx), %xmm3
4110
4111 // CHECK: vmovaps %xmm3, (%rax,%r11)
4112 // CHECK: encoding: [0xc4,0xa1,0x78,0x29,0x1c,0x18]
4113           vmovaps %xmm3, (%rax,%r11)
4114
4115 // CHECK: vpshufb _foo(%rip), %xmm0, %xmm0
4116 // CHECK: encoding: [0xc4,0xe2,0x79,0x00,0x05,A,A,A,A]
4117 // CHECK: kind: reloc_riprel_4byte
4118 _foo:
4119   nop
4120   vpshufb _foo(%rip), %xmm0, %xmm0
4121
4122 // CHECK: vblendvps %ymm1, _foo2(%rip), %ymm0, %ymm0
4123 // CHECK: encoding: [0xc4,0xe3,0x7d,0x4a,0x05,A,A,A,A,0x10]
4124 // CHECK: fixup A - offset: 5, value: _foo2-5
4125 _foo2:
4126   nop
4127   vblendvps %ymm1, _foo2(%rip), %ymm0, %ymm0
4128
4129 // CHECK: vgatherdpd %xmm0, (%rdi,%xmm1,2), %xmm2
4130 // CHECK: encoding: [0xc4,0xe2,0xf9,0x92,0x14,0x4f]
4131           vgatherdpd %xmm0, (%rdi,%xmm1,2), %xmm2
4132
4133 // CHECK: vgatherqpd %xmm0, (%rdi,%xmm1,2), %xmm2
4134 // CHECK: encoding: [0xc4,0xe2,0xf9,0x93,0x14,0x4f]
4135           vgatherqpd %xmm0, (%rdi,%xmm1,2), %xmm2
4136
4137 // CHECK: vgatherdpd %ymm0, (%rdi,%xmm1,2), %ymm2
4138 // CHECK: encoding: [0xc4,0xe2,0xfd,0x92,0x14,0x4f]
4139           vgatherdpd %ymm0, (%rdi,%xmm1,2), %ymm2
4140
4141 // CHECK: vgatherqpd %ymm0, (%rdi,%ymm1,2), %ymm2
4142 // CHECK: encoding: [0xc4,0xe2,0xfd,0x93,0x14,0x4f]
4143           vgatherqpd %ymm0, (%rdi,%ymm1,2), %ymm2
4144
4145 // CHECK: vgatherdps %xmm8, (%r15,%xmm9,2), %xmm10
4146 // CHECK: encoding: [0xc4,0x02,0x39,0x92,0x14,0x4f]
4147           vgatherdps %xmm8, (%r15,%xmm9,2), %xmm10
4148
4149 // CHECK: vgatherqps %xmm8, (%r15,%xmm9,2), %xmm10
4150 // CHECK: encoding: [0xc4,0x02,0x39,0x93,0x14,0x4f]
4151           vgatherqps %xmm8, (%r15,%xmm9,2), %xmm10
4152
4153 // CHECK: vgatherdps %ymm8, (%r15,%ymm9,2), %ymm10
4154 // CHECK: encoding: [0xc4,0x02,0x3d,0x92,0x14,0x4f]
4155           vgatherdps %ymm8, (%r15,%ymm9,2), %ymm10
4156
4157 // CHECK: vgatherqps %xmm8, (%r15,%ymm9,2), %xmm10
4158 // CHECK: encoding: [0xc4,0x02,0x3d,0x93,0x14,0x4f]
4159           vgatherqps %xmm8, (%r15,%ymm9,2), %xmm10
4160
4161 // CHECK: vpgatherdq %xmm0, (%rdi,%xmm1,2), %xmm2
4162 // CHECK: encoding: [0xc4,0xe2,0xf9,0x90,0x14,0x4f]
4163           vpgatherdq %xmm0, (%rdi,%xmm1,2), %xmm2
4164
4165 // CHECK: vpgatherqq %xmm0, (%rdi,%xmm1,2), %xmm2
4166 // CHECK: encoding: [0xc4,0xe2,0xf9,0x91,0x14,0x4f]
4167           vpgatherqq %xmm0, (%rdi,%xmm1,2), %xmm2
4168
4169 // CHECK: vpgatherdq %ymm0, (%rdi,%xmm1,2), %ymm2
4170 // CHECK: encoding: [0xc4,0xe2,0xfd,0x90,0x14,0x4f]
4171           vpgatherdq %ymm0, (%rdi,%xmm1,2), %ymm2
4172
4173 // CHECK: vpgatherqq %ymm0, (%rdi,%ymm1,2), %ymm2
4174 // CHECK: encoding: [0xc4,0xe2,0xfd,0x91,0x14,0x4f]
4175           vpgatherqq %ymm0, (%rdi,%ymm1,2), %ymm2
4176
4177 // CHECK: vpgatherdd %xmm8, (%r15,%xmm9,2), %xmm10
4178 // CHECK: encoding: [0xc4,0x02,0x39,0x90,0x14,0x4f]
4179           vpgatherdd %xmm8, (%r15,%xmm9,2), %xmm10
4180
4181 // CHECK: vpgatherqd %xmm8, (%r15,%xmm9,2), %xmm10
4182 // CHECK: encoding: [0xc4,0x02,0x39,0x91,0x14,0x4f]
4183           vpgatherqd %xmm8, (%r15,%xmm9,2), %xmm10
4184
4185 // CHECK: vpgatherdd %ymm8, (%r15,%ymm9,2), %ymm10
4186 // CHECK: encoding: [0xc4,0x02,0x3d,0x90,0x14,0x4f]
4187           vpgatherdd %ymm8, (%r15,%ymm9,2), %ymm10
4188
4189 // CHECK: vpgatherqd %xmm8, (%r15,%ymm9,2), %xmm10
4190 // CHECK: encoding: [0xc4,0x02,0x3d,0x91,0x14,0x4f]
4191           vpgatherqd %xmm8, (%r15,%ymm9,2), %xmm10
4192
4193 // CHECK: vmovaps %xmm0, %xmm8
4194 // CHECK: encoding: [0xc5,0x78,0x28,0xc0]
4195           vmovaps %xmm0, %xmm8
4196
4197 // CHECK: vmovaps %xmm8, %xmm0
4198 // CHECK: encoding: [0xc5,0x78,0x29,0xc0]
4199           vmovaps %xmm8, %xmm0
4200
4201 // CHECK: vmovaps %ymm0, %ymm8
4202 // CHECK: encoding: [0xc5,0x7c,0x28,0xc0]
4203           vmovaps %ymm0, %ymm8
4204
4205 // CHECK: vmovaps %ymm8, %ymm0
4206 // CHECK: encoding: [0xc5,0x7c,0x29,0xc0]
4207           vmovaps %ymm8, %ymm0
4208
4209 // CHECK: vmovups %xmm0, %xmm8
4210 // CHECK: encoding: [0xc5,0x78,0x10,0xc0]
4211           vmovups %xmm0, %xmm8
4212
4213 // CHECK: vmovups %xmm8, %xmm0
4214 // CHECK: encoding: [0xc5,0x78,0x11,0xc0]
4215           vmovups %xmm8, %xmm0
4216
4217 // CHECK: vmovups %ymm0, %ymm8
4218 // CHECK: encoding: [0xc5,0x7c,0x10,0xc0]
4219           vmovups %ymm0, %ymm8
4220
4221 // CHECK: vmovups %ymm8, %ymm0
4222 // CHECK: encoding: [0xc5,0x7c,0x11,0xc0]
4223           vmovups %ymm8, %ymm0
4224
4225 // CHECK: vmovss %xmm0, %xmm0, %xmm8
4226 // CHECK: encoding: [0xc5,0x7a,0x10,0xc0]
4227           vmovss %xmm0, %xmm0, %xmm8
4228
4229 // CHECK: vmovss %xmm0, %xmm8, %xmm0
4230 // CHECK: encoding: [0xc5,0xba,0x10,0xc0]
4231           vmovss %xmm0, %xmm8, %xmm0
4232
4233 // CHECK: vmovss %xmm8, %xmm0, %xmm0
4234 // CHECK: encoding: [0xc5,0x7a,0x11,0xc0]
4235           vmovss %xmm8, %xmm0, %xmm0
4236
4237 // CHECK: vmovsd %xmm0, %xmm0, %xmm8
4238 // CHECK: encoding: [0xc5,0x7b,0x10,0xc0]
4239           vmovsd %xmm0, %xmm0, %xmm8
4240
4241 // CHECK: vmovsd %xmm0, %xmm8, %xmm0
4242 // CHECK: encoding: [0xc5,0xbb,0x10,0xc0]
4243           vmovsd %xmm0, %xmm8, %xmm0
4244
4245 // CHECK: vmovsd %xmm8, %xmm0, %xmm0
4246 // CHECK: encoding: [0xc5,0x7b,0x11,0xc0]
4247           vmovsd %xmm8, %xmm0, %xmm0