1// RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=skx  --show-encoding %s | FileCheck %s
2
3// CHECK: vblendmpd %xmm19, %xmm20, %xmm27
4// CHECK:  encoding: [0x62,0x22,0xdd,0x00,0x65,0xdb]
5          vblendmpd %xmm19, %xmm20, %xmm27
6
7// CHECK: vblendmpd %xmm19, %xmm20, %xmm27 {%k7}
8// CHECK:  encoding: [0x62,0x22,0xdd,0x07,0x65,0xdb]
9          vblendmpd %xmm19, %xmm20, %xmm27 {%k7}
10
11// CHECK: vblendmpd %xmm19, %xmm20, %xmm27 {%k7} {z}
12// CHECK:  encoding: [0x62,0x22,0xdd,0x87,0x65,0xdb]
13          vblendmpd %xmm19, %xmm20, %xmm27 {%k7} {z}
14
15// CHECK: vblendmpd (%rcx), %xmm20, %xmm27
16// CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x19]
17          vblendmpd (%rcx), %xmm20, %xmm27
18
19// CHECK: vblendmpd 291(%rax,%r14,8), %xmm20, %xmm27
20// CHECK:  encoding: [0x62,0x22,0xdd,0x00,0x65,0x9c,0xf0,0x23,0x01,0x00,0x00]
21          vblendmpd 291(%rax,%r14,8), %xmm20, %xmm27
22
23// CHECK: vblendmpd (%rcx){1to2}, %xmm20, %xmm27
24// CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x19]
25          vblendmpd (%rcx){1to2}, %xmm20, %xmm27
26
27// CHECK: vblendmpd 2032(%rdx), %xmm20, %xmm27
28// CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x5a,0x7f]
29          vblendmpd 2032(%rdx), %xmm20, %xmm27
30
31// CHECK: vblendmpd 2048(%rdx), %xmm20, %xmm27
32// CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x9a,0x00,0x08,0x00,0x00]
33          vblendmpd 2048(%rdx), %xmm20, %xmm27
34
35// CHECK: vblendmpd -2048(%rdx), %xmm20, %xmm27
36// CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x5a,0x80]
37          vblendmpd -2048(%rdx), %xmm20, %xmm27
38
39// CHECK: vblendmpd -2064(%rdx), %xmm20, %xmm27
40// CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x9a,0xf0,0xf7,0xff,0xff]
41          vblendmpd -2064(%rdx), %xmm20, %xmm27
42
43// CHECK: vblendmpd 1016(%rdx){1to2}, %xmm20, %xmm27
44// CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x5a,0x7f]
45          vblendmpd 1016(%rdx){1to2}, %xmm20, %xmm27
46
47// CHECK: vblendmpd 1024(%rdx){1to2}, %xmm20, %xmm27
48// CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x9a,0x00,0x04,0x00,0x00]
49          vblendmpd 1024(%rdx){1to2}, %xmm20, %xmm27
50
51// CHECK: vblendmpd -1024(%rdx){1to2}, %xmm20, %xmm27
52// CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x5a,0x80]
53          vblendmpd -1024(%rdx){1to2}, %xmm20, %xmm27
54
55// CHECK: vblendmpd -1032(%rdx){1to2}, %xmm20, %xmm27
56// CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x9a,0xf8,0xfb,0xff,0xff]
57          vblendmpd -1032(%rdx){1to2}, %xmm20, %xmm27
58
59// CHECK: vblendmpd %ymm23, %ymm21, %ymm28
60// CHECK:  encoding: [0x62,0x22,0xd5,0x20,0x65,0xe7]
61          vblendmpd %ymm23, %ymm21, %ymm28
62
63// CHECK: vblendmpd %ymm23, %ymm21, %ymm28 {%k3}
64// CHECK:  encoding: [0x62,0x22,0xd5,0x23,0x65,0xe7]
65          vblendmpd %ymm23, %ymm21, %ymm28 {%k3}
66
67// CHECK: vblendmpd %ymm23, %ymm21, %ymm28 {%k3} {z}
68// CHECK:  encoding: [0x62,0x22,0xd5,0xa3,0x65,0xe7]
69          vblendmpd %ymm23, %ymm21, %ymm28 {%k3} {z}
70
71// CHECK: vblendmpd (%rcx), %ymm21, %ymm28
72// CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0x21]
73          vblendmpd (%rcx), %ymm21, %ymm28
74
75// CHECK: vblendmpd 291(%rax,%r14,8), %ymm21, %ymm28
76// CHECK:  encoding: [0x62,0x22,0xd5,0x20,0x65,0xa4,0xf0,0x23,0x01,0x00,0x00]
77          vblendmpd 291(%rax,%r14,8), %ymm21, %ymm28
78
79// CHECK: vblendmpd (%rcx){1to4}, %ymm21, %ymm28
80// CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0x21]
81          vblendmpd (%rcx){1to4}, %ymm21, %ymm28
82
83// CHECK: vblendmpd 4064(%rdx), %ymm21, %ymm28
84// CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0x62,0x7f]
85          vblendmpd 4064(%rdx), %ymm21, %ymm28
86
87// CHECK: vblendmpd 4096(%rdx), %ymm21, %ymm28
88// CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0xa2,0x00,0x10,0x00,0x00]
89          vblendmpd 4096(%rdx), %ymm21, %ymm28
90
91// CHECK: vblendmpd -4096(%rdx), %ymm21, %ymm28
92// CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0x62,0x80]
93          vblendmpd -4096(%rdx), %ymm21, %ymm28
94
95// CHECK: vblendmpd -4128(%rdx), %ymm21, %ymm28
96// CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0xa2,0xe0,0xef,0xff,0xff]
97          vblendmpd -4128(%rdx), %ymm21, %ymm28
98
99// CHECK: vblendmpd 1016(%rdx){1to4}, %ymm21, %ymm28
100// CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0x62,0x7f]
101          vblendmpd 1016(%rdx){1to4}, %ymm21, %ymm28
102
103// CHECK: vblendmpd 1024(%rdx){1to4}, %ymm21, %ymm28
104// CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0xa2,0x00,0x04,0x00,0x00]
105          vblendmpd 1024(%rdx){1to4}, %ymm21, %ymm28
106
107// CHECK: vblendmpd -1024(%rdx){1to4}, %ymm21, %ymm28
108// CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0x62,0x80]
109          vblendmpd -1024(%rdx){1to4}, %ymm21, %ymm28
110
111// CHECK: vblendmpd -1032(%rdx){1to4}, %ymm21, %ymm28
112// CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0xa2,0xf8,0xfb,0xff,0xff]
113          vblendmpd -1032(%rdx){1to4}, %ymm21, %ymm28
114
115// CHECK: vblendmps %xmm20, %xmm20, %xmm24
116// CHECK:  encoding: [0x62,0x22,0x5d,0x00,0x65,0xc4]
117          vblendmps %xmm20, %xmm20, %xmm24
118
119// CHECK: vblendmps %xmm20, %xmm20, %xmm24 {%k1}
120// CHECK:  encoding: [0x62,0x22,0x5d,0x01,0x65,0xc4]
121          vblendmps %xmm20, %xmm20, %xmm24 {%k1}
122
123// CHECK: vblendmps %xmm20, %xmm20, %xmm24 {%k1} {z}
124// CHECK:  encoding: [0x62,0x22,0x5d,0x81,0x65,0xc4]
125          vblendmps %xmm20, %xmm20, %xmm24 {%k1} {z}
126
127// CHECK: vblendmps (%rcx), %xmm20, %xmm24
128// CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x01]
129          vblendmps (%rcx), %xmm20, %xmm24
130
131// CHECK: vblendmps 291(%rax,%r14,8), %xmm20, %xmm24
132// CHECK:  encoding: [0x62,0x22,0x5d,0x00,0x65,0x84,0xf0,0x23,0x01,0x00,0x00]
133          vblendmps 291(%rax,%r14,8), %xmm20, %xmm24
134
135// CHECK: vblendmps (%rcx){1to4}, %xmm20, %xmm24
136// CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x01]
137          vblendmps (%rcx){1to4}, %xmm20, %xmm24
138
139// CHECK: vblendmps 2032(%rdx), %xmm20, %xmm24
140// CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x42,0x7f]
141          vblendmps 2032(%rdx), %xmm20, %xmm24
142
143// CHECK: vblendmps 2048(%rdx), %xmm20, %xmm24
144// CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x82,0x00,0x08,0x00,0x00]
145          vblendmps 2048(%rdx), %xmm20, %xmm24
146
147// CHECK: vblendmps -2048(%rdx), %xmm20, %xmm24
148// CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x42,0x80]
149          vblendmps -2048(%rdx), %xmm20, %xmm24
150
151// CHECK: vblendmps -2064(%rdx), %xmm20, %xmm24
152// CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x82,0xf0,0xf7,0xff,0xff]
153          vblendmps -2064(%rdx), %xmm20, %xmm24
154
155// CHECK: vblendmps 508(%rdx){1to4}, %xmm20, %xmm24
156// CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x42,0x7f]
157          vblendmps 508(%rdx){1to4}, %xmm20, %xmm24
158
159// CHECK: vblendmps 512(%rdx){1to4}, %xmm20, %xmm24
160// CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x82,0x00,0x02,0x00,0x00]
161          vblendmps 512(%rdx){1to4}, %xmm20, %xmm24
162
163// CHECK: vblendmps -512(%rdx){1to4}, %xmm20, %xmm24
164// CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x42,0x80]
165          vblendmps -512(%rdx){1to4}, %xmm20, %xmm24
166
167// CHECK: vblendmps -516(%rdx){1to4}, %xmm20, %xmm24
168// CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x82,0xfc,0xfd,0xff,0xff]
169          vblendmps -516(%rdx){1to4}, %xmm20, %xmm24
170
171// CHECK: vblendmps %ymm24, %ymm23, %ymm17
172// CHECK:  encoding: [0x62,0x82,0x45,0x20,0x65,0xc8]
173          vblendmps %ymm24, %ymm23, %ymm17
174
175// CHECK: vblendmps %ymm24, %ymm23, %ymm17 {%k6}
176// CHECK:  encoding: [0x62,0x82,0x45,0x26,0x65,0xc8]
177          vblendmps %ymm24, %ymm23, %ymm17 {%k6}
178
179// CHECK: vblendmps %ymm24, %ymm23, %ymm17 {%k6} {z}
180// CHECK:  encoding: [0x62,0x82,0x45,0xa6,0x65,0xc8]
181          vblendmps %ymm24, %ymm23, %ymm17 {%k6} {z}
182
183// CHECK: vblendmps (%rcx), %ymm23, %ymm17
184// CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x09]
185          vblendmps (%rcx), %ymm23, %ymm17
186
187// CHECK: vblendmps 291(%rax,%r14,8), %ymm23, %ymm17
188// CHECK:  encoding: [0x62,0xa2,0x45,0x20,0x65,0x8c,0xf0,0x23,0x01,0x00,0x00]
189          vblendmps 291(%rax,%r14,8), %ymm23, %ymm17
190
191// CHECK: vblendmps (%rcx){1to8}, %ymm23, %ymm17
192// CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x09]
193          vblendmps (%rcx){1to8}, %ymm23, %ymm17
194
195// CHECK: vblendmps 4064(%rdx), %ymm23, %ymm17
196// CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x4a,0x7f]
197          vblendmps 4064(%rdx), %ymm23, %ymm17
198
199// CHECK: vblendmps 4096(%rdx), %ymm23, %ymm17
200// CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x8a,0x00,0x10,0x00,0x00]
201          vblendmps 4096(%rdx), %ymm23, %ymm17
202
203// CHECK: vblendmps -4096(%rdx), %ymm23, %ymm17
204// CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x4a,0x80]
205          vblendmps -4096(%rdx), %ymm23, %ymm17
206
207// CHECK: vblendmps -4128(%rdx), %ymm23, %ymm17
208// CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x8a,0xe0,0xef,0xff,0xff]
209          vblendmps -4128(%rdx), %ymm23, %ymm17
210
211// CHECK: vblendmps 508(%rdx){1to8}, %ymm23, %ymm17
212// CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x4a,0x7f]
213          vblendmps 508(%rdx){1to8}, %ymm23, %ymm17
214
215// CHECK: vblendmps 512(%rdx){1to8}, %ymm23, %ymm17
216// CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x8a,0x00,0x02,0x00,0x00]
217          vblendmps 512(%rdx){1to8}, %ymm23, %ymm17
218
219// CHECK: vblendmps -512(%rdx){1to8}, %ymm23, %ymm17
220// CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x4a,0x80]
221          vblendmps -512(%rdx){1to8}, %ymm23, %ymm17
222
223// CHECK: vblendmps -516(%rdx){1to8}, %ymm23, %ymm17
224// CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x8a,0xfc,0xfd,0xff,0xff]
225          vblendmps -516(%rdx){1to8}, %ymm23, %ymm17
226
227// CHECK: vpblendmd %xmm26, %xmm25, %xmm17
228// CHECK:  encoding: [0x62,0x82,0x35,0x00,0x64,0xca]
229          vpblendmd %xmm26, %xmm25, %xmm17
230
231// CHECK: vpblendmd %xmm26, %xmm25, %xmm17 {%k5}
232// CHECK:  encoding: [0x62,0x82,0x35,0x05,0x64,0xca]
233          vpblendmd %xmm26, %xmm25, %xmm17 {%k5}
234
235// CHECK: vpblendmd %xmm26, %xmm25, %xmm17 {%k5} {z}
236// CHECK:  encoding: [0x62,0x82,0x35,0x85,0x64,0xca]
237          vpblendmd %xmm26, %xmm25, %xmm17 {%k5} {z}
238
239// CHECK: vpblendmd (%rcx), %xmm25, %xmm17
240// CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x09]
241          vpblendmd (%rcx), %xmm25, %xmm17
242
243// CHECK: vpblendmd 291(%rax,%r14,8), %xmm25, %xmm17
244// CHECK:  encoding: [0x62,0xa2,0x35,0x00,0x64,0x8c,0xf0,0x23,0x01,0x00,0x00]
245          vpblendmd 291(%rax,%r14,8), %xmm25, %xmm17
246
247// CHECK: vpblendmd (%rcx){1to4}, %xmm25, %xmm17
248// CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x09]
249          vpblendmd (%rcx){1to4}, %xmm25, %xmm17
250
251// CHECK: vpblendmd 2032(%rdx), %xmm25, %xmm17
252// CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x4a,0x7f]
253          vpblendmd 2032(%rdx), %xmm25, %xmm17
254
255// CHECK: vpblendmd 2048(%rdx), %xmm25, %xmm17
256// CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x8a,0x00,0x08,0x00,0x00]
257          vpblendmd 2048(%rdx), %xmm25, %xmm17
258
259// CHECK: vpblendmd -2048(%rdx), %xmm25, %xmm17
260// CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x4a,0x80]
261          vpblendmd -2048(%rdx), %xmm25, %xmm17
262
263// CHECK: vpblendmd -2064(%rdx), %xmm25, %xmm17
264// CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x8a,0xf0,0xf7,0xff,0xff]
265          vpblendmd -2064(%rdx), %xmm25, %xmm17
266
267// CHECK: vpblendmd 508(%rdx){1to4}, %xmm25, %xmm17
268// CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x4a,0x7f]
269          vpblendmd 508(%rdx){1to4}, %xmm25, %xmm17
270
271// CHECK: vpblendmd 512(%rdx){1to4}, %xmm25, %xmm17
272// CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x8a,0x00,0x02,0x00,0x00]
273          vpblendmd 512(%rdx){1to4}, %xmm25, %xmm17
274
275// CHECK: vpblendmd -512(%rdx){1to4}, %xmm25, %xmm17
276// CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x4a,0x80]
277          vpblendmd -512(%rdx){1to4}, %xmm25, %xmm17
278
279// CHECK: vpblendmd -516(%rdx){1to4}, %xmm25, %xmm17
280// CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x8a,0xfc,0xfd,0xff,0xff]
281          vpblendmd -516(%rdx){1to4}, %xmm25, %xmm17
282
283// CHECK: vpblendmd %ymm23, %ymm29, %ymm26
284// CHECK:  encoding: [0x62,0x22,0x15,0x20,0x64,0xd7]
285          vpblendmd %ymm23, %ymm29, %ymm26
286
287// CHECK: vpblendmd %ymm23, %ymm29, %ymm26 {%k7}
288// CHECK:  encoding: [0x62,0x22,0x15,0x27,0x64,0xd7]
289          vpblendmd %ymm23, %ymm29, %ymm26 {%k7}
290
291// CHECK: vpblendmd %ymm23, %ymm29, %ymm26 {%k7} {z}
292// CHECK:  encoding: [0x62,0x22,0x15,0xa7,0x64,0xd7]
293          vpblendmd %ymm23, %ymm29, %ymm26 {%k7} {z}
294
295// CHECK: vpblendmd (%rcx), %ymm29, %ymm26
296// CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x11]
297          vpblendmd (%rcx), %ymm29, %ymm26
298
299// CHECK: vpblendmd 291(%rax,%r14,8), %ymm29, %ymm26
300// CHECK:  encoding: [0x62,0x22,0x15,0x20,0x64,0x94,0xf0,0x23,0x01,0x00,0x00]
301          vpblendmd 291(%rax,%r14,8), %ymm29, %ymm26
302
303// CHECK: vpblendmd (%rcx){1to8}, %ymm29, %ymm26
304// CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x11]
305          vpblendmd (%rcx){1to8}, %ymm29, %ymm26
306
307// CHECK: vpblendmd 4064(%rdx), %ymm29, %ymm26
308// CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x52,0x7f]
309          vpblendmd 4064(%rdx), %ymm29, %ymm26
310
311// CHECK: vpblendmd 4096(%rdx), %ymm29, %ymm26
312// CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x92,0x00,0x10,0x00,0x00]
313          vpblendmd 4096(%rdx), %ymm29, %ymm26
314
315// CHECK: vpblendmd -4096(%rdx), %ymm29, %ymm26
316// CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x52,0x80]
317          vpblendmd -4096(%rdx), %ymm29, %ymm26
318
319// CHECK: vpblendmd -4128(%rdx), %ymm29, %ymm26
320// CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x92,0xe0,0xef,0xff,0xff]
321          vpblendmd -4128(%rdx), %ymm29, %ymm26
322
323// CHECK: vpblendmd 508(%rdx){1to8}, %ymm29, %ymm26
324// CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x52,0x7f]
325          vpblendmd 508(%rdx){1to8}, %ymm29, %ymm26
326
327// CHECK: vpblendmd 512(%rdx){1to8}, %ymm29, %ymm26
328// CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x92,0x00,0x02,0x00,0x00]
329          vpblendmd 512(%rdx){1to8}, %ymm29, %ymm26
330
331// CHECK: vpblendmd -512(%rdx){1to8}, %ymm29, %ymm26
332// CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x52,0x80]
333          vpblendmd -512(%rdx){1to8}, %ymm29, %ymm26
334
335// CHECK: vpblendmd -516(%rdx){1to8}, %ymm29, %ymm26
336// CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x92,0xfc,0xfd,0xff,0xff]
337          vpblendmd -516(%rdx){1to8}, %ymm29, %ymm26
338
339// CHECK: vpblendmq %xmm17, %xmm27, %xmm29
340// CHECK:  encoding: [0x62,0x22,0xa5,0x00,0x64,0xe9]
341          vpblendmq %xmm17, %xmm27, %xmm29
342
343// CHECK: vpblendmq %xmm17, %xmm27, %xmm29 {%k6}
344// CHECK:  encoding: [0x62,0x22,0xa5,0x06,0x64,0xe9]
345          vpblendmq %xmm17, %xmm27, %xmm29 {%k6}
346
347// CHECK: vpblendmq %xmm17, %xmm27, %xmm29 {%k6} {z}
348// CHECK:  encoding: [0x62,0x22,0xa5,0x86,0x64,0xe9]
349          vpblendmq %xmm17, %xmm27, %xmm29 {%k6} {z}
350
351// CHECK: vpblendmq (%rcx), %xmm27, %xmm29
352// CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0x29]
353          vpblendmq (%rcx), %xmm27, %xmm29
354
355// CHECK: vpblendmq 291(%rax,%r14,8), %xmm27, %xmm29
356// CHECK:  encoding: [0x62,0x22,0xa5,0x00,0x64,0xac,0xf0,0x23,0x01,0x00,0x00]
357          vpblendmq 291(%rax,%r14,8), %xmm27, %xmm29
358
359// CHECK: vpblendmq (%rcx){1to2}, %xmm27, %xmm29
360// CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0x29]
361          vpblendmq (%rcx){1to2}, %xmm27, %xmm29
362
363// CHECK: vpblendmq 2032(%rdx), %xmm27, %xmm29
364// CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0x6a,0x7f]
365          vpblendmq 2032(%rdx), %xmm27, %xmm29
366
367// CHECK: vpblendmq 2048(%rdx), %xmm27, %xmm29
368// CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0xaa,0x00,0x08,0x00,0x00]
369          vpblendmq 2048(%rdx), %xmm27, %xmm29
370
371// CHECK: vpblendmq -2048(%rdx), %xmm27, %xmm29
372// CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0x6a,0x80]
373          vpblendmq -2048(%rdx), %xmm27, %xmm29
374
375// CHECK: vpblendmq -2064(%rdx), %xmm27, %xmm29
376// CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0xaa,0xf0,0xf7,0xff,0xff]
377          vpblendmq -2064(%rdx), %xmm27, %xmm29
378
379// CHECK: vpblendmq 1016(%rdx){1to2}, %xmm27, %xmm29
380// CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0x6a,0x7f]
381          vpblendmq 1016(%rdx){1to2}, %xmm27, %xmm29
382
383// CHECK: vpblendmq 1024(%rdx){1to2}, %xmm27, %xmm29
384// CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0xaa,0x00,0x04,0x00,0x00]
385          vpblendmq 1024(%rdx){1to2}, %xmm27, %xmm29
386
387// CHECK: vpblendmq -1024(%rdx){1to2}, %xmm27, %xmm29
388// CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0x6a,0x80]
389          vpblendmq -1024(%rdx){1to2}, %xmm27, %xmm29
390
391// CHECK: vpblendmq -1032(%rdx){1to2}, %xmm27, %xmm29
392// CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0xaa,0xf8,0xfb,0xff,0xff]
393          vpblendmq -1032(%rdx){1to2}, %xmm27, %xmm29
394
395// CHECK: vpblendmq %ymm21, %ymm23, %ymm21
396// CHECK:  encoding: [0x62,0xa2,0xc5,0x20,0x64,0xed]
397          vpblendmq %ymm21, %ymm23, %ymm21
398
399// CHECK: vpblendmq %ymm21, %ymm23, %ymm21 {%k3}
400// CHECK:  encoding: [0x62,0xa2,0xc5,0x23,0x64,0xed]
401          vpblendmq %ymm21, %ymm23, %ymm21 {%k3}
402
403// CHECK: vpblendmq %ymm21, %ymm23, %ymm21 {%k3} {z}
404// CHECK:  encoding: [0x62,0xa2,0xc5,0xa3,0x64,0xed]
405          vpblendmq %ymm21, %ymm23, %ymm21 {%k3} {z}
406
407// CHECK: vpblendmq (%rcx), %ymm23, %ymm21
408// CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0x29]
409          vpblendmq (%rcx), %ymm23, %ymm21
410
411// CHECK: vpblendmq 291(%rax,%r14,8), %ymm23, %ymm21
412// CHECK:  encoding: [0x62,0xa2,0xc5,0x20,0x64,0xac,0xf0,0x23,0x01,0x00,0x00]
413          vpblendmq 291(%rax,%r14,8), %ymm23, %ymm21
414
415// CHECK: vpblendmq (%rcx){1to4}, %ymm23, %ymm21
416// CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0x29]
417          vpblendmq (%rcx){1to4}, %ymm23, %ymm21
418
419// CHECK: vpblendmq 4064(%rdx), %ymm23, %ymm21
420// CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0x6a,0x7f]
421          vpblendmq 4064(%rdx), %ymm23, %ymm21
422
423// CHECK: vpblendmq 4096(%rdx), %ymm23, %ymm21
424// CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0xaa,0x00,0x10,0x00,0x00]
425          vpblendmq 4096(%rdx), %ymm23, %ymm21
426
427// CHECK: vpblendmq -4096(%rdx), %ymm23, %ymm21
428// CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0x6a,0x80]
429          vpblendmq -4096(%rdx), %ymm23, %ymm21
430
431// CHECK: vpblendmq -4128(%rdx), %ymm23, %ymm21
432// CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0xaa,0xe0,0xef,0xff,0xff]
433          vpblendmq -4128(%rdx), %ymm23, %ymm21
434
435// CHECK: vpblendmq 1016(%rdx){1to4}, %ymm23, %ymm21
436// CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0x6a,0x7f]
437          vpblendmq 1016(%rdx){1to4}, %ymm23, %ymm21
438
439// CHECK: vpblendmq 1024(%rdx){1to4}, %ymm23, %ymm21
440// CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0xaa,0x00,0x04,0x00,0x00]
441          vpblendmq 1024(%rdx){1to4}, %ymm23, %ymm21
442
443// CHECK: vpblendmq -1024(%rdx){1to4}, %ymm23, %ymm21
444// CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0x6a,0x80]
445          vpblendmq -1024(%rdx){1to4}, %ymm23, %ymm21
446
447// CHECK: vpblendmq -1032(%rdx){1to4}, %ymm23, %ymm21
448// CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0xaa,0xf8,0xfb,0xff,0xff]
449          vpblendmq -1032(%rdx){1to4}, %ymm23, %ymm21
450