83320dfcb3756200dc23a1bc2768f2d75bdc8188
[oota-llvm.git] / test / MC / X86 / x86-64-avx512f_vl.s
1 // RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=skx --show-encoding %s | FileCheck %s
2
3 // CHECK: vmovapd %xmm21, %xmm21
4 // CHECK:  encoding: [0x62,0xa1,0xfd,0x08,0x28,0xed]
5           vmovapd %xmm21, %xmm21
6
7 // CHECK: vmovapd %xmm21, %xmm21 {%k3}
8 // CHECK:  encoding: [0x62,0xa1,0xfd,0x0b,0x28,0xed]
9           vmovapd %xmm21, %xmm21 {%k3}
10
11 // CHECK: vmovapd %xmm21, %xmm21 {%k3} {z}
12 // CHECK:  encoding: [0x62,0xa1,0xfd,0x8b,0x28,0xed]
13           vmovapd %xmm21, %xmm21 {%k3} {z}
14
15 // CHECK: vmovapd (%rcx), %xmm21
16 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x28,0x29]
17           vmovapd (%rcx), %xmm21
18
19 // CHECK: vmovapd 291(%rax,%r14,8), %xmm21
20 // CHECK:  encoding: [0x62,0xa1,0xfd,0x08,0x28,0xac,0xf0,0x23,0x01,0x00,0x00]
21           vmovapd 291(%rax,%r14,8), %xmm21
22
23 // CHECK: vmovapd 2032(%rdx), %xmm21
24 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x28,0x6a,0x7f]
25           vmovapd 2032(%rdx), %xmm21
26
27 // CHECK: vmovapd 2048(%rdx), %xmm21
28 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x28,0xaa,0x00,0x08,0x00,0x00]
29           vmovapd 2048(%rdx), %xmm21
30
31 // CHECK: vmovapd -2048(%rdx), %xmm21
32 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x28,0x6a,0x80]
33           vmovapd -2048(%rdx), %xmm21
34
35 // CHECK: vmovapd -2064(%rdx), %xmm21
36 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x28,0xaa,0xf0,0xf7,0xff,0xff]
37           vmovapd -2064(%rdx), %xmm21
38
39 // CHECK: vmovapd %ymm17, %ymm18
40 // CHECK:  encoding: [0x62,0xa1,0xfd,0x28,0x28,0xd1]
41           vmovapd %ymm17, %ymm18
42
43 // CHECK: vmovapd %ymm17, %ymm18 {%k2}
44 // CHECK:  encoding: [0x62,0xa1,0xfd,0x2a,0x28,0xd1]
45           vmovapd %ymm17, %ymm18 {%k2}
46
47 // CHECK: vmovapd %ymm17, %ymm18 {%k2} {z}
48 // CHECK:  encoding: [0x62,0xa1,0xfd,0xaa,0x28,0xd1]
49           vmovapd %ymm17, %ymm18 {%k2} {z}
50
51 // CHECK: vmovapd (%rcx), %ymm18
52 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x28,0x11]
53           vmovapd (%rcx), %ymm18
54
55 // CHECK: vmovapd 291(%rax,%r14,8), %ymm18
56 // CHECK:  encoding: [0x62,0xa1,0xfd,0x28,0x28,0x94,0xf0,0x23,0x01,0x00,0x00]
57           vmovapd 291(%rax,%r14,8), %ymm18
58
59 // CHECK: vmovapd 4064(%rdx), %ymm18
60 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x28,0x52,0x7f]
61           vmovapd 4064(%rdx), %ymm18
62
63 // CHECK: vmovapd 4096(%rdx), %ymm18
64 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x28,0x92,0x00,0x10,0x00,0x00]
65           vmovapd 4096(%rdx), %ymm18
66
67 // CHECK: vmovapd -4096(%rdx), %ymm18
68 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x28,0x52,0x80]
69           vmovapd -4096(%rdx), %ymm18
70
71 // CHECK: vmovapd -4128(%rdx), %ymm18
72 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x28,0x92,0xe0,0xef,0xff,0xff]
73           vmovapd -4128(%rdx), %ymm18
74
75 // CHECK: vmovaps %xmm29, %xmm22
76 // CHECK:  encoding: [0x62,0x81,0x7c,0x08,0x28,0xf5]
77           vmovaps %xmm29, %xmm22
78
79 // CHECK: vmovaps %xmm29, %xmm22 {%k1}
80 // CHECK:  encoding: [0x62,0x81,0x7c,0x09,0x28,0xf5]
81           vmovaps %xmm29, %xmm22 {%k1}
82
83 // CHECK: vmovaps %xmm29, %xmm22 {%k1} {z}
84 // CHECK:  encoding: [0x62,0x81,0x7c,0x89,0x28,0xf5]
85           vmovaps %xmm29, %xmm22 {%k1} {z}
86
87 // CHECK: vmovaps (%rcx), %xmm22
88 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x28,0x31]
89           vmovaps (%rcx), %xmm22
90
91 // CHECK: vmovaps 291(%rax,%r14,8), %xmm22
92 // CHECK:  encoding: [0x62,0xa1,0x7c,0x08,0x28,0xb4,0xf0,0x23,0x01,0x00,0x00]
93           vmovaps 291(%rax,%r14,8), %xmm22
94
95 // CHECK: vmovaps 2032(%rdx), %xmm22
96 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x28,0x72,0x7f]
97           vmovaps 2032(%rdx), %xmm22
98
99 // CHECK: vmovaps 2048(%rdx), %xmm22
100 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x28,0xb2,0x00,0x08,0x00,0x00]
101           vmovaps 2048(%rdx), %xmm22
102
103 // CHECK: vmovaps -2048(%rdx), %xmm22
104 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x28,0x72,0x80]
105           vmovaps -2048(%rdx), %xmm22
106
107 // CHECK: vmovaps -2064(%rdx), %xmm22
108 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x28,0xb2,0xf0,0xf7,0xff,0xff]
109           vmovaps -2064(%rdx), %xmm22
110
111 // CHECK: vmovaps %ymm28, %ymm25
112 // CHECK:  encoding: [0x62,0x01,0x7c,0x28,0x28,0xcc]
113           vmovaps %ymm28, %ymm25
114
115 // CHECK: vmovaps %ymm28, %ymm25 {%k3}
116 // CHECK:  encoding: [0x62,0x01,0x7c,0x2b,0x28,0xcc]
117           vmovaps %ymm28, %ymm25 {%k3}
118
119 // CHECK: vmovaps %ymm28, %ymm25 {%k3} {z}
120 // CHECK:  encoding: [0x62,0x01,0x7c,0xab,0x28,0xcc]
121           vmovaps %ymm28, %ymm25 {%k3} {z}
122
123 // CHECK: vmovaps (%rcx), %ymm25
124 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x28,0x09]
125           vmovaps (%rcx), %ymm25
126
127 // CHECK: vmovaps 291(%rax,%r14,8), %ymm25
128 // CHECK:  encoding: [0x62,0x21,0x7c,0x28,0x28,0x8c,0xf0,0x23,0x01,0x00,0x00]
129           vmovaps 291(%rax,%r14,8), %ymm25
130
131 // CHECK: vmovaps 4064(%rdx), %ymm25
132 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x28,0x4a,0x7f]
133           vmovaps 4064(%rdx), %ymm25
134
135 // CHECK: vmovaps 4096(%rdx), %ymm25
136 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x28,0x8a,0x00,0x10,0x00,0x00]
137           vmovaps 4096(%rdx), %ymm25
138
139 // CHECK: vmovaps -4096(%rdx), %ymm25
140 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x28,0x4a,0x80]
141           vmovaps -4096(%rdx), %ymm25
142
143 // CHECK: vmovaps -4128(%rdx), %ymm25
144 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x28,0x8a,0xe0,0xef,0xff,0xff]
145           vmovaps -4128(%rdx), %ymm25
146
147 // CHECK: vmovdqa32 %xmm24, %xmm21
148 // CHECK:  encoding: [0x62,0x81,0x7d,0x08,0x6f,0xe8]
149           vmovdqa32 %xmm24, %xmm21
150
151 // CHECK: vmovdqa32 %xmm24, %xmm21 {%k6}
152 // CHECK:  encoding: [0x62,0x81,0x7d,0x0e,0x6f,0xe8]
153           vmovdqa32 %xmm24, %xmm21 {%k6}
154
155 // CHECK: vmovdqa32 %xmm24, %xmm21 {%k6} {z}
156 // CHECK:  encoding: [0x62,0x81,0x7d,0x8e,0x6f,0xe8]
157           vmovdqa32 %xmm24, %xmm21 {%k6} {z}
158
159 // CHECK: vmovdqa32 (%rcx), %xmm21
160 // CHECK:  encoding: [0x62,0xe1,0x7d,0x08,0x6f,0x29]
161           vmovdqa32 (%rcx), %xmm21
162
163 // CHECK: vmovdqa32 291(%rax,%r14,8), %xmm21
164 // CHECK:  encoding: [0x62,0xa1,0x7d,0x08,0x6f,0xac,0xf0,0x23,0x01,0x00,0x00]
165           vmovdqa32 291(%rax,%r14,8), %xmm21
166
167 // CHECK: vmovdqa32 2032(%rdx), %xmm21
168 // CHECK:  encoding: [0x62,0xe1,0x7d,0x08,0x6f,0x6a,0x7f]
169           vmovdqa32 2032(%rdx), %xmm21
170
171 // CHECK: vmovdqa32 2048(%rdx), %xmm21
172 // CHECK:  encoding: [0x62,0xe1,0x7d,0x08,0x6f,0xaa,0x00,0x08,0x00,0x00]
173           vmovdqa32 2048(%rdx), %xmm21
174
175 // CHECK: vmovdqa32 -2048(%rdx), %xmm21
176 // CHECK:  encoding: [0x62,0xe1,0x7d,0x08,0x6f,0x6a,0x80]
177           vmovdqa32 -2048(%rdx), %xmm21
178
179 // CHECK: vmovdqa32 -2064(%rdx), %xmm21
180 // CHECK:  encoding: [0x62,0xe1,0x7d,0x08,0x6f,0xaa,0xf0,0xf7,0xff,0xff]
181           vmovdqa32 -2064(%rdx), %xmm21
182
183 // CHECK: vmovdqa32 %ymm28, %ymm24
184 // CHECK:  encoding: [0x62,0x01,0x7d,0x28,0x6f,0xc4]
185           vmovdqa32 %ymm28, %ymm24
186
187 // CHECK: vmovdqa32 %ymm28, %ymm24 {%k5}
188 // CHECK:  encoding: [0x62,0x01,0x7d,0x2d,0x6f,0xc4]
189           vmovdqa32 %ymm28, %ymm24 {%k5}
190
191 // CHECK: vmovdqa32 %ymm28, %ymm24 {%k5} {z}
192 // CHECK:  encoding: [0x62,0x01,0x7d,0xad,0x6f,0xc4]
193           vmovdqa32 %ymm28, %ymm24 {%k5} {z}
194
195 // CHECK: vmovdqa32 (%rcx), %ymm24
196 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x6f,0x01]
197           vmovdqa32 (%rcx), %ymm24
198
199 // CHECK: vmovdqa32 291(%rax,%r14,8), %ymm24
200 // CHECK:  encoding: [0x62,0x21,0x7d,0x28,0x6f,0x84,0xf0,0x23,0x01,0x00,0x00]
201           vmovdqa32 291(%rax,%r14,8), %ymm24
202
203 // CHECK: vmovdqa32 4064(%rdx), %ymm24
204 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x6f,0x42,0x7f]
205           vmovdqa32 4064(%rdx), %ymm24
206
207 // CHECK: vmovdqa32 4096(%rdx), %ymm24
208 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x6f,0x82,0x00,0x10,0x00,0x00]
209           vmovdqa32 4096(%rdx), %ymm24
210
211 // CHECK: vmovdqa32 -4096(%rdx), %ymm24
212 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x6f,0x42,0x80]
213           vmovdqa32 -4096(%rdx), %ymm24
214
215 // CHECK: vmovdqa32 -4128(%rdx), %ymm24
216 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x6f,0x82,0xe0,0xef,0xff,0xff]
217           vmovdqa32 -4128(%rdx), %ymm24
218
219 // CHECK: vmovdqa64 %xmm24, %xmm27
220 // CHECK:  encoding: [0x62,0x01,0xfd,0x08,0x6f,0xd8]
221           vmovdqa64 %xmm24, %xmm27
222
223 // CHECK: vmovdqa64 %xmm24, %xmm27 {%k5}
224 // CHECK:  encoding: [0x62,0x01,0xfd,0x0d,0x6f,0xd8]
225           vmovdqa64 %xmm24, %xmm27 {%k5}
226
227 // CHECK: vmovdqa64 %xmm24, %xmm27 {%k5} {z}
228 // CHECK:  encoding: [0x62,0x01,0xfd,0x8d,0x6f,0xd8]
229           vmovdqa64 %xmm24, %xmm27 {%k5} {z}
230
231 // CHECK: vmovdqa64 (%rcx), %xmm27
232 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x6f,0x19]
233           vmovdqa64 (%rcx), %xmm27
234
235 // CHECK: vmovdqa64 291(%rax,%r14,8), %xmm27
236 // CHECK:  encoding: [0x62,0x21,0xfd,0x08,0x6f,0x9c,0xf0,0x23,0x01,0x00,0x00]
237           vmovdqa64 291(%rax,%r14,8), %xmm27
238
239 // CHECK: vmovdqa64 2032(%rdx), %xmm27
240 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x6f,0x5a,0x7f]
241           vmovdqa64 2032(%rdx), %xmm27
242
243 // CHECK: vmovdqa64 2048(%rdx), %xmm27
244 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x6f,0x9a,0x00,0x08,0x00,0x00]
245           vmovdqa64 2048(%rdx), %xmm27
246
247 // CHECK: vmovdqa64 -2048(%rdx), %xmm27
248 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x6f,0x5a,0x80]
249           vmovdqa64 -2048(%rdx), %xmm27
250
251 // CHECK: vmovdqa64 -2064(%rdx), %xmm27
252 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x6f,0x9a,0xf0,0xf7,0xff,0xff]
253           vmovdqa64 -2064(%rdx), %xmm27
254
255 // CHECK: vmovdqa64 %ymm29, %ymm30
256 // CHECK:  encoding: [0x62,0x01,0xfd,0x28,0x6f,0xf5]
257           vmovdqa64 %ymm29, %ymm30
258
259 // CHECK: vmovdqa64 %ymm29, %ymm30 {%k3}
260 // CHECK:  encoding: [0x62,0x01,0xfd,0x2b,0x6f,0xf5]
261           vmovdqa64 %ymm29, %ymm30 {%k3}
262
263 // CHECK: vmovdqa64 %ymm29, %ymm30 {%k3} {z}
264 // CHECK:  encoding: [0x62,0x01,0xfd,0xab,0x6f,0xf5]
265           vmovdqa64 %ymm29, %ymm30 {%k3} {z}
266
267 // CHECK: vmovdqa64 (%rcx), %ymm30
268 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x6f,0x31]
269           vmovdqa64 (%rcx), %ymm30
270
271 // CHECK: vmovdqa64 291(%rax,%r14,8), %ymm30
272 // CHECK:  encoding: [0x62,0x21,0xfd,0x28,0x6f,0xb4,0xf0,0x23,0x01,0x00,0x00]
273           vmovdqa64 291(%rax,%r14,8), %ymm30
274
275 // CHECK: vmovdqa64 4064(%rdx), %ymm30
276 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x6f,0x72,0x7f]
277           vmovdqa64 4064(%rdx), %ymm30
278
279 // CHECK: vmovdqa64 4096(%rdx), %ymm30
280 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x6f,0xb2,0x00,0x10,0x00,0x00]
281           vmovdqa64 4096(%rdx), %ymm30
282
283 // CHECK: vmovdqa64 -4096(%rdx), %ymm30
284 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x6f,0x72,0x80]
285           vmovdqa64 -4096(%rdx), %ymm30
286
287 // CHECK: vmovdqa64 -4128(%rdx), %ymm30
288 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x6f,0xb2,0xe0,0xef,0xff,0xff]
289           vmovdqa64 -4128(%rdx), %ymm30
290
291 // CHECK: vmovdqu32 %xmm19, %xmm29
292 // CHECK:  encoding: [0x62,0x21,0x7e,0x08,0x6f,0xeb]
293           vmovdqu32 %xmm19, %xmm29
294
295 // CHECK: vmovdqu32 %xmm19, %xmm29 {%k6}
296 // CHECK:  encoding: [0x62,0x21,0x7e,0x0e,0x6f,0xeb]
297           vmovdqu32 %xmm19, %xmm29 {%k6}
298
299 // CHECK: vmovdqu32 %xmm19, %xmm29 {%k6} {z}
300 // CHECK:  encoding: [0x62,0x21,0x7e,0x8e,0x6f,0xeb]
301           vmovdqu32 %xmm19, %xmm29 {%k6} {z}
302
303 // CHECK: vmovdqu32 (%rcx), %xmm29
304 // CHECK:  encoding: [0x62,0x61,0x7e,0x08,0x6f,0x29]
305           vmovdqu32 (%rcx), %xmm29
306
307 // CHECK: vmovdqu32 291(%rax,%r14,8), %xmm29
308 // CHECK:  encoding: [0x62,0x21,0x7e,0x08,0x6f,0xac,0xf0,0x23,0x01,0x00,0x00]
309           vmovdqu32 291(%rax,%r14,8), %xmm29
310
311 // CHECK: vmovdqu32 2032(%rdx), %xmm29
312 // CHECK:  encoding: [0x62,0x61,0x7e,0x08,0x6f,0x6a,0x7f]
313           vmovdqu32 2032(%rdx), %xmm29
314
315 // CHECK: vmovdqu32 2048(%rdx), %xmm29
316 // CHECK:  encoding: [0x62,0x61,0x7e,0x08,0x6f,0xaa,0x00,0x08,0x00,0x00]
317           vmovdqu32 2048(%rdx), %xmm29
318
319 // CHECK: vmovdqu32 -2048(%rdx), %xmm29
320 // CHECK:  encoding: [0x62,0x61,0x7e,0x08,0x6f,0x6a,0x80]
321           vmovdqu32 -2048(%rdx), %xmm29
322
323 // CHECK: vmovdqu32 -2064(%rdx), %xmm29
324 // CHECK:  encoding: [0x62,0x61,0x7e,0x08,0x6f,0xaa,0xf0,0xf7,0xff,0xff]
325           vmovdqu32 -2064(%rdx), %xmm29
326
327 // CHECK: vmovdqu32 %ymm18, %ymm17
328 // CHECK:  encoding: [0x62,0xa1,0x7e,0x28,0x6f,0xca]
329           vmovdqu32 %ymm18, %ymm17
330
331 // CHECK: vmovdqu32 %ymm18, %ymm17 {%k3}
332 // CHECK:  encoding: [0x62,0xa1,0x7e,0x2b,0x6f,0xca]
333           vmovdqu32 %ymm18, %ymm17 {%k3}
334
335 // CHECK: vmovdqu32 %ymm18, %ymm17 {%k3} {z}
336 // CHECK:  encoding: [0x62,0xa1,0x7e,0xab,0x6f,0xca]
337           vmovdqu32 %ymm18, %ymm17 {%k3} {z}
338
339 // CHECK: vmovdqu32 (%rcx), %ymm17
340 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x6f,0x09]
341           vmovdqu32 (%rcx), %ymm17
342
343 // CHECK: vmovdqu32 291(%rax,%r14,8), %ymm17
344 // CHECK:  encoding: [0x62,0xa1,0x7e,0x28,0x6f,0x8c,0xf0,0x23,0x01,0x00,0x00]
345           vmovdqu32 291(%rax,%r14,8), %ymm17
346
347 // CHECK: vmovdqu32 4064(%rdx), %ymm17
348 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x6f,0x4a,0x7f]
349           vmovdqu32 4064(%rdx), %ymm17
350
351 // CHECK: vmovdqu32 4096(%rdx), %ymm17
352 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x6f,0x8a,0x00,0x10,0x00,0x00]
353           vmovdqu32 4096(%rdx), %ymm17
354
355 // CHECK: vmovdqu32 -4096(%rdx), %ymm17
356 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x6f,0x4a,0x80]
357           vmovdqu32 -4096(%rdx), %ymm17
358
359 // CHECK: vmovdqu32 -4128(%rdx), %ymm17
360 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x6f,0x8a,0xe0,0xef,0xff,0xff]
361           vmovdqu32 -4128(%rdx), %ymm17
362
363 // CHECK: vmovdqu64 %xmm19, %xmm24
364 // CHECK:  encoding: [0x62,0x21,0xfe,0x08,0x6f,0xc3]
365           vmovdqu64 %xmm19, %xmm24
366
367 // CHECK: vmovdqu64 %xmm19, %xmm24 {%k5}
368 // CHECK:  encoding: [0x62,0x21,0xfe,0x0d,0x6f,0xc3]
369           vmovdqu64 %xmm19, %xmm24 {%k5}
370
371 // CHECK: vmovdqu64 %xmm19, %xmm24 {%k5} {z}
372 // CHECK:  encoding: [0x62,0x21,0xfe,0x8d,0x6f,0xc3]
373           vmovdqu64 %xmm19, %xmm24 {%k5} {z}
374
375 // CHECK: vmovdqu64 (%rcx), %xmm24
376 // CHECK:  encoding: [0x62,0x61,0xfe,0x08,0x6f,0x01]
377           vmovdqu64 (%rcx), %xmm24
378
379 // CHECK: vmovdqu64 291(%rax,%r14,8), %xmm24
380 // CHECK:  encoding: [0x62,0x21,0xfe,0x08,0x6f,0x84,0xf0,0x23,0x01,0x00,0x00]
381           vmovdqu64 291(%rax,%r14,8), %xmm24
382
383 // CHECK: vmovdqu64 2032(%rdx), %xmm24
384 // CHECK:  encoding: [0x62,0x61,0xfe,0x08,0x6f,0x42,0x7f]
385           vmovdqu64 2032(%rdx), %xmm24
386
387 // CHECK: vmovdqu64 2048(%rdx), %xmm24
388 // CHECK:  encoding: [0x62,0x61,0xfe,0x08,0x6f,0x82,0x00,0x08,0x00,0x00]
389           vmovdqu64 2048(%rdx), %xmm24
390
391 // CHECK: vmovdqu64 -2048(%rdx), %xmm24
392 // CHECK:  encoding: [0x62,0x61,0xfe,0x08,0x6f,0x42,0x80]
393           vmovdqu64 -2048(%rdx), %xmm24
394
395 // CHECK: vmovdqu64 -2064(%rdx), %xmm24
396 // CHECK:  encoding: [0x62,0x61,0xfe,0x08,0x6f,0x82,0xf0,0xf7,0xff,0xff]
397           vmovdqu64 -2064(%rdx), %xmm24
398
399 // CHECK: vmovdqu64 %ymm21, %ymm29
400 // CHECK:  encoding: [0x62,0x21,0xfe,0x28,0x6f,0xed]
401           vmovdqu64 %ymm21, %ymm29
402
403 // CHECK: vmovdqu64 %ymm21, %ymm29 {%k3}
404 // CHECK:  encoding: [0x62,0x21,0xfe,0x2b,0x6f,0xed]
405           vmovdqu64 %ymm21, %ymm29 {%k3}
406
407 // CHECK: vmovdqu64 %ymm21, %ymm29 {%k3} {z}
408 // CHECK:  encoding: [0x62,0x21,0xfe,0xab,0x6f,0xed]
409           vmovdqu64 %ymm21, %ymm29 {%k3} {z}
410
411 // CHECK: vmovdqu64 (%rcx), %ymm29
412 // CHECK:  encoding: [0x62,0x61,0xfe,0x28,0x6f,0x29]
413           vmovdqu64 (%rcx), %ymm29
414
415 // CHECK: vmovdqu64 291(%rax,%r14,8), %ymm29
416 // CHECK:  encoding: [0x62,0x21,0xfe,0x28,0x6f,0xac,0xf0,0x23,0x01,0x00,0x00]
417           vmovdqu64 291(%rax,%r14,8), %ymm29
418
419 // CHECK: vmovdqu64 4064(%rdx), %ymm29
420 // CHECK:  encoding: [0x62,0x61,0xfe,0x28,0x6f,0x6a,0x7f]
421           vmovdqu64 4064(%rdx), %ymm29
422
423 // CHECK: vmovdqu64 4096(%rdx), %ymm29
424 // CHECK:  encoding: [0x62,0x61,0xfe,0x28,0x6f,0xaa,0x00,0x10,0x00,0x00]
425           vmovdqu64 4096(%rdx), %ymm29
426
427 // CHECK: vmovdqu64 -4096(%rdx), %ymm29
428 // CHECK:  encoding: [0x62,0x61,0xfe,0x28,0x6f,0x6a,0x80]
429           vmovdqu64 -4096(%rdx), %ymm29
430
431 // CHECK: vmovdqu64 -4128(%rdx), %ymm29
432 // CHECK:  encoding: [0x62,0x61,0xfe,0x28,0x6f,0xaa,0xe0,0xef,0xff,0xff]
433           vmovdqu64 -4128(%rdx), %ymm29
434
435 // CHECK: vmovupd %xmm22, %xmm24
436 // CHECK:  encoding: [0x62,0x21,0xfd,0x08,0x10,0xc6]
437           vmovupd %xmm22, %xmm24
438
439 // CHECK: vmovupd %xmm22, %xmm24 {%k6}
440 // CHECK:  encoding: [0x62,0x21,0xfd,0x0e,0x10,0xc6]
441           vmovupd %xmm22, %xmm24 {%k6}
442
443 // CHECK: vmovupd %xmm22, %xmm24 {%k6} {z}
444 // CHECK:  encoding: [0x62,0x21,0xfd,0x8e,0x10,0xc6]
445           vmovupd %xmm22, %xmm24 {%k6} {z}
446
447 // CHECK: vmovupd (%rcx), %xmm24
448 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x10,0x01]
449           vmovupd (%rcx), %xmm24
450
451 // CHECK: vmovupd 291(%rax,%r14,8), %xmm24
452 // CHECK:  encoding: [0x62,0x21,0xfd,0x08,0x10,0x84,0xf0,0x23,0x01,0x00,0x00]
453           vmovupd 291(%rax,%r14,8), %xmm24
454
455 // CHECK: vmovupd 2032(%rdx), %xmm24
456 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x10,0x42,0x7f]
457           vmovupd 2032(%rdx), %xmm24
458
459 // CHECK: vmovupd 2048(%rdx), %xmm24
460 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x10,0x82,0x00,0x08,0x00,0x00]
461           vmovupd 2048(%rdx), %xmm24
462
463 // CHECK: vmovupd -2048(%rdx), %xmm24
464 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x10,0x42,0x80]
465           vmovupd -2048(%rdx), %xmm24
466
467 // CHECK: vmovupd -2064(%rdx), %xmm24
468 // CHECK:  encoding: [0x62,0x61,0xfd,0x08,0x10,0x82,0xf0,0xf7,0xff,0xff]
469           vmovupd -2064(%rdx), %xmm24
470
471 // CHECK: vmovupd %ymm25, %ymm30
472 // CHECK:  encoding: [0x62,0x01,0xfd,0x28,0x10,0xf1]
473           vmovupd %ymm25, %ymm30
474
475 // CHECK: vmovupd %ymm25, %ymm30 {%k7}
476 // CHECK:  encoding: [0x62,0x01,0xfd,0x2f,0x10,0xf1]
477           vmovupd %ymm25, %ymm30 {%k7}
478
479 // CHECK: vmovupd %ymm25, %ymm30 {%k7} {z}
480 // CHECK:  encoding: [0x62,0x01,0xfd,0xaf,0x10,0xf1]
481           vmovupd %ymm25, %ymm30 {%k7} {z}
482
483 // CHECK: vmovupd (%rcx), %ymm30
484 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x10,0x31]
485           vmovupd (%rcx), %ymm30
486
487 // CHECK: vmovupd 291(%rax,%r14,8), %ymm30
488 // CHECK:  encoding: [0x62,0x21,0xfd,0x28,0x10,0xb4,0xf0,0x23,0x01,0x00,0x00]
489           vmovupd 291(%rax,%r14,8), %ymm30
490
491 // CHECK: vmovupd 4064(%rdx), %ymm30
492 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x10,0x72,0x7f]
493           vmovupd 4064(%rdx), %ymm30
494
495 // CHECK: vmovupd 4096(%rdx), %ymm30
496 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x10,0xb2,0x00,0x10,0x00,0x00]
497           vmovupd 4096(%rdx), %ymm30
498
499 // CHECK: vmovupd -4096(%rdx), %ymm30
500 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x10,0x72,0x80]
501           vmovupd -4096(%rdx), %ymm30
502
503 // CHECK: vmovupd -4128(%rdx), %ymm30
504 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x10,0xb2,0xe0,0xef,0xff,0xff]
505           vmovupd -4128(%rdx), %ymm30
506
507 // CHECK: vmovups %xmm29, %xmm20
508 // CHECK:  encoding: [0x62,0x81,0x7c,0x08,0x10,0xe5]
509           vmovups %xmm29, %xmm20
510
511 // CHECK: vmovups %xmm29, %xmm20 {%k6}
512 // CHECK:  encoding: [0x62,0x81,0x7c,0x0e,0x10,0xe5]
513           vmovups %xmm29, %xmm20 {%k6}
514
515 // CHECK: vmovups %xmm29, %xmm20 {%k6} {z}
516 // CHECK:  encoding: [0x62,0x81,0x7c,0x8e,0x10,0xe5]
517           vmovups %xmm29, %xmm20 {%k6} {z}
518
519 // CHECK: vmovups (%rcx), %xmm20
520 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x10,0x21]
521           vmovups (%rcx), %xmm20
522
523 // CHECK: vmovups 291(%rax,%r14,8), %xmm20
524 // CHECK:  encoding: [0x62,0xa1,0x7c,0x08,0x10,0xa4,0xf0,0x23,0x01,0x00,0x00]
525           vmovups 291(%rax,%r14,8), %xmm20
526
527 // CHECK: vmovups 2032(%rdx), %xmm20
528 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x10,0x62,0x7f]
529           vmovups 2032(%rdx), %xmm20
530
531 // CHECK: vmovups 2048(%rdx), %xmm20
532 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x10,0xa2,0x00,0x08,0x00,0x00]
533           vmovups 2048(%rdx), %xmm20
534
535 // CHECK: vmovups -2048(%rdx), %xmm20
536 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x10,0x62,0x80]
537           vmovups -2048(%rdx), %xmm20
538
539 // CHECK: vmovups -2064(%rdx), %xmm20
540 // CHECK:  encoding: [0x62,0xe1,0x7c,0x08,0x10,0xa2,0xf0,0xf7,0xff,0xff]
541           vmovups -2064(%rdx), %xmm20
542
543 // CHECK: vmovups %ymm26, %ymm21
544 // CHECK:  encoding: [0x62,0x81,0x7c,0x28,0x10,0xea]
545           vmovups %ymm26, %ymm21
546
547 // CHECK: vmovups %ymm26, %ymm21 {%k6}
548 // CHECK:  encoding: [0x62,0x81,0x7c,0x2e,0x10,0xea]
549           vmovups %ymm26, %ymm21 {%k6}
550
551 // CHECK: vmovups %ymm26, %ymm21 {%k6} {z}
552 // CHECK:  encoding: [0x62,0x81,0x7c,0xae,0x10,0xea]
553           vmovups %ymm26, %ymm21 {%k6} {z}
554
555 // CHECK: vmovups (%rcx), %ymm21
556 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x10,0x29]
557           vmovups (%rcx), %ymm21
558
559 // CHECK: vmovups 291(%rax,%r14,8), %ymm21
560 // CHECK:  encoding: [0x62,0xa1,0x7c,0x28,0x10,0xac,0xf0,0x23,0x01,0x00,0x00]
561           vmovups 291(%rax,%r14,8), %ymm21
562
563 // CHECK: vmovups 4064(%rdx), %ymm21
564 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x10,0x6a,0x7f]
565           vmovups 4064(%rdx), %ymm21
566
567 // CHECK: vmovups 4096(%rdx), %ymm21
568 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x10,0xaa,0x00,0x10,0x00,0x00]
569           vmovups 4096(%rdx), %ymm21
570
571 // CHECK: vmovups -4096(%rdx), %ymm21
572 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x10,0x6a,0x80]
573           vmovups -4096(%rdx), %ymm21
574
575 // CHECK: vmovups -4128(%rdx), %ymm21
576 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x10,0xaa,0xe0,0xef,0xff,0xff]
577           vmovups -4128(%rdx), %ymm21
578
579 // CHECK: vmovapd %xmm22, (%rcx)
580 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x29,0x31]
581           vmovapd %xmm22, (%rcx)
582
583 // CHECK: vmovapd %xmm22, (%rcx) {%k2}
584 // CHECK:  encoding: [0x62,0xe1,0xfd,0x0a,0x29,0x31]
585           vmovapd %xmm22, (%rcx) {%k2}
586
587 // CHECK: vmovapd %xmm22, 291(%rax,%r14,8)
588 // CHECK:  encoding: [0x62,0xa1,0xfd,0x08,0x29,0xb4,0xf0,0x23,0x01,0x00,0x00]
589           vmovapd %xmm22, 291(%rax,%r14,8)
590
591 // CHECK: vmovapd %xmm22, 2032(%rdx)
592 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x29,0x72,0x7f]
593           vmovapd %xmm22, 2032(%rdx)
594
595 // CHECK: vmovapd %xmm22, 2048(%rdx)
596 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x29,0xb2,0x00,0x08,0x00,0x00]
597           vmovapd %xmm22, 2048(%rdx)
598
599 // CHECK: vmovapd %xmm22, -2048(%rdx)
600 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x29,0x72,0x80]
601           vmovapd %xmm22, -2048(%rdx)
602
603 // CHECK: vmovapd %xmm22, -2064(%rdx)
604 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x29,0xb2,0xf0,0xf7,0xff,0xff]
605           vmovapd %xmm22, -2064(%rdx)
606
607 // CHECK: vmovapd %ymm17, (%rcx)
608 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x29,0x09]
609           vmovapd %ymm17, (%rcx)
610
611 // CHECK: vmovapd %ymm17, (%rcx) {%k6}
612 // CHECK:  encoding: [0x62,0xe1,0xfd,0x2e,0x29,0x09]
613           vmovapd %ymm17, (%rcx) {%k6}
614
615 // CHECK: vmovapd %ymm17, 291(%rax,%r14,8)
616 // CHECK:  encoding: [0x62,0xa1,0xfd,0x28,0x29,0x8c,0xf0,0x23,0x01,0x00,0x00]
617           vmovapd %ymm17, 291(%rax,%r14,8)
618
619 // CHECK: vmovapd %ymm17, 4064(%rdx)
620 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x29,0x4a,0x7f]
621           vmovapd %ymm17, 4064(%rdx)
622
623 // CHECK: vmovapd %ymm17, 4096(%rdx)
624 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x29,0x8a,0x00,0x10,0x00,0x00]
625           vmovapd %ymm17, 4096(%rdx)
626
627 // CHECK: vmovapd %ymm17, -4096(%rdx)
628 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x29,0x4a,0x80]
629           vmovapd %ymm17, -4096(%rdx)
630
631 // CHECK: vmovapd %ymm17, -4128(%rdx)
632 // CHECK:  encoding: [0x62,0xe1,0xfd,0x28,0x29,0x8a,0xe0,0xef,0xff,0xff]
633           vmovapd %ymm17, -4128(%rdx)
634
635 // CHECK: vmovaps %xmm29, (%rcx)
636 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x29,0x29]
637           vmovaps %xmm29, (%rcx)
638
639 // CHECK: vmovaps %xmm29, (%rcx) {%k5}
640 // CHECK:  encoding: [0x62,0x61,0x7c,0x0d,0x29,0x29]
641           vmovaps %xmm29, (%rcx) {%k5}
642
643 // CHECK: vmovaps %xmm29, 291(%rax,%r14,8)
644 // CHECK:  encoding: [0x62,0x21,0x7c,0x08,0x29,0xac,0xf0,0x23,0x01,0x00,0x00]
645           vmovaps %xmm29, 291(%rax,%r14,8)
646
647 // CHECK: vmovaps %xmm29, 2032(%rdx)
648 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x29,0x6a,0x7f]
649           vmovaps %xmm29, 2032(%rdx)
650
651 // CHECK: vmovaps %xmm29, 2048(%rdx)
652 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x29,0xaa,0x00,0x08,0x00,0x00]
653           vmovaps %xmm29, 2048(%rdx)
654
655 // CHECK: vmovaps %xmm29, -2048(%rdx)
656 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x29,0x6a,0x80]
657           vmovaps %xmm29, -2048(%rdx)
658
659 // CHECK: vmovaps %xmm29, -2064(%rdx)
660 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x29,0xaa,0xf0,0xf7,0xff,0xff]
661           vmovaps %xmm29, -2064(%rdx)
662
663 // CHECK: vmovaps %ymm28, (%rcx)
664 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x29,0x21]
665           vmovaps %ymm28, (%rcx)
666
667 // CHECK: vmovaps %ymm28, (%rcx) {%k6}
668 // CHECK:  encoding: [0x62,0x61,0x7c,0x2e,0x29,0x21]
669           vmovaps %ymm28, (%rcx) {%k6}
670
671 // CHECK: vmovaps %ymm28, 291(%rax,%r14,8)
672 // CHECK:  encoding: [0x62,0x21,0x7c,0x28,0x29,0xa4,0xf0,0x23,0x01,0x00,0x00]
673           vmovaps %ymm28, 291(%rax,%r14,8)
674
675 // CHECK: vmovaps %ymm28, 4064(%rdx)
676 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x29,0x62,0x7f]
677           vmovaps %ymm28, 4064(%rdx)
678
679 // CHECK: vmovaps %ymm28, 4096(%rdx)
680 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x29,0xa2,0x00,0x10,0x00,0x00]
681           vmovaps %ymm28, 4096(%rdx)
682
683 // CHECK: vmovaps %ymm28, -4096(%rdx)
684 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x29,0x62,0x80]
685           vmovaps %ymm28, -4096(%rdx)
686
687 // CHECK: vmovaps %ymm28, -4128(%rdx)
688 // CHECK:  encoding: [0x62,0x61,0x7c,0x28,0x29,0xa2,0xe0,0xef,0xff,0xff]
689           vmovaps %ymm28, -4128(%rdx)
690
691 // CHECK: vmovdqa32 %xmm24, (%rcx)
692 // CHECK:  encoding: [0x62,0x61,0x7d,0x08,0x7f,0x01]
693           vmovdqa32 %xmm24, (%rcx)
694
695 // CHECK: vmovdqa32 %xmm24, (%rcx) {%k7}
696 // CHECK:  encoding: [0x62,0x61,0x7d,0x0f,0x7f,0x01]
697           vmovdqa32 %xmm24, (%rcx) {%k7}
698
699 // CHECK: vmovdqa32 %xmm24, 291(%rax,%r14,8)
700 // CHECK:  encoding: [0x62,0x21,0x7d,0x08,0x7f,0x84,0xf0,0x23,0x01,0x00,0x00]
701           vmovdqa32 %xmm24, 291(%rax,%r14,8)
702
703 // CHECK: vmovdqa32 %xmm24, 2032(%rdx)
704 // CHECK:  encoding: [0x62,0x61,0x7d,0x08,0x7f,0x42,0x7f]
705           vmovdqa32 %xmm24, 2032(%rdx)
706
707 // CHECK: vmovdqa32 %xmm24, 2048(%rdx)
708 // CHECK:  encoding: [0x62,0x61,0x7d,0x08,0x7f,0x82,0x00,0x08,0x00,0x00]
709           vmovdqa32 %xmm24, 2048(%rdx)
710
711 // CHECK: vmovdqa32 %xmm24, -2048(%rdx)
712 // CHECK:  encoding: [0x62,0x61,0x7d,0x08,0x7f,0x42,0x80]
713           vmovdqa32 %xmm24, -2048(%rdx)
714
715 // CHECK: vmovdqa32 %xmm24, -2064(%rdx)
716 // CHECK:  encoding: [0x62,0x61,0x7d,0x08,0x7f,0x82,0xf0,0xf7,0xff,0xff]
717           vmovdqa32 %xmm24, -2064(%rdx)
718
719 // CHECK: vmovdqa32 %ymm29, (%rcx)
720 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x7f,0x29]
721           vmovdqa32 %ymm29, (%rcx)
722
723 // CHECK: vmovdqa32 %ymm29, (%rcx) {%k7}
724 // CHECK:  encoding: [0x62,0x61,0x7d,0x2f,0x7f,0x29]
725           vmovdqa32 %ymm29, (%rcx) {%k7}
726
727 // CHECK: vmovdqa32 %ymm29, 291(%rax,%r14,8)
728 // CHECK:  encoding: [0x62,0x21,0x7d,0x28,0x7f,0xac,0xf0,0x23,0x01,0x00,0x00]
729           vmovdqa32 %ymm29, 291(%rax,%r14,8)
730
731 // CHECK: vmovdqa32 %ymm29, 4064(%rdx)
732 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x7f,0x6a,0x7f]
733           vmovdqa32 %ymm29, 4064(%rdx)
734
735 // CHECK: vmovdqa32 %ymm29, 4096(%rdx)
736 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x7f,0xaa,0x00,0x10,0x00,0x00]
737           vmovdqa32 %ymm29, 4096(%rdx)
738
739 // CHECK: vmovdqa32 %ymm29, -4096(%rdx)
740 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x7f,0x6a,0x80]
741           vmovdqa32 %ymm29, -4096(%rdx)
742
743 // CHECK: vmovdqa32 %ymm29, -4128(%rdx)
744 // CHECK:  encoding: [0x62,0x61,0x7d,0x28,0x7f,0xaa,0xe0,0xef,0xff,0xff]
745           vmovdqa32 %ymm29, -4128(%rdx)
746
747 // CHECK: vmovdqa64 %xmm17, (%rcx)
748 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x7f,0x09]
749           vmovdqa64 %xmm17, (%rcx)
750
751 // CHECK: vmovdqa64 %xmm17, (%rcx) {%k7}
752 // CHECK:  encoding: [0x62,0xe1,0xfd,0x0f,0x7f,0x09]
753           vmovdqa64 %xmm17, (%rcx) {%k7}
754
755 // CHECK: vmovdqa64 %xmm17, 291(%rax,%r14,8)
756 // CHECK:  encoding: [0x62,0xa1,0xfd,0x08,0x7f,0x8c,0xf0,0x23,0x01,0x00,0x00]
757           vmovdqa64 %xmm17, 291(%rax,%r14,8)
758
759 // CHECK: vmovdqa64 %xmm17, 2032(%rdx)
760 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x7f,0x4a,0x7f]
761           vmovdqa64 %xmm17, 2032(%rdx)
762
763 // CHECK: vmovdqa64 %xmm17, 2048(%rdx)
764 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x7f,0x8a,0x00,0x08,0x00,0x00]
765           vmovdqa64 %xmm17, 2048(%rdx)
766
767 // CHECK: vmovdqa64 %xmm17, -2048(%rdx)
768 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x7f,0x4a,0x80]
769           vmovdqa64 %xmm17, -2048(%rdx)
770
771 // CHECK: vmovdqa64 %xmm17, -2064(%rdx)
772 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x7f,0x8a,0xf0,0xf7,0xff,0xff]
773           vmovdqa64 %xmm17, -2064(%rdx)
774
775 // CHECK: vmovdqa64 %ymm24, (%rcx)
776 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x7f,0x01]
777           vmovdqa64 %ymm24, (%rcx)
778
779 // CHECK: vmovdqa64 %ymm24, (%rcx) {%k2}
780 // CHECK:  encoding: [0x62,0x61,0xfd,0x2a,0x7f,0x01]
781           vmovdqa64 %ymm24, (%rcx) {%k2}
782
783 // CHECK: vmovdqa64 %ymm24, 291(%rax,%r14,8)
784 // CHECK:  encoding: [0x62,0x21,0xfd,0x28,0x7f,0x84,0xf0,0x23,0x01,0x00,0x00]
785           vmovdqa64 %ymm24, 291(%rax,%r14,8)
786
787 // CHECK: vmovdqa64 %ymm24, 4064(%rdx)
788 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x7f,0x42,0x7f]
789           vmovdqa64 %ymm24, 4064(%rdx)
790
791 // CHECK: vmovdqa64 %ymm24, 4096(%rdx)
792 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x7f,0x82,0x00,0x10,0x00,0x00]
793           vmovdqa64 %ymm24, 4096(%rdx)
794
795 // CHECK: vmovdqa64 %ymm24, -4096(%rdx)
796 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x7f,0x42,0x80]
797           vmovdqa64 %ymm24, -4096(%rdx)
798
799 // CHECK: vmovdqa64 %ymm24, -4128(%rdx)
800 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x7f,0x82,0xe0,0xef,0xff,0xff]
801           vmovdqa64 %ymm24, -4128(%rdx)
802
803 // CHECK: vmovdqu32 %xmm17, (%rcx)
804 // CHECK:  encoding: [0x62,0xe1,0x7e,0x08,0x7f,0x09]
805           vmovdqu32 %xmm17, (%rcx)
806
807 // CHECK: vmovdqu32 %xmm17, (%rcx) {%k4}
808 // CHECK:  encoding: [0x62,0xe1,0x7e,0x0c,0x7f,0x09]
809           vmovdqu32 %xmm17, (%rcx) {%k4}
810
811 // CHECK: vmovdqu32 %xmm17, 291(%rax,%r14,8)
812 // CHECK:  encoding: [0x62,0xa1,0x7e,0x08,0x7f,0x8c,0xf0,0x23,0x01,0x00,0x00]
813           vmovdqu32 %xmm17, 291(%rax,%r14,8)
814
815 // CHECK: vmovdqu32 %xmm17, 2032(%rdx)
816 // CHECK:  encoding: [0x62,0xe1,0x7e,0x08,0x7f,0x4a,0x7f]
817           vmovdqu32 %xmm17, 2032(%rdx)
818
819 // CHECK: vmovdqu32 %xmm17, 2048(%rdx)
820 // CHECK:  encoding: [0x62,0xe1,0x7e,0x08,0x7f,0x8a,0x00,0x08,0x00,0x00]
821           vmovdqu32 %xmm17, 2048(%rdx)
822
823 // CHECK: vmovdqu32 %xmm17, -2048(%rdx)
824 // CHECK:  encoding: [0x62,0xe1,0x7e,0x08,0x7f,0x4a,0x80]
825           vmovdqu32 %xmm17, -2048(%rdx)
826
827 // CHECK: vmovdqu32 %xmm17, -2064(%rdx)
828 // CHECK:  encoding: [0x62,0xe1,0x7e,0x08,0x7f,0x8a,0xf0,0xf7,0xff,0xff]
829           vmovdqu32 %xmm17, -2064(%rdx)
830
831 // CHECK: vmovdqu32 %ymm20, (%rcx)
832 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x7f,0x21]
833           vmovdqu32 %ymm20, (%rcx)
834
835 // CHECK: vmovdqu32 %ymm20, (%rcx) {%k1}
836 // CHECK:  encoding: [0x62,0xe1,0x7e,0x29,0x7f,0x21]
837           vmovdqu32 %ymm20, (%rcx) {%k1}
838
839 // CHECK: vmovdqu32 %ymm20, 291(%rax,%r14,8)
840 // CHECK:  encoding: [0x62,0xa1,0x7e,0x28,0x7f,0xa4,0xf0,0x23,0x01,0x00,0x00]
841           vmovdqu32 %ymm20, 291(%rax,%r14,8)
842
843 // CHECK: vmovdqu32 %ymm20, 4064(%rdx)
844 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x7f,0x62,0x7f]
845           vmovdqu32 %ymm20, 4064(%rdx)
846
847 // CHECK: vmovdqu32 %ymm20, 4096(%rdx)
848 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x7f,0xa2,0x00,0x10,0x00,0x00]
849           vmovdqu32 %ymm20, 4096(%rdx)
850
851 // CHECK: vmovdqu32 %ymm20, -4096(%rdx)
852 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x7f,0x62,0x80]
853           vmovdqu32 %ymm20, -4096(%rdx)
854
855 // CHECK: vmovdqu32 %ymm20, -4128(%rdx)
856 // CHECK:  encoding: [0x62,0xe1,0x7e,0x28,0x7f,0xa2,0xe0,0xef,0xff,0xff]
857           vmovdqu32 %ymm20, -4128(%rdx)
858
859 // CHECK: vmovdqu64 %xmm20, (%rcx)
860 // CHECK:  encoding: [0x62,0xe1,0xfe,0x08,0x7f,0x21]
861           vmovdqu64 %xmm20, (%rcx)
862
863 // CHECK: vmovdqu64 %xmm20, (%rcx) {%k6}
864 // CHECK:  encoding: [0x62,0xe1,0xfe,0x0e,0x7f,0x21]
865           vmovdqu64 %xmm20, (%rcx) {%k6}
866
867 // CHECK: vmovdqu64 %xmm20, 291(%rax,%r14,8)
868 // CHECK:  encoding: [0x62,0xa1,0xfe,0x08,0x7f,0xa4,0xf0,0x23,0x01,0x00,0x00]
869           vmovdqu64 %xmm20, 291(%rax,%r14,8)
870
871 // CHECK: vmovdqu64 %xmm20, 2032(%rdx)
872 // CHECK:  encoding: [0x62,0xe1,0xfe,0x08,0x7f,0x62,0x7f]
873           vmovdqu64 %xmm20, 2032(%rdx)
874
875 // CHECK: vmovdqu64 %xmm20, 2048(%rdx)
876 // CHECK:  encoding: [0x62,0xe1,0xfe,0x08,0x7f,0xa2,0x00,0x08,0x00,0x00]
877           vmovdqu64 %xmm20, 2048(%rdx)
878
879 // CHECK: vmovdqu64 %xmm20, -2048(%rdx)
880 // CHECK:  encoding: [0x62,0xe1,0xfe,0x08,0x7f,0x62,0x80]
881           vmovdqu64 %xmm20, -2048(%rdx)
882
883 // CHECK: vmovdqu64 %xmm20, -2064(%rdx)
884 // CHECK:  encoding: [0x62,0xe1,0xfe,0x08,0x7f,0xa2,0xf0,0xf7,0xff,0xff]
885           vmovdqu64 %xmm20, -2064(%rdx)
886
887 // CHECK: vmovdqu64 %ymm19, (%rcx)
888 // CHECK:  encoding: [0x62,0xe1,0xfe,0x28,0x7f,0x19]
889           vmovdqu64 %ymm19, (%rcx)
890
891 // CHECK: vmovdqu64 %ymm19, (%rcx) {%k7}
892 // CHECK:  encoding: [0x62,0xe1,0xfe,0x2f,0x7f,0x19]
893           vmovdqu64 %ymm19, (%rcx) {%k7}
894
895 // CHECK: vmovdqu64 %ymm19, 291(%rax,%r14,8)
896 // CHECK:  encoding: [0x62,0xa1,0xfe,0x28,0x7f,0x9c,0xf0,0x23,0x01,0x00,0x00]
897           vmovdqu64 %ymm19, 291(%rax,%r14,8)
898
899 // CHECK: vmovdqu64 %ymm19, 4064(%rdx)
900 // CHECK:  encoding: [0x62,0xe1,0xfe,0x28,0x7f,0x5a,0x7f]
901           vmovdqu64 %ymm19, 4064(%rdx)
902
903 // CHECK: vmovdqu64 %ymm19, 4096(%rdx)
904 // CHECK:  encoding: [0x62,0xe1,0xfe,0x28,0x7f,0x9a,0x00,0x10,0x00,0x00]
905           vmovdqu64 %ymm19, 4096(%rdx)
906
907 // CHECK: vmovdqu64 %ymm19, -4096(%rdx)
908 // CHECK:  encoding: [0x62,0xe1,0xfe,0x28,0x7f,0x5a,0x80]
909           vmovdqu64 %ymm19, -4096(%rdx)
910
911 // CHECK: vmovdqu64 %ymm19, -4128(%rdx)
912 // CHECK:  encoding: [0x62,0xe1,0xfe,0x28,0x7f,0x9a,0xe0,0xef,0xff,0xff]
913           vmovdqu64 %ymm19, -4128(%rdx)
914
915 // CHECK: vmovupd %xmm22, (%rcx)
916 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x11,0x31]
917           vmovupd %xmm22, (%rcx)
918
919 // CHECK: vmovupd %xmm22, (%rcx) {%k7}
920 // CHECK:  encoding: [0x62,0xe1,0xfd,0x0f,0x11,0x31]
921           vmovupd %xmm22, (%rcx) {%k7}
922
923 // CHECK: vmovupd %xmm22, 291(%rax,%r14,8)
924 // CHECK:  encoding: [0x62,0xa1,0xfd,0x08,0x11,0xb4,0xf0,0x23,0x01,0x00,0x00]
925           vmovupd %xmm22, 291(%rax,%r14,8)
926
927 // CHECK: vmovupd %xmm22, 2032(%rdx)
928 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x11,0x72,0x7f]
929           vmovupd %xmm22, 2032(%rdx)
930
931 // CHECK: vmovupd %xmm22, 2048(%rdx)
932 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x11,0xb2,0x00,0x08,0x00,0x00]
933           vmovupd %xmm22, 2048(%rdx)
934
935 // CHECK: vmovupd %xmm22, -2048(%rdx)
936 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x11,0x72,0x80]
937           vmovupd %xmm22, -2048(%rdx)
938
939 // CHECK: vmovupd %xmm22, -2064(%rdx)
940 // CHECK:  encoding: [0x62,0xe1,0xfd,0x08,0x11,0xb2,0xf0,0xf7,0xff,0xff]
941           vmovupd %xmm22, -2064(%rdx)
942
943 // CHECK: vmovupd %ymm28, (%rcx)
944 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x11,0x21]
945           vmovupd %ymm28, (%rcx)
946
947 // CHECK: vmovupd %ymm28, (%rcx) {%k1}
948 // CHECK:  encoding: [0x62,0x61,0xfd,0x29,0x11,0x21]
949           vmovupd %ymm28, (%rcx) {%k1}
950
951 // CHECK: vmovupd %ymm28, 291(%rax,%r14,8)
952 // CHECK:  encoding: [0x62,0x21,0xfd,0x28,0x11,0xa4,0xf0,0x23,0x01,0x00,0x00]
953           vmovupd %ymm28, 291(%rax,%r14,8)
954
955 // CHECK: vmovupd %ymm28, 4064(%rdx)
956 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x11,0x62,0x7f]
957           vmovupd %ymm28, 4064(%rdx)
958
959 // CHECK: vmovupd %ymm28, 4096(%rdx)
960 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x11,0xa2,0x00,0x10,0x00,0x00]
961           vmovupd %ymm28, 4096(%rdx)
962
963 // CHECK: vmovupd %ymm28, -4096(%rdx)
964 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x11,0x62,0x80]
965           vmovupd %ymm28, -4096(%rdx)
966
967 // CHECK: vmovupd %ymm28, -4128(%rdx)
968 // CHECK:  encoding: [0x62,0x61,0xfd,0x28,0x11,0xa2,0xe0,0xef,0xff,0xff]
969           vmovupd %ymm28, -4128(%rdx)
970
971 // CHECK: vmovups %xmm26, (%rcx)
972 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x11,0x11]
973           vmovups %xmm26, (%rcx)
974
975 // CHECK: vmovups %xmm26, (%rcx) {%k5}
976 // CHECK:  encoding: [0x62,0x61,0x7c,0x0d,0x11,0x11]
977           vmovups %xmm26, (%rcx) {%k5}
978
979 // CHECK: vmovups %xmm26, 291(%rax,%r14,8)
980 // CHECK:  encoding: [0x62,0x21,0x7c,0x08,0x11,0x94,0xf0,0x23,0x01,0x00,0x00]
981           vmovups %xmm26, 291(%rax,%r14,8)
982
983 // CHECK: vmovups %xmm26, 2032(%rdx)
984 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x11,0x52,0x7f]
985           vmovups %xmm26, 2032(%rdx)
986
987 // CHECK: vmovups %xmm26, 2048(%rdx)
988 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x11,0x92,0x00,0x08,0x00,0x00]
989           vmovups %xmm26, 2048(%rdx)
990
991 // CHECK: vmovups %xmm26, -2048(%rdx)
992 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x11,0x52,0x80]
993           vmovups %xmm26, -2048(%rdx)
994
995 // CHECK: vmovups %xmm26, -2064(%rdx)
996 // CHECK:  encoding: [0x62,0x61,0x7c,0x08,0x11,0x92,0xf0,0xf7,0xff,0xff]
997           vmovups %xmm26, -2064(%rdx)
998
999 // CHECK: vmovups %ymm23, (%rcx)
1000 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x11,0x39]
1001           vmovups %ymm23, (%rcx)
1002
1003 // CHECK: vmovups %ymm23, (%rcx) {%k3}
1004 // CHECK:  encoding: [0x62,0xe1,0x7c,0x2b,0x11,0x39]
1005           vmovups %ymm23, (%rcx) {%k3}
1006
1007 // CHECK: vmovups %ymm23, 291(%rax,%r14,8)
1008 // CHECK:  encoding: [0x62,0xa1,0x7c,0x28,0x11,0xbc,0xf0,0x23,0x01,0x00,0x00]
1009           vmovups %ymm23, 291(%rax,%r14,8)
1010
1011 // CHECK: vmovups %ymm23, 4064(%rdx)
1012 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x11,0x7a,0x7f]
1013           vmovups %ymm23, 4064(%rdx)
1014
1015 // CHECK: vmovups %ymm23, 4096(%rdx)
1016 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x11,0xba,0x00,0x10,0x00,0x00]
1017           vmovups %ymm23, 4096(%rdx)
1018
1019 // CHECK: vmovups %ymm23, -4096(%rdx)
1020 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x11,0x7a,0x80]
1021           vmovups %ymm23, -4096(%rdx)
1022
1023 // CHECK: vmovups %ymm23, -4128(%rdx)
1024 // CHECK:  encoding: [0x62,0xe1,0x7c,0x28,0x11,0xba,0xe0,0xef,0xff,0xff]
1025           vmovups %ymm23, -4128(%rdx)