6df43c8753e0375c17abf3d2b9bceffcd80b20cf
[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