Move SSE3 Move patterns to a more appropriate section
[oota-llvm.git] / test / MC / AsmParser / X86 / x86_64-encoding.s
1 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
2
3 // CHECK: crc32b        %bl, %eax
4 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf0,0xc3]
5         crc32b  %bl, %eax
6
7 // CHECK: crc32b        4(%rbx), %eax
8 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf0,0x43,0x04]
9         crc32b  4(%rbx), %eax
10
11 // CHECK: crc32w        %bx, %eax
12 // CHECK:  encoding: [0x66,0xf2,0x0f,0x38,0xf1,0xc3]
13         crc32w  %bx, %eax
14
15 // CHECK: crc32w        4(%rbx), %eax
16 // CHECK:  encoding: [0x66,0xf2,0x0f,0x38,0xf1,0x43,0x04]
17         crc32w  4(%rbx), %eax
18
19 // CHECK: crc32l        %ebx, %eax
20 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0xc3]
21         crc32l  %ebx, %eax
22
23 // CHECK: crc32l        4(%rbx), %eax
24 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x43,0x04]
25         crc32l  4(%rbx), %eax
26
27 // CHECK: crc32l        3735928559(%rbx,%rcx,8), %ecx
28 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x8c,0xcb,0xef,0xbe,0xad,0xde]
29                 crc32l   0xdeadbeef(%rbx,%rcx,8),%ecx
30
31 // CHECK: crc32l        69, %ecx
32 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x0c,0x25,0x45,0x00,0x00,0x00]
33                 crc32l   0x45,%ecx
34
35 // CHECK: crc32l        32493, %ecx
36 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x0c,0x25,0xed,0x7e,0x00,0x00]
37                 crc32l   0x7eed,%ecx
38
39 // CHECK: crc32l        3133065982, %ecx
40 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x0c,0x25,0xfe,0xca,0xbe,0xba]
41                 crc32l   0xbabecafe,%ecx
42
43 // CHECK: crc32l        %ecx, %ecx
44 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0xc9]
45                 crc32l   %ecx,%ecx
46
47 // CHECK: crc32b        %r11b, %eax
48 // CHECK:  encoding: [0xf2,0x41,0x0f,0x38,0xf0,0xc3]
49         crc32b  %r11b, %eax
50
51 // CHECK: crc32b        4(%rbx), %eax
52 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf0,0x43,0x04]
53         crc32b  4(%rbx), %eax
54
55 // CHECK: crc32b        %dil, %rax
56 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf0,0xc7]
57         crc32b  %dil,%rax
58
59 // CHECK: crc32b        %r11b, %rax
60 // CHECK:  encoding: [0xf2,0x49,0x0f,0x38,0xf0,0xc3]
61         crc32b  %r11b,%rax
62
63 // CHECK: crc32b        4(%rbx), %rax
64 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf0,0x43,0x04]
65         crc32b  4(%rbx), %rax
66
67 // CHECK: crc32q        %rbx, %rax
68 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf1,0xc3]
69         crc32q  %rbx, %rax
70
71 // CHECK: crc32q        4(%rbx), %rax
72 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf1,0x43,0x04]
73         crc32q  4(%rbx), %rax
74
75 // CHECK: movd %r8, %mm1
76 // CHECK:  encoding: [0x49,0x0f,0x6e,0xc8]
77 movd %r8, %mm1
78
79 // CHECK: movd %r8d, %mm1
80 // CHECK:  encoding: [0x41,0x0f,0x6e,0xc8]
81 movd %r8d, %mm1
82
83 // CHECK: movd %rdx, %mm1
84 // CHECK:  encoding: [0x48,0x0f,0x6e,0xca]
85 movd %rdx, %mm1
86
87 // CHECK: movd %edx, %mm1
88 // CHECK:  encoding: [0x0f,0x6e,0xca]
89 movd %edx, %mm1
90
91 // CHECK: movd %mm1, %r8
92 // CHECK:  encoding: [0x49,0x0f,0x7e,0xc8]
93 movd %mm1, %r8
94
95 // CHECK: movd %mm1, %r8d
96 // CHECK:  encoding: [0x41,0x0f,0x7e,0xc8]
97 movd %mm1, %r8d
98
99 // CHECK: movd %mm1, %rdx
100 // CHECK:  encoding: [0x48,0x0f,0x7e,0xca]
101 movd %mm1, %rdx
102
103 // CHECK: movd %mm1, %edx
104 // CHECK:  encoding: [0x0f,0x7e,0xca]
105 movd %mm1, %edx
106
107 // CHECK: vaddss  %xmm8, %xmm9, %xmm10
108 // CHECK:  encoding: [0xc4,0x41,0x32,0x58,0xd0]
109 vaddss  %xmm8, %xmm9, %xmm10
110
111 // CHECK: vmulss  %xmm8, %xmm9, %xmm10
112 // CHECK:  encoding: [0xc4,0x41,0x32,0x59,0xd0]
113 vmulss  %xmm8, %xmm9, %xmm10
114
115 // CHECK: vsubss  %xmm8, %xmm9, %xmm10
116 // CHECK:  encoding: [0xc4,0x41,0x32,0x5c,0xd0]
117 vsubss  %xmm8, %xmm9, %xmm10
118
119 // CHECK: vdivss  %xmm8, %xmm9, %xmm10
120 // CHECK:  encoding: [0xc4,0x41,0x32,0x5e,0xd0]
121 vdivss  %xmm8, %xmm9, %xmm10
122
123 // CHECK: vaddsd  %xmm8, %xmm9, %xmm10
124 // CHECK:  encoding: [0xc4,0x41,0x33,0x58,0xd0]
125 vaddsd  %xmm8, %xmm9, %xmm10
126
127 // CHECK: vmulsd  %xmm8, %xmm9, %xmm10
128 // CHECK:  encoding: [0xc4,0x41,0x33,0x59,0xd0]
129 vmulsd  %xmm8, %xmm9, %xmm10
130
131 // CHECK: vsubsd  %xmm8, %xmm9, %xmm10
132 // CHECK:  encoding: [0xc4,0x41,0x33,0x5c,0xd0]
133 vsubsd  %xmm8, %xmm9, %xmm10
134
135 // CHECK: vdivsd  %xmm8, %xmm9, %xmm10
136 // CHECK:  encoding: [0xc4,0x41,0x33,0x5e,0xd0]
137 vdivsd  %xmm8, %xmm9, %xmm10
138
139 // CHECK:   vaddss  -4(%rcx,%rbx,8), %xmm10, %xmm11
140 // CHECK:   encoding: [0xc5,0x2a,0x58,0x5c,0xd9,0xfc]
141 vaddss  -4(%rcx,%rbx,8), %xmm10, %xmm11
142
143 // CHECK:   vsubss  -4(%rcx,%rbx,8), %xmm10, %xmm11
144 // CHECK:   encoding: [0xc5,0x2a,0x5c,0x5c,0xd9,0xfc]
145 vsubss  -4(%rcx,%rbx,8), %xmm10, %xmm11
146
147 // CHECK:   vmulss  -4(%rcx,%rbx,8), %xmm10, %xmm11
148 // CHECK:   encoding: [0xc5,0x2a,0x59,0x5c,0xd9,0xfc]
149 vmulss  -4(%rcx,%rbx,8), %xmm10, %xmm11
150
151 // CHECK:   vdivss  -4(%rcx,%rbx,8), %xmm10, %xmm11
152 // CHECK:   encoding: [0xc5,0x2a,0x5e,0x5c,0xd9,0xfc]
153 vdivss  -4(%rcx,%rbx,8), %xmm10, %xmm11
154
155 // CHECK:   vaddsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
156 // CHECK:   encoding: [0xc5,0x2b,0x58,0x5c,0xd9,0xfc]
157 vaddsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
158
159 // CHECK:   vsubsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
160 // CHECK:   encoding: [0xc5,0x2b,0x5c,0x5c,0xd9,0xfc]
161 vsubsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
162
163 // CHECK:   vmulsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
164 // CHECK:   encoding: [0xc5,0x2b,0x59,0x5c,0xd9,0xfc]
165 vmulsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
166
167 // CHECK:   vdivsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
168 // CHECK:   encoding: [0xc5,0x2b,0x5e,0x5c,0xd9,0xfc]
169 vdivsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
170
171 // CHECK: vaddps  %xmm10, %xmm11, %xmm15
172 // CHECK: encoding: [0xc4,0x41,0x20,0x58,0xfa]
173 vaddps  %xmm10, %xmm11, %xmm15
174
175 // CHECK: vsubps  %xmm10, %xmm11, %xmm15
176 // CHECK: encoding: [0xc4,0x41,0x20,0x5c,0xfa]
177 vsubps  %xmm10, %xmm11, %xmm15
178
179 // CHECK: vmulps  %xmm10, %xmm11, %xmm15
180 // CHECK: encoding: [0xc4,0x41,0x20,0x59,0xfa]
181 vmulps  %xmm10, %xmm11, %xmm15
182
183 // CHECK: vdivps  %xmm10, %xmm11, %xmm15
184 // CHECK: encoding: [0xc4,0x41,0x20,0x5e,0xfa]
185 vdivps  %xmm10, %xmm11, %xmm15
186
187 // CHECK: vaddpd  %xmm10, %xmm11, %xmm15
188 // CHECK: encoding: [0xc4,0x41,0x21,0x58,0xfa]
189 vaddpd  %xmm10, %xmm11, %xmm15
190
191 // CHECK: vsubpd  %xmm10, %xmm11, %xmm15
192 // CHECK: encoding: [0xc4,0x41,0x21,0x5c,0xfa]
193 vsubpd  %xmm10, %xmm11, %xmm15
194
195 // CHECK: vmulpd  %xmm10, %xmm11, %xmm15
196 // CHECK: encoding: [0xc4,0x41,0x21,0x59,0xfa]
197 vmulpd  %xmm10, %xmm11, %xmm15
198
199 // CHECK: vdivpd  %xmm10, %xmm11, %xmm15
200 // CHECK: encoding: [0xc4,0x41,0x21,0x5e,0xfa]
201 vdivpd  %xmm10, %xmm11, %xmm15
202
203 // CHECK: vaddps  -4(%rcx,%rbx,8), %xmm10, %xmm11
204 // CHECK: encoding: [0xc5,0x28,0x58,0x5c,0xd9,0xfc]
205 vaddps  -4(%rcx,%rbx,8), %xmm10, %xmm11
206
207 // CHECK: vsubps  -4(%rcx,%rbx,8), %xmm10, %xmm11
208 // CHECK: encoding: [0xc5,0x28,0x5c,0x5c,0xd9,0xfc]
209 vsubps  -4(%rcx,%rbx,8), %xmm10, %xmm11
210
211 // CHECK: vmulps  -4(%rcx,%rbx,8), %xmm10, %xmm11
212 // CHECK: encoding: [0xc5,0x28,0x59,0x5c,0xd9,0xfc]
213 vmulps  -4(%rcx,%rbx,8), %xmm10, %xmm11
214
215 // CHECK: vdivps  -4(%rcx,%rbx,8), %xmm10, %xmm11
216 // CHECK: encoding: [0xc5,0x28,0x5e,0x5c,0xd9,0xfc]
217 vdivps  -4(%rcx,%rbx,8), %xmm10, %xmm11
218
219 // CHECK: vaddpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
220 // CHECK: encoding: [0xc5,0x29,0x58,0x5c,0xd9,0xfc]
221 vaddpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
222
223 // CHECK: vsubpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
224 // CHECK: encoding: [0xc5,0x29,0x5c,0x5c,0xd9,0xfc]
225 vsubpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
226
227 // CHECK: vmulpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
228 // CHECK: encoding: [0xc5,0x29,0x59,0x5c,0xd9,0xfc]
229 vmulpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
230
231 // CHECK: vdivpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
232 // CHECK: encoding: [0xc5,0x29,0x5e,0x5c,0xd9,0xfc]
233 vdivpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
234
235 // CHECK: vmaxss  %xmm10, %xmm14, %xmm12
236 // CHECK: encoding: [0xc4,0x41,0x0a,0x5f,0xe2]
237           vmaxss  %xmm10, %xmm14, %xmm12
238
239 // CHECK: vmaxsd  %xmm10, %xmm14, %xmm12
240 // CHECK: encoding: [0xc4,0x41,0x0b,0x5f,0xe2]
241           vmaxsd  %xmm10, %xmm14, %xmm12
242
243 // CHECK: vminss  %xmm10, %xmm14, %xmm12
244 // CHECK: encoding: [0xc4,0x41,0x0a,0x5d,0xe2]
245           vminss  %xmm10, %xmm14, %xmm12
246
247 // CHECK: vminsd  %xmm10, %xmm14, %xmm12
248 // CHECK: encoding: [0xc4,0x41,0x0b,0x5d,0xe2]
249           vminsd  %xmm10, %xmm14, %xmm12
250
251 // CHECK: vmaxss  -4(%rbx,%rcx,8), %xmm12, %xmm10
252 // CHECK: encoding: [0xc5,0x1a,0x5f,0x54,0xcb,0xfc]
253           vmaxss  -4(%rbx,%rcx,8), %xmm12, %xmm10
254
255 // CHECK: vmaxsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
256 // CHECK: encoding: [0xc5,0x1b,0x5f,0x54,0xcb,0xfc]
257           vmaxsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
258
259 // CHECK: vminss  -4(%rbx,%rcx,8), %xmm12, %xmm10
260 // CHECK: encoding: [0xc5,0x1a,0x5d,0x54,0xcb,0xfc]
261           vminss  -4(%rbx,%rcx,8), %xmm12, %xmm10
262
263 // CHECK: vminsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
264 // CHECK: encoding: [0xc5,0x1b,0x5d,0x54,0xcb,0xfc]
265           vminsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
266
267 // CHECK: vmaxps  %xmm10, %xmm14, %xmm12
268 // CHECK: encoding: [0xc4,0x41,0x08,0x5f,0xe2]
269           vmaxps  %xmm10, %xmm14, %xmm12
270
271 // CHECK: vmaxpd  %xmm10, %xmm14, %xmm12
272 // CHECK: encoding: [0xc4,0x41,0x09,0x5f,0xe2]
273           vmaxpd  %xmm10, %xmm14, %xmm12
274
275 // CHECK: vminps  %xmm10, %xmm14, %xmm12
276 // CHECK: encoding: [0xc4,0x41,0x08,0x5d,0xe2]
277           vminps  %xmm10, %xmm14, %xmm12
278
279 // CHECK: vminpd  %xmm10, %xmm14, %xmm12
280 // CHECK: encoding: [0xc4,0x41,0x09,0x5d,0xe2]
281           vminpd  %xmm10, %xmm14, %xmm12
282
283 // CHECK: vmaxps  -4(%rbx,%rcx,8), %xmm12, %xmm10
284 // CHECK: encoding: [0xc5,0x18,0x5f,0x54,0xcb,0xfc]
285           vmaxps  -4(%rbx,%rcx,8), %xmm12, %xmm10
286
287 // CHECK: vmaxpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
288 // CHECK: encoding: [0xc5,0x19,0x5f,0x54,0xcb,0xfc]
289           vmaxpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
290
291 // CHECK: vminps  -4(%rbx,%rcx,8), %xmm12, %xmm10
292 // CHECK: encoding: [0xc5,0x18,0x5d,0x54,0xcb,0xfc]
293           vminps  -4(%rbx,%rcx,8), %xmm12, %xmm10
294
295 // CHECK: vminpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
296 // CHECK: encoding: [0xc5,0x19,0x5d,0x54,0xcb,0xfc]
297           vminpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
298
299 // CHECK: vandps  %xmm10, %xmm14, %xmm12
300 // CHECK: encoding: [0xc4,0x41,0x08,0x54,0xe2]
301           vandps  %xmm10, %xmm14, %xmm12
302
303 // CHECK: vandpd  %xmm10, %xmm14, %xmm12
304 // CHECK: encoding: [0xc4,0x41,0x09,0x54,0xe2]
305           vandpd  %xmm10, %xmm14, %xmm12
306
307 // CHECK: vandps  -4(%rbx,%rcx,8), %xmm12, %xmm10
308 // CHECK: encoding: [0xc5,0x18,0x54,0x54,0xcb,0xfc]
309           vandps  -4(%rbx,%rcx,8), %xmm12, %xmm10
310
311 // CHECK: vandpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
312 // CHECK: encoding: [0xc5,0x19,0x54,0x54,0xcb,0xfc]
313           vandpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
314
315 // CHECK: vorps  %xmm10, %xmm14, %xmm12
316 // CHECK: encoding: [0xc4,0x41,0x08,0x56,0xe2]
317           vorps  %xmm10, %xmm14, %xmm12
318
319 // CHECK: vorpd  %xmm10, %xmm14, %xmm12
320 // CHECK: encoding: [0xc4,0x41,0x09,0x56,0xe2]
321           vorpd  %xmm10, %xmm14, %xmm12
322
323 // CHECK: vorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
324 // CHECK: encoding: [0xc5,0x18,0x56,0x54,0xcb,0xfc]
325           vorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
326
327 // CHECK: vorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
328 // CHECK: encoding: [0xc5,0x19,0x56,0x54,0xcb,0xfc]
329           vorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
330
331 // CHECK: vxorps  %xmm10, %xmm14, %xmm12
332 // CHECK: encoding: [0xc4,0x41,0x08,0x57,0xe2]
333           vxorps  %xmm10, %xmm14, %xmm12
334
335 // CHECK: vxorpd  %xmm10, %xmm14, %xmm12
336 // CHECK: encoding: [0xc4,0x41,0x09,0x57,0xe2]
337           vxorpd  %xmm10, %xmm14, %xmm12
338
339 // CHECK: vxorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
340 // CHECK: encoding: [0xc5,0x18,0x57,0x54,0xcb,0xfc]
341           vxorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
342
343 // CHECK: vxorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
344 // CHECK: encoding: [0xc5,0x19,0x57,0x54,0xcb,0xfc]
345           vxorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
346
347 // CHECK: vandnps  %xmm10, %xmm14, %xmm12
348 // CHECK: encoding: [0xc4,0x41,0x08,0x55,0xe2]
349           vandnps  %xmm10, %xmm14, %xmm12
350
351 // CHECK: vandnpd  %xmm10, %xmm14, %xmm12
352 // CHECK: encoding: [0xc4,0x41,0x09,0x55,0xe2]
353           vandnpd  %xmm10, %xmm14, %xmm12
354
355 // CHECK: vandnps  -4(%rbx,%rcx,8), %xmm12, %xmm10
356 // CHECK: encoding: [0xc5,0x18,0x55,0x54,0xcb,0xfc]
357           vandnps  -4(%rbx,%rcx,8), %xmm12, %xmm10
358
359 // CHECK: vandnpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
360 // CHECK: encoding: [0xc5,0x19,0x55,0x54,0xcb,0xfc]
361           vandnpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
362
363 // CHECK: vmovss  -4(%rbx,%rcx,8), %xmm10
364 // CHECK: encoding: [0xc5,0x7a,0x10,0x54,0xcb,0xfc]
365           vmovss  -4(%rbx,%rcx,8), %xmm10
366
367 // CHECK: vmovss  %xmm14, %xmm10, %xmm15
368 // CHECK: encoding: [0xc4,0x41,0x2a,0x10,0xfe]
369           vmovss  %xmm14, %xmm10, %xmm15
370
371 // CHECK: vmovsd  -4(%rbx,%rcx,8), %xmm10
372 // CHECK: encoding: [0xc5,0x7b,0x10,0x54,0xcb,0xfc]
373           vmovsd  -4(%rbx,%rcx,8), %xmm10
374
375 // CHECK: vmovsd  %xmm14, %xmm10, %xmm15
376 // CHECK: encoding: [0xc4,0x41,0x2b,0x10,0xfe]
377           vmovsd  %xmm14, %xmm10, %xmm15
378
379 // rdar://7840289
380 // CHECK: pshufb        CPI1_0(%rip), %xmm1
381 // CHECK:  encoding: [0x66,0x0f,0x38,0x00,0x0d,A,A,A,A]
382 // CHECK:  fixup A - offset: 5, value: CPI1_0-4
383 pshufb  CPI1_0(%rip), %xmm1
384
385 // CHECK: vunpckhps  %xmm15, %xmm12, %xmm13
386 // CHECK: encoding: [0xc4,0x41,0x18,0x15,0xef]
387           vunpckhps  %xmm15, %xmm12, %xmm13
388
389 // CHECK: vunpckhpd  %xmm15, %xmm12, %xmm13
390 // CHECK: encoding: [0xc4,0x41,0x19,0x15,0xef]
391           vunpckhpd  %xmm15, %xmm12, %xmm13
392
393 // CHECK: vunpcklps  %xmm15, %xmm12, %xmm13
394 // CHECK: encoding: [0xc4,0x41,0x18,0x14,0xef]
395           vunpcklps  %xmm15, %xmm12, %xmm13
396
397 // CHECK: vunpcklpd  %xmm15, %xmm12, %xmm13
398 // CHECK: encoding: [0xc4,0x41,0x19,0x14,0xef]
399           vunpcklpd  %xmm15, %xmm12, %xmm13
400
401 // CHECK: vunpckhps  -4(%rbx,%rcx,8), %xmm12, %xmm15
402 // CHECK: encoding: [0xc5,0x18,0x15,0x7c,0xcb,0xfc]
403           vunpckhps  -4(%rbx,%rcx,8), %xmm12, %xmm15
404
405 // CHECK: vunpckhpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
406 // CHECK: encoding: [0xc5,0x19,0x15,0x7c,0xcb,0xfc]
407           vunpckhpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
408
409 // CHECK: vunpcklps  -4(%rbx,%rcx,8), %xmm12, %xmm15
410 // CHECK: encoding: [0xc5,0x18,0x14,0x7c,0xcb,0xfc]
411           vunpcklps  -4(%rbx,%rcx,8), %xmm12, %xmm15
412
413 // CHECK: vunpcklpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
414 // CHECK: encoding: [0xc5,0x19,0x14,0x7c,0xcb,0xfc]
415           vunpcklpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
416
417 // CHECK: vcmpps  $0, %xmm10, %xmm12, %xmm15
418 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xfa,0x00]
419           vcmpps  $0, %xmm10, %xmm12, %xmm15
420
421 // CHECK: vcmpps  $0, (%rax), %xmm12, %xmm15
422 // CHECK: encoding: [0xc5,0x18,0xc2,0x38,0x00]
423           vcmpps  $0, (%rax), %xmm12, %xmm15
424
425 // CHECK: vcmpps  $7, %xmm10, %xmm12, %xmm15
426 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xfa,0x07]
427           vcmpps  $7, %xmm10, %xmm12, %xmm15
428
429 // CHECK: vcmppd  $0, %xmm10, %xmm12, %xmm15
430 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xfa,0x00]
431           vcmppd  $0, %xmm10, %xmm12, %xmm15
432
433 // CHECK: vcmppd  $0, (%rax), %xmm12, %xmm15
434 // CHECK: encoding: [0xc5,0x19,0xc2,0x38,0x00]
435           vcmppd  $0, (%rax), %xmm12, %xmm15
436
437 // CHECK: vcmppd  $7, %xmm10, %xmm12, %xmm15
438 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xfa,0x07]
439           vcmppd  $7, %xmm10, %xmm12, %xmm15
440
441 // CHECK: vshufps  $8, %xmm11, %xmm12, %xmm13
442 // CHECK: encoding: [0xc4,0x41,0x18,0xc6,0xeb,0x08]
443           vshufps  $8, %xmm11, %xmm12, %xmm13
444
445 // CHECK: vshufps  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
446 // CHECK: encoding: [0xc5,0x18,0xc6,0x6c,0xcb,0xfc,0x08]
447           vshufps  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
448
449 // CHECK: vshufpd  $8, %xmm11, %xmm12, %xmm13
450 // CHECK: encoding: [0xc4,0x41,0x19,0xc6,0xeb,0x08]
451           vshufpd  $8, %xmm11, %xmm12, %xmm13
452
453 // CHECK: vshufpd  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
454 // CHECK: encoding: [0xc5,0x19,0xc6,0x6c,0xcb,0xfc,0x08]
455           vshufpd  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
456
457 // CHECK: vcmpps  $0, %xmm11, %xmm12, %xmm13
458 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x00]
459           vcmpeqps   %xmm11, %xmm12, %xmm13
460
461 // CHECK: vcmpps  $2, %xmm11, %xmm12, %xmm13
462 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x02]
463           vcmpleps   %xmm11, %xmm12, %xmm13
464
465 // CHECK: vcmpps  $1, %xmm11, %xmm12, %xmm13
466 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x01]
467           vcmpltps   %xmm11, %xmm12, %xmm13
468
469 // CHECK: vcmpps  $4, %xmm11, %xmm12, %xmm13
470 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x04]
471           vcmpneqps   %xmm11, %xmm12, %xmm13
472
473 // CHECK: vcmpps  $6, %xmm11, %xmm12, %xmm13
474 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x06]
475           vcmpnleps   %xmm11, %xmm12, %xmm13
476
477 // CHECK: vcmpps  $5, %xmm11, %xmm12, %xmm13
478 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x05]
479           vcmpnltps   %xmm11, %xmm12, %xmm13
480
481 // CHECK: vcmpps  $7, %xmm11, %xmm12, %xmm13
482 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x07]
483           vcmpordps   %xmm11, %xmm12, %xmm13
484
485 // CHECK: vcmpps  $3, %xmm11, %xmm12, %xmm13
486 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x03]
487           vcmpunordps   %xmm11, %xmm12, %xmm13
488
489 // CHECK: vcmpps  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
490 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x00]
491           vcmpeqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
492
493 // CHECK: vcmpps  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
494 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x02]
495           vcmpleps   -4(%rbx,%rcx,8), %xmm12, %xmm13
496
497 // CHECK: vcmpps  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
498 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x01]
499           vcmpltps   -4(%rbx,%rcx,8), %xmm12, %xmm13
500
501 // CHECK: vcmpps  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
502 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x04]
503           vcmpneqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
504
505 // CHECK: vcmpps  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
506 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x06]
507           vcmpnleps   -4(%rbx,%rcx,8), %xmm12, %xmm13
508
509 // CHECK: vcmpps  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
510 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x05]
511           vcmpnltps   -4(%rbx,%rcx,8), %xmm12, %xmm13
512
513 // CHECK: vcmpps  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
514 // CHECK: encoding: [0xc5,0xc8,0xc2,0x54,0xcb,0xfc,0x07]
515           vcmpordps   -4(%rbx,%rcx,8), %xmm6, %xmm2
516
517 // CHECK: vcmpps  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
518 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x03]
519           vcmpunordps   -4(%rbx,%rcx,8), %xmm12, %xmm13
520
521 // CHECK: vcmppd  $0, %xmm11, %xmm12, %xmm13
522 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x00]
523           vcmpeqpd   %xmm11, %xmm12, %xmm13
524
525 // CHECK: vcmppd  $2, %xmm11, %xmm12, %xmm13
526 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x02]
527           vcmplepd   %xmm11, %xmm12, %xmm13
528
529 // CHECK: vcmppd  $1, %xmm11, %xmm12, %xmm13
530 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x01]
531           vcmpltpd   %xmm11, %xmm12, %xmm13
532
533 // CHECK: vcmppd  $4, %xmm11, %xmm12, %xmm13
534 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x04]
535           vcmpneqpd   %xmm11, %xmm12, %xmm13
536
537 // CHECK: vcmppd  $6, %xmm11, %xmm12, %xmm13
538 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x06]
539           vcmpnlepd   %xmm11, %xmm12, %xmm13
540
541 // CHECK: vcmppd  $5, %xmm11, %xmm12, %xmm13
542 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x05]
543           vcmpnltpd   %xmm11, %xmm12, %xmm13
544
545 // CHECK: vcmppd  $7, %xmm11, %xmm12, %xmm13
546 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x07]
547           vcmpordpd   %xmm11, %xmm12, %xmm13
548
549 // CHECK: vcmppd  $3, %xmm11, %xmm12, %xmm13
550 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x03]
551           vcmpunordpd   %xmm11, %xmm12, %xmm13
552
553 // CHECK: vcmppd  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
554 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x00]
555           vcmpeqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
556
557 // CHECK: vcmppd  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
558 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x02]
559           vcmplepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
560
561 // CHECK: vcmppd  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
562 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x01]
563           vcmpltpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
564
565 // CHECK: vcmppd  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
566 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x04]
567           vcmpneqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
568
569 // CHECK: vcmppd  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
570 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x06]
571           vcmpnlepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
572
573 // CHECK: vcmppd  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
574 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x05]
575           vcmpnltpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
576
577 // CHECK: vcmppd  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
578 // CHECK: encoding: [0xc5,0xc9,0xc2,0x54,0xcb,0xfc,0x07]
579           vcmpordpd   -4(%rbx,%rcx,8), %xmm6, %xmm2
580
581 // CHECK: vcmppd  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
582 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x03]
583           vcmpunordpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
584
585 // CHECK: vcmpss  $0, %xmm11, %xmm12, %xmm13
586 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x00]
587           vcmpeqss   %xmm11, %xmm12, %xmm13
588
589 // CHECK: vcmpss  $2, %xmm11, %xmm12, %xmm13
590 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x02]
591           vcmpless   %xmm11, %xmm12, %xmm13
592
593 // CHECK: vcmpss  $1, %xmm11, %xmm12, %xmm13
594 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x01]
595           vcmpltss   %xmm11, %xmm12, %xmm13
596
597 // CHECK: vcmpss  $4, %xmm11, %xmm12, %xmm13
598 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x04]
599           vcmpneqss   %xmm11, %xmm12, %xmm13
600
601 // CHECK: vcmpss  $6, %xmm11, %xmm12, %xmm13
602 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x06]
603           vcmpnless   %xmm11, %xmm12, %xmm13
604
605 // CHECK: vcmpss  $5, %xmm11, %xmm12, %xmm13
606 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x05]
607           vcmpnltss   %xmm11, %xmm12, %xmm13
608
609 // CHECK: vcmpss  $7, %xmm11, %xmm12, %xmm13
610 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x07]
611           vcmpordss   %xmm11, %xmm12, %xmm13
612
613 // CHECK: vcmpss  $3, %xmm11, %xmm12, %xmm13
614 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x03]
615           vcmpunordss   %xmm11, %xmm12, %xmm13
616
617 // CHECK: vcmpss  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
618 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x00]
619           vcmpeqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
620
621 // CHECK: vcmpss  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
622 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x02]
623           vcmpless   -4(%rbx,%rcx,8), %xmm12, %xmm13
624
625 // CHECK: vcmpss  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
626 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x01]
627           vcmpltss   -4(%rbx,%rcx,8), %xmm12, %xmm13
628
629 // CHECK: vcmpss  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
630 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x04]
631           vcmpneqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
632
633 // CHECK: vcmpss  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
634 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x06]
635           vcmpnless   -4(%rbx,%rcx,8), %xmm12, %xmm13
636
637 // CHECK: vcmpss  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
638 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x05]
639           vcmpnltss   -4(%rbx,%rcx,8), %xmm12, %xmm13
640
641 // CHECK: vcmpss  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
642 // CHECK: encoding: [0xc5,0xca,0xc2,0x54,0xcb,0xfc,0x07]
643           vcmpordss   -4(%rbx,%rcx,8), %xmm6, %xmm2
644
645 // CHECK: vcmpss  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
646 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x03]
647           vcmpunordss   -4(%rbx,%rcx,8), %xmm12, %xmm13
648
649 // CHECK: vcmpsd  $0, %xmm11, %xmm12, %xmm13
650 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x00]
651           vcmpeqsd   %xmm11, %xmm12, %xmm13
652
653 // CHECK: vcmpsd  $2, %xmm11, %xmm12, %xmm13
654 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x02]
655           vcmplesd   %xmm11, %xmm12, %xmm13
656
657 // CHECK: vcmpsd  $1, %xmm11, %xmm12, %xmm13
658 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x01]
659           vcmpltsd   %xmm11, %xmm12, %xmm13
660
661 // CHECK: vcmpsd  $4, %xmm11, %xmm12, %xmm13
662 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x04]
663           vcmpneqsd   %xmm11, %xmm12, %xmm13
664
665 // CHECK: vcmpsd  $6, %xmm11, %xmm12, %xmm13
666 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x06]
667           vcmpnlesd   %xmm11, %xmm12, %xmm13
668
669 // CHECK: vcmpsd  $5, %xmm11, %xmm12, %xmm13
670 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x05]
671           vcmpnltsd   %xmm11, %xmm12, %xmm13
672
673 // CHECK: vcmpsd  $7, %xmm11, %xmm12, %xmm13
674 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x07]
675           vcmpordsd   %xmm11, %xmm12, %xmm13
676
677 // CHECK: vcmpsd  $3, %xmm11, %xmm12, %xmm13
678 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x03]
679           vcmpunordsd   %xmm11, %xmm12, %xmm13
680
681 // CHECK: vcmpsd  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
682 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x00]
683           vcmpeqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
684
685 // CHECK: vcmpsd  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
686 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x02]
687           vcmplesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
688
689 // CHECK: vcmpsd  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
690 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x01]
691           vcmpltsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
692
693 // CHECK: vcmpsd  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
694 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x04]
695           vcmpneqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
696
697 // CHECK: vcmpsd  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
698 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x06]
699           vcmpnlesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
700
701 // CHECK: vcmpsd  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
702 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x05]
703           vcmpnltsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
704
705 // CHECK: vcmpsd  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
706 // CHECK: encoding: [0xc5,0xcb,0xc2,0x54,0xcb,0xfc,0x07]
707           vcmpordsd   -4(%rbx,%rcx,8), %xmm6, %xmm2
708
709 // CHECK: vcmpsd  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
710 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x03]
711           vcmpunordsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
712
713 // CHECK: vucomiss  %xmm11, %xmm12
714 // CHECK: encoding: [0xc4,0x41,0x78,0x2e,0xe3]
715           vucomiss  %xmm11, %xmm12
716
717 // CHECK: vucomiss  (%rax), %xmm12
718 // CHECK: encoding: [0xc5,0x78,0x2e,0x20]
719           vucomiss  (%rax), %xmm12
720
721 // CHECK: vcomiss  %xmm11, %xmm12
722 // CHECK: encoding: [0xc4,0x41,0x78,0x2f,0xe3]
723           vcomiss  %xmm11, %xmm12
724
725 // CHECK: vcomiss  (%rax), %xmm12
726 // CHECK: encoding: [0xc5,0x78,0x2f,0x20]
727           vcomiss  (%rax), %xmm12
728
729 // CHECK: vucomisd  %xmm11, %xmm12
730 // CHECK: encoding: [0xc4,0x41,0x79,0x2e,0xe3]
731           vucomisd  %xmm11, %xmm12
732
733 // CHECK: vucomisd  (%rax), %xmm12
734 // CHECK: encoding: [0xc5,0x79,0x2e,0x20]
735           vucomisd  (%rax), %xmm12
736
737 // CHECK: vcomisd  %xmm11, %xmm12
738 // CHECK: encoding: [0xc4,0x41,0x79,0x2f,0xe3]
739           vcomisd  %xmm11, %xmm12
740
741 // CHECK: vcomisd  (%rax), %xmm12
742 // CHECK: encoding: [0xc5,0x79,0x2f,0x20]
743           vcomisd  (%rax), %xmm12
744
745 // CHECK: vcvttss2si  (%rcx), %eax
746 // CHECK: encoding: [0xc5,0xfa,0x2c,0x01]
747           vcvttss2si  (%rcx), %eax
748
749 // CHECK: vcvtsi2ss  (%rax), %xmm11, %xmm12
750 // CHECK: encoding: [0xc5,0x22,0x2a,0x20]
751           vcvtsi2ss  (%rax), %xmm11, %xmm12
752
753 // CHECK: vcvtsi2ss  (%rax), %xmm11, %xmm12
754 // CHECK: encoding: [0xc5,0x22,0x2a,0x20]
755           vcvtsi2ss  (%rax), %xmm11, %xmm12
756
757 // CHECK: vcvttsd2si  (%rcx), %eax
758 // CHECK: encoding: [0xc5,0xfb,0x2c,0x01]
759           vcvttsd2si  (%rcx), %eax
760
761 // CHECK: vcvtsi2sd  (%rax), %xmm11, %xmm12
762 // CHECK: encoding: [0xc5,0x23,0x2a,0x20]
763           vcvtsi2sd  (%rax), %xmm11, %xmm12
764
765 // CHECK: vcvtsi2sd  (%rax), %xmm11, %xmm12
766 // CHECK: encoding: [0xc5,0x23,0x2a,0x20]
767           vcvtsi2sd  (%rax), %xmm11, %xmm12
768
769 // CHECK: vmovaps  (%rax), %xmm12
770 // CHECK: encoding: [0xc5,0x78,0x28,0x20]
771           vmovaps  (%rax), %xmm12
772
773 // CHECK: vmovaps  %xmm11, %xmm12
774 // CHECK: encoding: [0xc4,0x41,0x78,0x28,0xe3]
775           vmovaps  %xmm11, %xmm12
776
777 // CHECK: vmovaps  %xmm11, (%rax)
778 // CHECK: encoding: [0xc5,0x78,0x29,0x18]
779           vmovaps  %xmm11, (%rax)
780
781 // CHECK: vmovapd  (%rax), %xmm12
782 // CHECK: encoding: [0xc5,0x79,0x28,0x20]
783           vmovapd  (%rax), %xmm12
784
785 // CHECK: vmovapd  %xmm11, %xmm12
786 // CHECK: encoding: [0xc4,0x41,0x79,0x28,0xe3]
787           vmovapd  %xmm11, %xmm12
788
789 // CHECK: vmovapd  %xmm11, (%rax)
790 // CHECK: encoding: [0xc5,0x79,0x29,0x18]
791           vmovapd  %xmm11, (%rax)
792
793 // CHECK: vmovups  (%rax), %xmm12
794 // CHECK: encoding: [0xc5,0x78,0x10,0x20]
795           vmovups  (%rax), %xmm12
796
797 // CHECK: vmovups  %xmm11, %xmm12
798 // CHECK: encoding: [0xc4,0x41,0x78,0x10,0xe3]
799           vmovups  %xmm11, %xmm12
800
801 // CHECK: vmovups  %xmm11, (%rax)
802 // CHECK: encoding: [0xc5,0x78,0x11,0x18]
803           vmovups  %xmm11, (%rax)
804
805 // CHECK: vmovupd  (%rax), %xmm12
806 // CHECK: encoding: [0xc5,0x79,0x10,0x20]
807           vmovupd  (%rax), %xmm12
808
809 // CHECK: vmovupd  %xmm11, %xmm12
810 // CHECK: encoding: [0xc4,0x41,0x79,0x10,0xe3]
811           vmovupd  %xmm11, %xmm12
812
813 // CHECK: vmovupd  %xmm11, (%rax)
814 // CHECK: encoding: [0xc5,0x79,0x11,0x18]
815           vmovupd  %xmm11, (%rax)
816
817 // CHECK: vmovlps  %xmm11, (%rax)
818 // CHECK: encoding: [0xc5,0x78,0x13,0x18]
819           vmovlps  %xmm11, (%rax)
820
821 // CHECK: vmovlps  (%rax), %xmm12, %xmm13
822 // CHECK: encoding: [0xc5,0x18,0x12,0x28]
823           vmovlps  (%rax), %xmm12, %xmm13
824
825 // CHECK: vmovlpd  %xmm11, (%rax)
826 // CHECK: encoding: [0xc5,0x79,0x13,0x18]
827           vmovlpd  %xmm11, (%rax)
828
829 // CHECK: vmovlpd  (%rax), %xmm12, %xmm13
830 // CHECK: encoding: [0xc5,0x19,0x12,0x28]
831           vmovlpd  (%rax), %xmm12, %xmm13
832
833 // CHECK: vmovhps  %xmm11, (%rax)
834 // CHECK: encoding: [0xc5,0x78,0x17,0x18]
835           vmovhps  %xmm11, (%rax)
836
837 // CHECK: vmovhps  (%rax), %xmm12, %xmm13
838 // CHECK: encoding: [0xc5,0x18,0x16,0x28]
839           vmovhps  (%rax), %xmm12, %xmm13
840
841 // CHECK: vmovhpd  %xmm11, (%rax)
842 // CHECK: encoding: [0xc5,0x79,0x17,0x18]
843           vmovhpd  %xmm11, (%rax)
844
845 // CHECK: vmovhpd  (%rax), %xmm12, %xmm13
846 // CHECK: encoding: [0xc5,0x19,0x16,0x28]
847           vmovhpd  (%rax), %xmm12, %xmm13
848
849 // CHECK: vmovlhps  %xmm11, %xmm12, %xmm13
850 // CHECK: encoding: [0xc4,0x41,0x18,0x16,0xeb]
851           vmovlhps  %xmm11, %xmm12, %xmm13
852
853 // CHECK: vmovhlps  %xmm11, %xmm12, %xmm13
854 // CHECK: encoding: [0xc4,0x41,0x18,0x12,0xeb]
855           vmovhlps  %xmm11, %xmm12, %xmm13
856
857 // CHECK: vcvtss2sil  %xmm11, %eax
858 // CHECK: encoding: [0xc4,0xc1,0x7a,0x2d,0xc3]
859           vcvtss2si  %xmm11, %eax
860
861 // CHECK: vcvtss2sil  (%rax), %ebx
862 // CHECK: encoding: [0xc5,0xfa,0x2d,0x18]
863           vcvtss2si  (%rax), %ebx
864
865 // CHECK: vcvtdq2ps  %xmm10, %xmm12
866 // CHECK: encoding: [0xc4,0x41,0x78,0x5b,0xe2]
867           vcvtdq2ps  %xmm10, %xmm12
868
869 // CHECK: vcvtdq2ps  (%rax), %xmm12
870 // CHECK: encoding: [0xc5,0x78,0x5b,0x20]
871           vcvtdq2ps  (%rax), %xmm12
872
873 // CHECK: vcvtsd2ss  %xmm12, %xmm13, %xmm10
874 // CHECK: encoding: [0xc4,0x41,0x13,0x5a,0xd4]
875           vcvtsd2ss  %xmm12, %xmm13, %xmm10
876
877 // CHECK: vcvtsd2ss  (%rax), %xmm13, %xmm10
878 // CHECK: encoding: [0xc5,0x13,0x5a,0x10]
879           vcvtsd2ss  (%rax), %xmm13, %xmm10
880
881 // CHECK: vcvtps2dq  %xmm12, %xmm11
882 // CHECK: encoding: [0xc4,0x41,0x79,0x5b,0xdc]
883           vcvtps2dq  %xmm12, %xmm11
884
885 // CHECK: vcvtps2dq  (%rax), %xmm11
886 // CHECK: encoding: [0xc5,0x79,0x5b,0x18]
887           vcvtps2dq  (%rax), %xmm11
888
889 // CHECK: vcvtss2sd  %xmm12, %xmm13, %xmm10
890 // CHECK: encoding: [0xc4,0x41,0x12,0x5a,0xd4]
891           vcvtss2sd  %xmm12, %xmm13, %xmm10
892
893 // CHECK: vcvtss2sd  (%rax), %xmm13, %xmm10
894 // CHECK: encoding: [0xc5,0x12,0x5a,0x10]
895           vcvtss2sd  (%rax), %xmm13, %xmm10
896
897 // CHECK: vcvtdq2ps  %xmm13, %xmm10
898 // CHECK: encoding: [0xc4,0x41,0x78,0x5b,0xd5]
899           vcvtdq2ps  %xmm13, %xmm10
900
901 // CHECK: vcvtdq2ps  (%ecx), %xmm13
902 // CHECK: encoding: [0xc5,0x78,0x5b,0x29]
903           vcvtdq2ps  (%ecx), %xmm13
904
905 // CHECK: vcvttps2dq  %xmm12, %xmm11
906 // CHECK: encoding: [0xc4,0x41,0x7a,0x5b,0xdc]
907           vcvttps2dq  %xmm12, %xmm11
908
909 // CHECK: vcvttps2dq  (%rax), %xmm11
910 // CHECK: encoding: [0xc5,0x7a,0x5b,0x18]
911           vcvttps2dq  (%rax), %xmm11
912
913 // CHECK: vcvtps2pd  %xmm12, %xmm11
914 // CHECK: encoding: [0xc4,0x41,0x78,0x5a,0xdc]
915           vcvtps2pd  %xmm12, %xmm11
916
917 // CHECK: vcvtps2pd  (%rax), %xmm11
918 // CHECK: encoding: [0xc5,0x78,0x5a,0x18]
919           vcvtps2pd  (%rax), %xmm11
920
921 // CHECK: vcvtpd2ps  %xmm12, %xmm11
922 // CHECK: encoding: [0xc4,0x41,0x79,0x5a,0xdc]
923           vcvtpd2ps  %xmm12, %xmm11
924
925 // CHECK: vsqrtpd  %xmm11, %xmm12
926 // CHECK: encoding: [0xc4,0x41,0x79,0x51,0xe3]
927           vsqrtpd  %xmm11, %xmm12
928
929 // CHECK: vsqrtpd  (%rax), %xmm12
930 // CHECK: encoding: [0xc5,0x79,0x51,0x20]
931           vsqrtpd  (%rax), %xmm12
932
933 // CHECK: vsqrtps  %xmm11, %xmm12
934 // CHECK: encoding: [0xc4,0x41,0x78,0x51,0xe3]
935           vsqrtps  %xmm11, %xmm12
936
937 // CHECK: vsqrtps  (%rax), %xmm12
938 // CHECK: encoding: [0xc5,0x78,0x51,0x20]
939           vsqrtps  (%rax), %xmm12
940
941 // CHECK: vsqrtsd  %xmm11, %xmm12, %xmm10
942 // CHECK: encoding: [0xc4,0x41,0x1b,0x51,0xd3]
943           vsqrtsd  %xmm11, %xmm12, %xmm10
944
945 // CHECK: vsqrtsd  (%rax), %xmm12, %xmm10
946 // CHECK: encoding: [0xc5,0x1b,0x51,0x10]
947           vsqrtsd  (%rax), %xmm12, %xmm10
948
949 // CHECK: vsqrtss  %xmm11, %xmm12, %xmm10
950 // CHECK: encoding: [0xc4,0x41,0x1a,0x51,0xd3]
951           vsqrtss  %xmm11, %xmm12, %xmm10
952
953 // CHECK: vsqrtss  (%rax), %xmm12, %xmm10
954 // CHECK: encoding: [0xc5,0x1a,0x51,0x10]
955           vsqrtss  (%rax), %xmm12, %xmm10
956
957 // CHECK: vrsqrtps  %xmm11, %xmm12
958 // CHECK: encoding: [0xc4,0x41,0x78,0x52,0xe3]
959           vrsqrtps  %xmm11, %xmm12
960
961 // CHECK: vrsqrtps  (%rax), %xmm12
962 // CHECK: encoding: [0xc5,0x78,0x52,0x20]
963           vrsqrtps  (%rax), %xmm12
964
965 // CHECK: vrsqrtss  %xmm11, %xmm12, %xmm10
966 // CHECK: encoding: [0xc4,0x41,0x1a,0x52,0xd3]
967           vrsqrtss  %xmm11, %xmm12, %xmm10
968
969 // CHECK: vrsqrtss  (%rax), %xmm12, %xmm10
970 // CHECK: encoding: [0xc5,0x1a,0x52,0x10]
971           vrsqrtss  (%rax), %xmm12, %xmm10
972
973 // CHECK: vrcpps  %xmm11, %xmm12
974 // CHECK: encoding: [0xc4,0x41,0x78,0x53,0xe3]
975           vrcpps  %xmm11, %xmm12
976
977 // CHECK: vrcpps  (%rax), %xmm12
978 // CHECK: encoding: [0xc5,0x78,0x53,0x20]
979           vrcpps  (%rax), %xmm12
980
981 // CHECK: vrcpss  %xmm11, %xmm12, %xmm10
982 // CHECK: encoding: [0xc4,0x41,0x1a,0x53,0xd3]
983           vrcpss  %xmm11, %xmm12, %xmm10
984
985 // CHECK: vrcpss  (%rax), %xmm12, %xmm10
986 // CHECK: encoding: [0xc5,0x1a,0x53,0x10]
987           vrcpss  (%rax), %xmm12, %xmm10
988
989 // CHECK: vmovntdq  %xmm11, (%rax)
990 // CHECK: encoding: [0xc5,0x79,0xe7,0x18]
991           vmovntdq  %xmm11, (%rax)
992
993 // CHECK: vmovntpd  %xmm11, (%rax)
994 // CHECK: encoding: [0xc5,0x79,0x2b,0x18]
995           vmovntpd  %xmm11, (%rax)
996
997 // CHECK: vmovntps  %xmm11, (%rax)
998 // CHECK: encoding: [0xc5,0x78,0x2b,0x18]
999           vmovntps  %xmm11, (%rax)
1000
1001 // CHECK: vldmxcsr  -4(%rip)
1002 // CHECK: encoding: [0xc5,0xf8,0xae,0x15,0xfc,0xff,0xff,0xff]
1003           vldmxcsr  -4(%rip)
1004
1005 // CHECK: vstmxcsr  -4(%rsp)
1006 // CHECK: encoding: [0xc5,0xf8,0xae,0x5c,0x24,0xfc]
1007           vstmxcsr  -4(%rsp)
1008
1009 // CHECK: vpsubb  %xmm11, %xmm12, %xmm13
1010 // CHECK: encoding: [0xc4,0x41,0x19,0xf8,0xeb]
1011           vpsubb  %xmm11, %xmm12, %xmm13
1012
1013 // CHECK: vpsubb  (%rax), %xmm12, %xmm13
1014 // CHECK: encoding: [0xc5,0x19,0xf8,0x28]
1015           vpsubb  (%rax), %xmm12, %xmm13
1016
1017 // CHECK: vpsubw  %xmm11, %xmm12, %xmm13
1018 // CHECK: encoding: [0xc4,0x41,0x19,0xf9,0xeb]
1019           vpsubw  %xmm11, %xmm12, %xmm13
1020
1021 // CHECK: vpsubw  (%rax), %xmm12, %xmm13
1022 // CHECK: encoding: [0xc5,0x19,0xf9,0x28]
1023           vpsubw  (%rax), %xmm12, %xmm13
1024
1025 // CHECK: vpsubd  %xmm11, %xmm12, %xmm13
1026 // CHECK: encoding: [0xc4,0x41,0x19,0xfa,0xeb]
1027           vpsubd  %xmm11, %xmm12, %xmm13
1028
1029 // CHECK: vpsubd  (%rax), %xmm12, %xmm13
1030 // CHECK: encoding: [0xc5,0x19,0xfa,0x28]
1031           vpsubd  (%rax), %xmm12, %xmm13
1032
1033 // CHECK: vpsubq  %xmm11, %xmm12, %xmm13
1034 // CHECK: encoding: [0xc4,0x41,0x19,0xfb,0xeb]
1035           vpsubq  %xmm11, %xmm12, %xmm13
1036
1037 // CHECK: vpsubq  (%rax), %xmm12, %xmm13
1038 // CHECK: encoding: [0xc5,0x19,0xfb,0x28]
1039           vpsubq  (%rax), %xmm12, %xmm13
1040
1041 // CHECK: vpsubsb  %xmm11, %xmm12, %xmm13
1042 // CHECK: encoding: [0xc4,0x41,0x19,0xe8,0xeb]
1043           vpsubsb  %xmm11, %xmm12, %xmm13
1044
1045 // CHECK: vpsubsb  (%rax), %xmm12, %xmm13
1046 // CHECK: encoding: [0xc5,0x19,0xe8,0x28]
1047           vpsubsb  (%rax), %xmm12, %xmm13
1048
1049 // CHECK: vpsubsw  %xmm11, %xmm12, %xmm13
1050 // CHECK: encoding: [0xc4,0x41,0x19,0xe9,0xeb]
1051           vpsubsw  %xmm11, %xmm12, %xmm13
1052
1053 // CHECK: vpsubsw  (%rax), %xmm12, %xmm13
1054 // CHECK: encoding: [0xc5,0x19,0xe9,0x28]
1055           vpsubsw  (%rax), %xmm12, %xmm13
1056
1057 // CHECK: vpsubusb  %xmm11, %xmm12, %xmm13
1058 // CHECK: encoding: [0xc4,0x41,0x19,0xd8,0xeb]
1059           vpsubusb  %xmm11, %xmm12, %xmm13
1060
1061 // CHECK: vpsubusb  (%rax), %xmm12, %xmm13
1062 // CHECK: encoding: [0xc5,0x19,0xd8,0x28]
1063           vpsubusb  (%rax), %xmm12, %xmm13
1064
1065 // CHECK: vpsubusw  %xmm11, %xmm12, %xmm13
1066 // CHECK: encoding: [0xc4,0x41,0x19,0xd9,0xeb]
1067           vpsubusw  %xmm11, %xmm12, %xmm13
1068
1069 // CHECK: vpsubusw  (%rax), %xmm12, %xmm13
1070 // CHECK: encoding: [0xc5,0x19,0xd9,0x28]
1071           vpsubusw  (%rax), %xmm12, %xmm13
1072
1073 // CHECK: vpaddb  %xmm11, %xmm12, %xmm13
1074 // CHECK: encoding: [0xc4,0x41,0x19,0xfc,0xeb]
1075           vpaddb  %xmm11, %xmm12, %xmm13
1076
1077 // CHECK: vpaddb  (%rax), %xmm12, %xmm13
1078 // CHECK: encoding: [0xc5,0x19,0xfc,0x28]
1079           vpaddb  (%rax), %xmm12, %xmm13
1080
1081 // CHECK: vpaddw  %xmm11, %xmm12, %xmm13
1082 // CHECK: encoding: [0xc4,0x41,0x19,0xfd,0xeb]
1083           vpaddw  %xmm11, %xmm12, %xmm13
1084
1085 // CHECK: vpaddw  (%rax), %xmm12, %xmm13
1086 // CHECK: encoding: [0xc5,0x19,0xfd,0x28]
1087           vpaddw  (%rax), %xmm12, %xmm13
1088
1089 // CHECK: vpaddd  %xmm11, %xmm12, %xmm13
1090 // CHECK: encoding: [0xc4,0x41,0x19,0xfe,0xeb]
1091           vpaddd  %xmm11, %xmm12, %xmm13
1092
1093 // CHECK: vpaddd  (%rax), %xmm12, %xmm13
1094 // CHECK: encoding: [0xc5,0x19,0xfe,0x28]
1095           vpaddd  (%rax), %xmm12, %xmm13
1096
1097 // CHECK: vpaddq  %xmm11, %xmm12, %xmm13
1098 // CHECK: encoding: [0xc4,0x41,0x19,0xd4,0xeb]
1099           vpaddq  %xmm11, %xmm12, %xmm13
1100
1101 // CHECK: vpaddq  (%rax), %xmm12, %xmm13
1102 // CHECK: encoding: [0xc5,0x19,0xd4,0x28]
1103           vpaddq  (%rax), %xmm12, %xmm13
1104
1105 // CHECK: vpaddsb  %xmm11, %xmm12, %xmm13
1106 // CHECK: encoding: [0xc4,0x41,0x19,0xec,0xeb]
1107           vpaddsb  %xmm11, %xmm12, %xmm13
1108
1109 // CHECK: vpaddsb  (%rax), %xmm12, %xmm13
1110 // CHECK: encoding: [0xc5,0x19,0xec,0x28]
1111           vpaddsb  (%rax), %xmm12, %xmm13
1112
1113 // CHECK: vpaddsw  %xmm11, %xmm12, %xmm13
1114 // CHECK: encoding: [0xc4,0x41,0x19,0xed,0xeb]
1115           vpaddsw  %xmm11, %xmm12, %xmm13
1116
1117 // CHECK: vpaddsw  (%rax), %xmm12, %xmm13
1118 // CHECK: encoding: [0xc5,0x19,0xed,0x28]
1119           vpaddsw  (%rax), %xmm12, %xmm13
1120
1121 // CHECK: vpaddusb  %xmm11, %xmm12, %xmm13
1122 // CHECK: encoding: [0xc4,0x41,0x19,0xdc,0xeb]
1123           vpaddusb  %xmm11, %xmm12, %xmm13
1124
1125 // CHECK: vpaddusb  (%rax), %xmm12, %xmm13
1126 // CHECK: encoding: [0xc5,0x19,0xdc,0x28]
1127           vpaddusb  (%rax), %xmm12, %xmm13
1128
1129 // CHECK: vpaddusw  %xmm11, %xmm12, %xmm13
1130 // CHECK: encoding: [0xc4,0x41,0x19,0xdd,0xeb]
1131           vpaddusw  %xmm11, %xmm12, %xmm13
1132
1133 // CHECK: vpaddusw  (%rax), %xmm12, %xmm13
1134 // CHECK: encoding: [0xc5,0x19,0xdd,0x28]
1135           vpaddusw  (%rax), %xmm12, %xmm13
1136
1137 // CHECK: vpmulhuw  %xmm11, %xmm12, %xmm13
1138 // CHECK: encoding: [0xc4,0x41,0x19,0xe4,0xeb]
1139           vpmulhuw  %xmm11, %xmm12, %xmm13
1140
1141 // CHECK: vpmulhuw  (%rax), %xmm12, %xmm13
1142 // CHECK: encoding: [0xc5,0x19,0xe4,0x28]
1143           vpmulhuw  (%rax), %xmm12, %xmm13
1144
1145 // CHECK: vpmulhw  %xmm11, %xmm12, %xmm13
1146 // CHECK: encoding: [0xc4,0x41,0x19,0xe5,0xeb]
1147           vpmulhw  %xmm11, %xmm12, %xmm13
1148
1149 // CHECK: vpmulhw  (%rax), %xmm12, %xmm13
1150 // CHECK: encoding: [0xc5,0x19,0xe5,0x28]
1151           vpmulhw  (%rax), %xmm12, %xmm13
1152
1153 // CHECK: vpmullw  %xmm11, %xmm12, %xmm13
1154 // CHECK: encoding: [0xc4,0x41,0x19,0xd5,0xeb]
1155           vpmullw  %xmm11, %xmm12, %xmm13
1156
1157 // CHECK: vpmullw  (%rax), %xmm12, %xmm13
1158 // CHECK: encoding: [0xc5,0x19,0xd5,0x28]
1159           vpmullw  (%rax), %xmm12, %xmm13
1160
1161 // CHECK: vpmuludq  %xmm11, %xmm12, %xmm13
1162 // CHECK: encoding: [0xc4,0x41,0x19,0xf4,0xeb]
1163           vpmuludq  %xmm11, %xmm12, %xmm13
1164
1165 // CHECK: vpmuludq  (%rax), %xmm12, %xmm13
1166 // CHECK: encoding: [0xc5,0x19,0xf4,0x28]
1167           vpmuludq  (%rax), %xmm12, %xmm13
1168
1169 // CHECK: vpavgb  %xmm11, %xmm12, %xmm13
1170 // CHECK: encoding: [0xc4,0x41,0x19,0xe0,0xeb]
1171           vpavgb  %xmm11, %xmm12, %xmm13
1172
1173 // CHECK: vpavgb  (%rax), %xmm12, %xmm13
1174 // CHECK: encoding: [0xc5,0x19,0xe0,0x28]
1175           vpavgb  (%rax), %xmm12, %xmm13
1176
1177 // CHECK: vpavgw  %xmm11, %xmm12, %xmm13
1178 // CHECK: encoding: [0xc4,0x41,0x19,0xe3,0xeb]
1179           vpavgw  %xmm11, %xmm12, %xmm13
1180
1181 // CHECK: vpavgw  (%rax), %xmm12, %xmm13
1182 // CHECK: encoding: [0xc5,0x19,0xe3,0x28]
1183           vpavgw  (%rax), %xmm12, %xmm13
1184
1185 // CHECK: vpminsw  %xmm11, %xmm12, %xmm13
1186 // CHECK: encoding: [0xc4,0x41,0x19,0xea,0xeb]
1187           vpminsw  %xmm11, %xmm12, %xmm13
1188
1189 // CHECK: vpminsw  (%rax), %xmm12, %xmm13
1190 // CHECK: encoding: [0xc5,0x19,0xea,0x28]
1191           vpminsw  (%rax), %xmm12, %xmm13
1192
1193 // CHECK: vpminub  %xmm11, %xmm12, %xmm13
1194 // CHECK: encoding: [0xc4,0x41,0x19,0xda,0xeb]
1195           vpminub  %xmm11, %xmm12, %xmm13
1196
1197 // CHECK: vpminub  (%rax), %xmm12, %xmm13
1198 // CHECK: encoding: [0xc5,0x19,0xda,0x28]
1199           vpminub  (%rax), %xmm12, %xmm13
1200
1201 // CHECK: vpmaxsw  %xmm11, %xmm12, %xmm13
1202 // CHECK: encoding: [0xc4,0x41,0x19,0xee,0xeb]
1203           vpmaxsw  %xmm11, %xmm12, %xmm13
1204
1205 // CHECK: vpmaxsw  (%rax), %xmm12, %xmm13
1206 // CHECK: encoding: [0xc5,0x19,0xee,0x28]
1207           vpmaxsw  (%rax), %xmm12, %xmm13
1208
1209 // CHECK: vpmaxub  %xmm11, %xmm12, %xmm13
1210 // CHECK: encoding: [0xc4,0x41,0x19,0xde,0xeb]
1211           vpmaxub  %xmm11, %xmm12, %xmm13
1212
1213 // CHECK: vpmaxub  (%rax), %xmm12, %xmm13
1214 // CHECK: encoding: [0xc5,0x19,0xde,0x28]
1215           vpmaxub  (%rax), %xmm12, %xmm13
1216
1217 // CHECK: vpsadbw  %xmm11, %xmm12, %xmm13
1218 // CHECK: encoding: [0xc4,0x41,0x19,0xf6,0xeb]
1219           vpsadbw  %xmm11, %xmm12, %xmm13
1220
1221 // CHECK: vpsadbw  (%rax), %xmm12, %xmm13
1222 // CHECK: encoding: [0xc5,0x19,0xf6,0x28]
1223           vpsadbw  (%rax), %xmm12, %xmm13
1224
1225 // CHECK: vpsllw  %xmm11, %xmm12, %xmm13
1226 // CHECK: encoding: [0xc4,0x41,0x19,0xf1,0xeb]
1227           vpsllw  %xmm11, %xmm12, %xmm13
1228
1229 // CHECK: vpsllw  (%rax), %xmm12, %xmm13
1230 // CHECK: encoding: [0xc5,0x19,0xf1,0x28]
1231           vpsllw  (%rax), %xmm12, %xmm13
1232
1233 // CHECK: vpslld  %xmm11, %xmm12, %xmm13
1234 // CHECK: encoding: [0xc4,0x41,0x19,0xf2,0xeb]
1235           vpslld  %xmm11, %xmm12, %xmm13
1236
1237 // CHECK: vpslld  (%rax), %xmm12, %xmm13
1238 // CHECK: encoding: [0xc5,0x19,0xf2,0x28]
1239           vpslld  (%rax), %xmm12, %xmm13
1240
1241 // CHECK: vpsllq  %xmm11, %xmm12, %xmm13
1242 // CHECK: encoding: [0xc4,0x41,0x19,0xf3,0xeb]
1243           vpsllq  %xmm11, %xmm12, %xmm13
1244
1245 // CHECK: vpsllq  (%rax), %xmm12, %xmm13
1246 // CHECK: encoding: [0xc5,0x19,0xf3,0x28]
1247           vpsllq  (%rax), %xmm12, %xmm13
1248
1249 // CHECK: vpsraw  %xmm11, %xmm12, %xmm13
1250 // CHECK: encoding: [0xc4,0x41,0x19,0xe1,0xeb]
1251           vpsraw  %xmm11, %xmm12, %xmm13
1252
1253 // CHECK: vpsraw  (%rax), %xmm12, %xmm13
1254 // CHECK: encoding: [0xc5,0x19,0xe1,0x28]
1255           vpsraw  (%rax), %xmm12, %xmm13
1256
1257 // CHECK: vpsrad  %xmm11, %xmm12, %xmm13
1258 // CHECK: encoding: [0xc4,0x41,0x19,0xe2,0xeb]
1259           vpsrad  %xmm11, %xmm12, %xmm13
1260
1261 // CHECK: vpsrad  (%rax), %xmm12, %xmm13
1262 // CHECK: encoding: [0xc5,0x19,0xe2,0x28]
1263           vpsrad  (%rax), %xmm12, %xmm13
1264
1265 // CHECK: vpsrlw  %xmm11, %xmm12, %xmm13
1266 // CHECK: encoding: [0xc4,0x41,0x19,0xd1,0xeb]
1267           vpsrlw  %xmm11, %xmm12, %xmm13
1268
1269 // CHECK: vpsrlw  (%rax), %xmm12, %xmm13
1270 // CHECK: encoding: [0xc5,0x19,0xd1,0x28]
1271           vpsrlw  (%rax), %xmm12, %xmm13
1272
1273 // CHECK: vpsrld  %xmm11, %xmm12, %xmm13
1274 // CHECK: encoding: [0xc4,0x41,0x19,0xd2,0xeb]
1275           vpsrld  %xmm11, %xmm12, %xmm13
1276
1277 // CHECK: vpsrld  (%rax), %xmm12, %xmm13
1278 // CHECK: encoding: [0xc5,0x19,0xd2,0x28]
1279           vpsrld  (%rax), %xmm12, %xmm13
1280
1281 // CHECK: vpsrlq  %xmm11, %xmm12, %xmm13
1282 // CHECK: encoding: [0xc4,0x41,0x19,0xd3,0xeb]
1283           vpsrlq  %xmm11, %xmm12, %xmm13
1284
1285 // CHECK: vpsrlq  (%rax), %xmm12, %xmm13
1286 // CHECK: encoding: [0xc5,0x19,0xd3,0x28]
1287           vpsrlq  (%rax), %xmm12, %xmm13
1288
1289 // CHECK: vpslld  $10, %xmm12, %xmm13
1290 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xf4,0x0a]
1291           vpslld  $10, %xmm12, %xmm13
1292
1293 // CHECK: vpslldq  $10, %xmm12, %xmm13
1294 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xfc,0x0a]
1295           vpslldq  $10, %xmm12, %xmm13
1296
1297 // CHECK: vpsllq  $10, %xmm12, %xmm13
1298 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xf4,0x0a]
1299           vpsllq  $10, %xmm12, %xmm13
1300
1301 // CHECK: vpsllw  $10, %xmm12, %xmm13
1302 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xf4,0x0a]
1303           vpsllw  $10, %xmm12, %xmm13
1304
1305 // CHECK: vpsrad  $10, %xmm12, %xmm13
1306 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xe4,0x0a]
1307           vpsrad  $10, %xmm12, %xmm13
1308
1309 // CHECK: vpsraw  $10, %xmm12, %xmm13
1310 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xe4,0x0a]
1311           vpsraw  $10, %xmm12, %xmm13
1312
1313 // CHECK: vpsrld  $10, %xmm12, %xmm13
1314 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xd4,0x0a]
1315           vpsrld  $10, %xmm12, %xmm13
1316
1317 // CHECK: vpsrldq  $10, %xmm12, %xmm13
1318 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xdc,0x0a]
1319           vpsrldq  $10, %xmm12, %xmm13
1320
1321 // CHECK: vpsrlq  $10, %xmm12, %xmm13
1322 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xd4,0x0a]
1323           vpsrlq  $10, %xmm12, %xmm13
1324
1325 // CHECK: vpsrlw  $10, %xmm12, %xmm13
1326 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xd4,0x0a]
1327           vpsrlw  $10, %xmm12, %xmm13
1328
1329 // CHECK: vpslld  $10, %xmm12, %xmm13
1330 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xf4,0x0a]
1331           vpslld  $10, %xmm12, %xmm13
1332
1333 // CHECK: vpand  %xmm11, %xmm12, %xmm13
1334 // CHECK: encoding: [0xc4,0x41,0x19,0xdb,0xeb]
1335           vpand  %xmm11, %xmm12, %xmm13
1336
1337 // CHECK: vpand  (%rax), %xmm12, %xmm13
1338 // CHECK: encoding: [0xc5,0x19,0xdb,0x28]
1339           vpand  (%rax), %xmm12, %xmm13
1340
1341 // CHECK: vpor  %xmm11, %xmm12, %xmm13
1342 // CHECK: encoding: [0xc4,0x41,0x19,0xeb,0xeb]
1343           vpor  %xmm11, %xmm12, %xmm13
1344
1345 // CHECK: vpor  (%rax), %xmm12, %xmm13
1346 // CHECK: encoding: [0xc5,0x19,0xeb,0x28]
1347           vpor  (%rax), %xmm12, %xmm13
1348
1349 // CHECK: vpxor  %xmm11, %xmm12, %xmm13
1350 // CHECK: encoding: [0xc4,0x41,0x19,0xef,0xeb]
1351           vpxor  %xmm11, %xmm12, %xmm13
1352
1353 // CHECK: vpxor  (%rax), %xmm12, %xmm13
1354 // CHECK: encoding: [0xc5,0x19,0xef,0x28]
1355           vpxor  (%rax), %xmm12, %xmm13
1356
1357 // CHECK: vpandn  %xmm11, %xmm12, %xmm13
1358 // CHECK: encoding: [0xc4,0x41,0x19,0xdf,0xeb]
1359           vpandn  %xmm11, %xmm12, %xmm13
1360
1361 // CHECK: vpandn  (%rax), %xmm12, %xmm13
1362 // CHECK: encoding: [0xc5,0x19,0xdf,0x28]
1363           vpandn  (%rax), %xmm12, %xmm13
1364
1365 // CHECK: vpcmpeqb  %xmm11, %xmm12, %xmm13
1366 // CHECK: encoding: [0xc4,0x41,0x19,0x74,0xeb]
1367           vpcmpeqb  %xmm11, %xmm12, %xmm13
1368
1369 // CHECK: vpcmpeqb  (%rax), %xmm12, %xmm13
1370 // CHECK: encoding: [0xc5,0x19,0x74,0x28]
1371           vpcmpeqb  (%rax), %xmm12, %xmm13
1372
1373 // CHECK: vpcmpeqw  %xmm11, %xmm12, %xmm13
1374 // CHECK: encoding: [0xc4,0x41,0x19,0x75,0xeb]
1375           vpcmpeqw  %xmm11, %xmm12, %xmm13
1376
1377 // CHECK: vpcmpeqw  (%rax), %xmm12, %xmm13
1378 // CHECK: encoding: [0xc5,0x19,0x75,0x28]
1379           vpcmpeqw  (%rax), %xmm12, %xmm13
1380
1381 // CHECK: vpcmpeqd  %xmm11, %xmm12, %xmm13
1382 // CHECK: encoding: [0xc4,0x41,0x19,0x76,0xeb]
1383           vpcmpeqd  %xmm11, %xmm12, %xmm13
1384
1385 // CHECK: vpcmpeqd  (%rax), %xmm12, %xmm13
1386 // CHECK: encoding: [0xc5,0x19,0x76,0x28]
1387           vpcmpeqd  (%rax), %xmm12, %xmm13
1388
1389 // CHECK: vpcmpgtb  %xmm11, %xmm12, %xmm13
1390 // CHECK: encoding: [0xc4,0x41,0x19,0x64,0xeb]
1391           vpcmpgtb  %xmm11, %xmm12, %xmm13
1392
1393 // CHECK: vpcmpgtb  (%rax), %xmm12, %xmm13
1394 // CHECK: encoding: [0xc5,0x19,0x64,0x28]
1395           vpcmpgtb  (%rax), %xmm12, %xmm13
1396
1397 // CHECK: vpcmpgtw  %xmm11, %xmm12, %xmm13
1398 // CHECK: encoding: [0xc4,0x41,0x19,0x65,0xeb]
1399           vpcmpgtw  %xmm11, %xmm12, %xmm13
1400
1401 // CHECK: vpcmpgtw  (%rax), %xmm12, %xmm13
1402 // CHECK: encoding: [0xc5,0x19,0x65,0x28]
1403           vpcmpgtw  (%rax), %xmm12, %xmm13
1404
1405 // CHECK: vpcmpgtd  %xmm11, %xmm12, %xmm13
1406 // CHECK: encoding: [0xc4,0x41,0x19,0x66,0xeb]
1407           vpcmpgtd  %xmm11, %xmm12, %xmm13
1408
1409 // CHECK: vpcmpgtd  (%rax), %xmm12, %xmm13
1410 // CHECK: encoding: [0xc5,0x19,0x66,0x28]
1411           vpcmpgtd  (%rax), %xmm12, %xmm13
1412
1413 // CHECK: vpacksswb  %xmm11, %xmm12, %xmm13
1414 // CHECK: encoding: [0xc4,0x41,0x19,0x63,0xeb]
1415           vpacksswb  %xmm11, %xmm12, %xmm13
1416
1417 // CHECK: vpacksswb  (%rax), %xmm12, %xmm13
1418 // CHECK: encoding: [0xc5,0x19,0x63,0x28]
1419           vpacksswb  (%rax), %xmm12, %xmm13
1420
1421 // CHECK: vpackssdw  %xmm11, %xmm12, %xmm13
1422 // CHECK: encoding: [0xc4,0x41,0x19,0x6b,0xeb]
1423           vpackssdw  %xmm11, %xmm12, %xmm13
1424
1425 // CHECK: vpackssdw  (%rax), %xmm12, %xmm13
1426 // CHECK: encoding: [0xc5,0x19,0x6b,0x28]
1427           vpackssdw  (%rax), %xmm12, %xmm13
1428
1429 // CHECK: vpackuswb  %xmm11, %xmm12, %xmm13
1430 // CHECK: encoding: [0xc4,0x41,0x19,0x67,0xeb]
1431           vpackuswb  %xmm11, %xmm12, %xmm13
1432
1433 // CHECK: vpackuswb  (%rax), %xmm12, %xmm13
1434 // CHECK: encoding: [0xc5,0x19,0x67,0x28]
1435           vpackuswb  (%rax), %xmm12, %xmm13
1436
1437 // CHECK: vpshufd  $4, %xmm12, %xmm13
1438 // CHECK: encoding: [0xc4,0x41,0x79,0x70,0xec,0x04]
1439           vpshufd  $4, %xmm12, %xmm13
1440
1441 // CHECK: vpshufd  $4, (%rax), %xmm13
1442 // CHECK: encoding: [0xc5,0x79,0x70,0x28,0x04]
1443           vpshufd  $4, (%rax), %xmm13
1444
1445 // CHECK: vpshufhw  $4, %xmm12, %xmm13
1446 // CHECK: encoding: [0xc4,0x41,0x7a,0x70,0xec,0x04]
1447           vpshufhw  $4, %xmm12, %xmm13
1448
1449 // CHECK: vpshufhw  $4, (%rax), %xmm13
1450 // CHECK: encoding: [0xc5,0x7a,0x70,0x28,0x04]
1451           vpshufhw  $4, (%rax), %xmm13
1452
1453 // CHECK: vpshuflw  $4, %xmm12, %xmm13
1454 // CHECK: encoding: [0xc4,0x41,0x7b,0x70,0xec,0x04]
1455           vpshuflw  $4, %xmm12, %xmm13
1456
1457 // CHECK: vpshuflw  $4, (%rax), %xmm13
1458 // CHECK: encoding: [0xc5,0x7b,0x70,0x28,0x04]
1459           vpshuflw  $4, (%rax), %xmm13
1460
1461 // CHECK: vpunpcklbw  %xmm11, %xmm12, %xmm13
1462 // CHECK: encoding: [0xc4,0x41,0x19,0x60,0xeb]
1463           vpunpcklbw  %xmm11, %xmm12, %xmm13
1464
1465 // CHECK: vpunpcklbw  (%rax), %xmm12, %xmm13
1466 // CHECK: encoding: [0xc5,0x19,0x60,0x28]
1467           vpunpcklbw  (%rax), %xmm12, %xmm13
1468
1469 // CHECK: vpunpcklwd  %xmm11, %xmm12, %xmm13
1470 // CHECK: encoding: [0xc4,0x41,0x19,0x61,0xeb]
1471           vpunpcklwd  %xmm11, %xmm12, %xmm13
1472
1473 // CHECK: vpunpcklwd  (%rax), %xmm12, %xmm13
1474 // CHECK: encoding: [0xc5,0x19,0x61,0x28]
1475           vpunpcklwd  (%rax), %xmm12, %xmm13
1476
1477 // CHECK: vpunpckldq  %xmm11, %xmm12, %xmm13
1478 // CHECK: encoding: [0xc4,0x41,0x19,0x62,0xeb]
1479           vpunpckldq  %xmm11, %xmm12, %xmm13
1480
1481 // CHECK: vpunpckldq  (%rax), %xmm12, %xmm13
1482 // CHECK: encoding: [0xc5,0x19,0x62,0x28]
1483           vpunpckldq  (%rax), %xmm12, %xmm13
1484
1485 // CHECK: vpunpcklqdq  %xmm11, %xmm12, %xmm13
1486 // CHECK: encoding: [0xc4,0x41,0x19,0x6c,0xeb]
1487           vpunpcklqdq  %xmm11, %xmm12, %xmm13
1488
1489 // CHECK: vpunpcklqdq  (%rax), %xmm12, %xmm13
1490 // CHECK: encoding: [0xc5,0x19,0x6c,0x28]
1491           vpunpcklqdq  (%rax), %xmm12, %xmm13
1492
1493 // CHECK: vpunpckhbw  %xmm11, %xmm12, %xmm13
1494 // CHECK: encoding: [0xc4,0x41,0x19,0x68,0xeb]
1495           vpunpckhbw  %xmm11, %xmm12, %xmm13
1496
1497 // CHECK: vpunpckhbw  (%rax), %xmm12, %xmm13
1498 // CHECK: encoding: [0xc5,0x19,0x68,0x28]
1499           vpunpckhbw  (%rax), %xmm12, %xmm13
1500
1501 // CHECK: vpunpckhwd  %xmm11, %xmm12, %xmm13
1502 // CHECK: encoding: [0xc4,0x41,0x19,0x69,0xeb]
1503           vpunpckhwd  %xmm11, %xmm12, %xmm13
1504
1505 // CHECK: vpunpckhwd  (%rax), %xmm12, %xmm13
1506 // CHECK: encoding: [0xc5,0x19,0x69,0x28]
1507           vpunpckhwd  (%rax), %xmm12, %xmm13
1508
1509 // CHECK: vpunpckhdq  %xmm11, %xmm12, %xmm13
1510 // CHECK: encoding: [0xc4,0x41,0x19,0x6a,0xeb]
1511           vpunpckhdq  %xmm11, %xmm12, %xmm13
1512
1513 // CHECK: vpunpckhdq  (%rax), %xmm12, %xmm13
1514 // CHECK: encoding: [0xc5,0x19,0x6a,0x28]
1515           vpunpckhdq  (%rax), %xmm12, %xmm13
1516
1517 // CHECK: vpunpckhqdq  %xmm11, %xmm12, %xmm13
1518 // CHECK: encoding: [0xc4,0x41,0x19,0x6d,0xeb]
1519           vpunpckhqdq  %xmm11, %xmm12, %xmm13
1520
1521 // CHECK: vpunpckhqdq  (%rax), %xmm12, %xmm13
1522 // CHECK: encoding: [0xc5,0x19,0x6d,0x28]
1523           vpunpckhqdq  (%rax), %xmm12, %xmm13
1524
1525 // CHECK: vpinsrw  $7, %eax, %xmm12, %xmm13
1526 // CHECK: encoding: [0xc5,0x19,0xc4,0xe8,0x07]
1527           vpinsrw  $7, %eax, %xmm12, %xmm13
1528
1529 // CHECK: vpinsrw  $7, (%rax), %xmm12, %xmm13
1530 // CHECK: encoding: [0xc5,0x19,0xc4,0x28,0x07]
1531           vpinsrw  $7, (%rax), %xmm12, %xmm13
1532
1533 // CHECK: vpextrw  $7, %xmm12, %eax
1534 // CHECK: encoding: [0xc4,0xc1,0x79,0xc5,0xc4,0x07]
1535           vpextrw  $7, %xmm12, %eax
1536
1537 // CHECK: vpmovmskb  %xmm12, %eax
1538 // CHECK: encoding: [0xc4,0xc1,0x79,0xd7,0xc4]
1539           vpmovmskb  %xmm12, %eax
1540
1541 // CHECK: vmaskmovdqu  %xmm14, %xmm15
1542 // CHECK: encoding: [0xc4,0x41,0x79,0xf7,0xfe]
1543           vmaskmovdqu  %xmm14, %xmm15
1544
1545 // CHECK: vmovd  %eax, %xmm14
1546 // CHECK: encoding: [0xc5,0x79,0x6e,0xf0]
1547           vmovd  %eax, %xmm14
1548
1549 // CHECK: vmovd  (%rax), %xmm14
1550 // CHECK: encoding: [0xc5,0x79,0x6e,0x30]
1551           vmovd  (%rax), %xmm14
1552
1553 // CHECK: vmovd  %xmm14, (%rax)
1554 // CHECK: encoding: [0xc5,0x79,0x7e,0x30]
1555           vmovd  %xmm14, (%rax)
1556
1557 // CHECK: vmovd  %rax, %xmm14
1558 // CHECK: encoding: [0xc4,0x61,0xf9,0x6e,0xf0]
1559           vmovd  %rax, %xmm14
1560
1561 // CHECK: vmovq  %xmm14, (%rax)
1562 // CHECK: encoding: [0xc5,0x79,0xd6,0x30]
1563           vmovq  %xmm14, (%rax)
1564
1565 // CHECK: vmovq  %xmm14, %xmm12
1566 // CHECK: encoding: [0xc4,0x41,0x7a,0x7e,0xe6]
1567           vmovq  %xmm14, %xmm12
1568
1569 // CHECK: vmovq  (%rax), %xmm14
1570 // CHECK: encoding: [0xc5,0x7a,0x7e,0x30]
1571           vmovq  (%rax), %xmm14
1572
1573 // CHECK: vmovq  %rax, %xmm14
1574 // CHECK: encoding: [0xc4,0x61,0xf9,0x6e,0xf0]
1575           vmovq  %rax, %xmm14
1576
1577 // CHECK: vmovq  %xmm14, %rax
1578 // CHECK: encoding: [0xc4,0x61,0xf9,0x7e,0xf0]
1579           vmovq  %xmm14, %rax
1580
1581 // CHECK: vcvtpd2dq  %xmm11, %xmm12
1582 // CHECK: encoding: [0xc4,0x41,0x7b,0xe6,0xe3]
1583           vcvtpd2dq  %xmm11, %xmm12
1584
1585 // CHECK: vcvtdq2pd  %xmm11, %xmm12
1586 // CHECK: encoding: [0xc4,0x41,0x7a,0xe6,0xe3]
1587           vcvtdq2pd  %xmm11, %xmm12
1588
1589 // CHECK: vcvtdq2pd  (%rax), %xmm12
1590 // CHECK: encoding: [0xc5,0x7a,0xe6,0x20]
1591           vcvtdq2pd  (%rax), %xmm12
1592
1593 // CHECK: vmovshdup  %xmm11, %xmm12
1594 // CHECK: encoding: [0xc4,0x41,0x7a,0x16,0xe3]
1595           vmovshdup  %xmm11, %xmm12
1596
1597 // CHECK: vmovshdup  (%rax), %xmm12
1598 // CHECK: encoding: [0xc5,0x7a,0x16,0x20]
1599           vmovshdup  (%rax), %xmm12
1600
1601 // CHECK: vmovsldup  %xmm11, %xmm12
1602 // CHECK: encoding: [0xc4,0x41,0x7a,0x12,0xe3]
1603           vmovsldup  %xmm11, %xmm12
1604
1605 // CHECK: vmovsldup  (%rax), %xmm12
1606 // CHECK: encoding: [0xc5,0x7a,0x12,0x20]
1607           vmovsldup  (%rax), %xmm12
1608
1609 // CHECK: vmovddup  %xmm11, %xmm12
1610 // CHECK: encoding: [0xc4,0x41,0x7b,0x12,0xe3]
1611           vmovddup  %xmm11, %xmm12
1612
1613 // CHECK: vmovddup  (%rax), %xmm12
1614 // CHECK: encoding: [0xc5,0x7b,0x12,0x20]
1615           vmovddup  (%rax), %xmm12
1616
1617 // CHECK: vaddsubps  %xmm11, %xmm12, %xmm13
1618 // CHECK: encoding: [0xc4,0x41,0x1b,0xd0,0xeb]
1619           vaddsubps  %xmm11, %xmm12, %xmm13
1620
1621 // CHECK: vaddsubps  (%rax), %xmm11, %xmm12
1622 // CHECK: encoding: [0xc5,0x23,0xd0,0x20]
1623           vaddsubps  (%rax), %xmm11, %xmm12
1624
1625 // CHECK: vaddsubpd  %xmm11, %xmm12, %xmm13
1626 // CHECK: encoding: [0xc4,0x41,0x19,0xd0,0xeb]
1627           vaddsubpd  %xmm11, %xmm12, %xmm13
1628
1629 // CHECK: vaddsubpd  (%rax), %xmm11, %xmm12
1630 // CHECK: encoding: [0xc5,0x21,0xd0,0x20]
1631           vaddsubpd  (%rax), %xmm11, %xmm12
1632
1633 // CHECK: vhaddps  %xmm11, %xmm12, %xmm13
1634 // CHECK: encoding: [0xc4,0x41,0x1b,0x7c,0xeb]
1635           vhaddps  %xmm11, %xmm12, %xmm13
1636
1637 // CHECK: vhaddps  (%rax), %xmm12, %xmm13
1638 // CHECK: encoding: [0xc5,0x1b,0x7c,0x28]
1639           vhaddps  (%rax), %xmm12, %xmm13
1640
1641 // CHECK: vhaddpd  %xmm11, %xmm12, %xmm13
1642 // CHECK: encoding: [0xc4,0x41,0x19,0x7c,0xeb]
1643           vhaddpd  %xmm11, %xmm12, %xmm13
1644
1645 // CHECK: vhaddpd  (%rax), %xmm12, %xmm13
1646 // CHECK: encoding: [0xc5,0x19,0x7c,0x28]
1647           vhaddpd  (%rax), %xmm12, %xmm13
1648
1649 // CHECK: vhsubps  %xmm11, %xmm12, %xmm13
1650 // CHECK: encoding: [0xc4,0x41,0x1b,0x7d,0xeb]
1651           vhsubps  %xmm11, %xmm12, %xmm13
1652
1653 // CHECK: vhsubps  (%rax), %xmm12, %xmm13
1654 // CHECK: encoding: [0xc5,0x1b,0x7d,0x28]
1655           vhsubps  (%rax), %xmm12, %xmm13
1656
1657 // CHECK: vhsubpd  %xmm11, %xmm12, %xmm13
1658 // CHECK: encoding: [0xc4,0x41,0x19,0x7d,0xeb]
1659           vhsubpd  %xmm11, %xmm12, %xmm13
1660
1661 // CHECK: vhsubpd  (%rax), %xmm12, %xmm13
1662 // CHECK: encoding: [0xc5,0x19,0x7d,0x28]
1663           vhsubpd  (%rax), %xmm12, %xmm13
1664