1 // RUN
: llvm-mc
-triple x86_64-unknown-unknown
--show-encoding
%s | FileCheck
%s
3 // CHECK
: vpblendmb
%zmm25
, %zmm18
, %zmm17
4 // CHECK
: encoding
: [0x62,0x82,0x6d,0x40,0x66,0xc9]
5 vpblendmb
%zmm25
, %zmm18
, %zmm17
7 // CHECK
: vpblendmb
%zmm25
, %zmm18
, %zmm17
{%k5
}
8 // CHECK
: encoding
: [0x62,0x82,0x6d,0x45,0x66,0xc9]
9 vpblendmb
%zmm25
, %zmm18
, %zmm17
{%k5
}
11 // CHECK
: vpblendmb
%zmm25
, %zmm18
, %zmm17
{%k5
} {z
}
12 // CHECK
: encoding
: [0x62,0x82,0x6d,0xc5,0x66,0xc9]
13 vpblendmb
%zmm25
, %zmm18
, %zmm17
{%k5
} {z
}
15 // CHECK
: vpblendmb
%zmm25
, %zmm18
, %zmm17
{%k5
} {z
}
16 // CHECK
: encoding
: [0x62,0x82,0x6d,0xc5,0x66,0xc9]
17 vpblendmb
%zmm25
, %zmm18
, %zmm17
{z
} {%k5
}
19 // CHECK
: vpblendmb
(%rcx
), %zmm18
, %zmm17
20 // CHECK
: encoding
: [0x62,0xe2,0x6d,0x40,0x66,0x09]
21 vpblendmb
(%rcx
), %zmm18
, %zmm17
23 // CHECK
: vpblendmb
291(%rax
,%r14,8), %zmm18
, %zmm17
24 // CHECK
: encoding
: [0x62,0xa2,0x6d,0x40,0x66,0x8c,0xf0,0x23,0x01,0x00,0x00]
25 vpblendmb
291(%rax
,%r14,8), %zmm18
, %zmm17
27 // CHECK
: vpblendmb
8128(%rdx
), %zmm18
, %zmm17
28 // CHECK
: encoding
: [0x62,0xe2,0x6d,0x40,0x66,0x4a,0x7f]
29 vpblendmb
8128(%rdx
), %zmm18
, %zmm17
31 // CHECK
: vpblendmb
8192(%rdx
), %zmm18
, %zmm17
32 // CHECK
: encoding
: [0x62,0xe2,0x6d,0x40,0x66,0x8a,0x00,0x20,0x00,0x00]
33 vpblendmb
8192(%rdx
), %zmm18
, %zmm17
35 // CHECK
: vpblendmb
-8192(%rdx
), %zmm18
, %zmm17
36 // CHECK
: encoding
: [0x62,0xe2,0x6d,0x40,0x66,0x4a,0x80]
37 vpblendmb
-8192(%rdx
), %zmm18
, %zmm17
39 // CHECK
: vpblendmb
-8256(%rdx
), %zmm18
, %zmm17
40 // CHECK
: encoding
: [0x62,0xe2,0x6d,0x40,0x66,0x8a,0xc0,0xdf,0xff,0xff]
41 vpblendmb
-8256(%rdx
), %zmm18
, %zmm17
43 // CHECK
: vpblendmw
%zmm17
, %zmm20
, %zmm26
44 // CHECK
: encoding
: [0x62,0x22,0xdd,0x40,0x66,0xd1]
45 vpblendmw
%zmm17
, %zmm20
, %zmm26
47 // CHECK
: vpblendmw
%zmm17
, %zmm20
, %zmm26
{%k7
}
48 // CHECK
: encoding
: [0x62,0x22,0xdd,0x47,0x66,0xd1]
49 vpblendmw
%zmm17
, %zmm20
, %zmm26
{%k7
}
51 // CHECK
: vpblendmw
%zmm17
, %zmm20
, %zmm26
{%k7
} {z
}
52 // CHECK
: encoding
: [0x62,0x22,0xdd,0xc7,0x66,0xd1]
53 vpblendmw
%zmm17
, %zmm20
, %zmm26
{%k7
} {z
}
55 // CHECK
: vpblendmw
(%rcx
), %zmm20
, %zmm26
56 // CHECK
: encoding
: [0x62,0x62,0xdd,0x40,0x66,0x11]
57 vpblendmw
(%rcx
), %zmm20
, %zmm26
59 // CHECK
: vpblendmw
291(%rax
,%r14,8), %zmm20
, %zmm26
60 // CHECK
: encoding
: [0x62,0x22,0xdd,0x40,0x66,0x94,0xf0,0x23,0x01,0x00,0x00]
61 vpblendmw
291(%rax
,%r14,8), %zmm20
, %zmm26
63 // CHECK
: vpblendmw
8128(%rdx
), %zmm20
, %zmm26
64 // CHECK
: encoding
: [0x62,0x62,0xdd,0x40,0x66,0x52,0x7f]
65 vpblendmw
8128(%rdx
), %zmm20
, %zmm26
67 // CHECK
: vpblendmw
8192(%rdx
), %zmm20
, %zmm26
68 // CHECK
: encoding
: [0x62,0x62,0xdd,0x40,0x66,0x92,0x00,0x20,0x00,0x00]
69 vpblendmw
8192(%rdx
), %zmm20
, %zmm26
71 // CHECK
: vpblendmw
-8192(%rdx
), %zmm20
, %zmm26
72 // CHECK
: encoding
: [0x62,0x62,0xdd,0x40,0x66,0x52,0x80]
73 vpblendmw
-8192(%rdx
), %zmm20
, %zmm26
75 // CHECK
: vpblendmw
-8256(%rdx
), %zmm20
, %zmm26
76 // CHECK
: encoding
: [0x62,0x62,0xdd,0x40,0x66,0x92,0xc0,0xdf,0xff,0xff]
77 vpblendmw
-8256(%rdx
), %zmm20
, %zmm26
79 // CHECK
: vptestmb
%zmm19
, %zmm17
, %k5
80 // CHECK
: encoding
: [0x62,0xb2,0x75,0x40,0x26,0xeb]
81 vptestmb
%zmm19
, %zmm17
, %k5
83 // CHECK
: vptestmb
%zmm19
, %zmm17
, %k5
{%k3
}
84 // CHECK
: encoding
: [0x62,0xb2,0x75,0x43,0x26,0xeb]
85 vptestmb
%zmm19
, %zmm17
, %k5
{%k3
}
87 // CHECK
: vptestmb
(%rcx
), %zmm17
, %k5
88 // CHECK
: encoding
: [0x62,0xf2,0x75,0x40,0x26,0x29]
89 vptestmb
(%rcx
), %zmm17
, %k5
91 // CHECK
: vptestmb
291(%rax
,%r14,8), %zmm17
, %k5
92 // CHECK
: encoding
: [0x62,0xb2,0x75,0x40,0x26,0xac,0xf0,0x23,0x01,0x00,0x00]
93 vptestmb
291(%rax
,%r14,8), %zmm17
, %k5
95 // CHECK
: vptestmb
8128(%rdx
), %zmm17
, %k5
96 // CHECK
: encoding
: [0x62,0xf2,0x75,0x40,0x26,0x6a,0x7f]
97 vptestmb
8128(%rdx
), %zmm17
, %k5
99 // CHECK
: vptestmb
8192(%rdx
), %zmm17
, %k5
100 // CHECK
: encoding
: [0x62,0xf2,0x75,0x40,0x26,0xaa,0x00,0x20,0x00,0x00]
101 vptestmb
8192(%rdx
), %zmm17
, %k5
103 // CHECK
: vptestmb
-8192(%rdx
), %zmm17
, %k5
104 // CHECK
: encoding
: [0x62,0xf2,0x75,0x40,0x26,0x6a,0x80]
105 vptestmb
-8192(%rdx
), %zmm17
, %k5
107 // CHECK
: vptestmb
-8256(%rdx
), %zmm17
, %k5
108 // CHECK
: encoding
: [0x62,0xf2,0x75,0x40,0x26,0xaa,0xc0,0xdf,0xff,0xff]
109 vptestmb
-8256(%rdx
), %zmm17
, %k5
111 // CHECK
: vptestmw
%zmm19
, %zmm29
, %k4
112 // CHECK
: encoding
: [0x62,0xb2,0x95,0x40,0x26,0xe3]
113 vptestmw
%zmm19
, %zmm29
, %k4
115 // CHECK
: vptestmw
%zmm19
, %zmm29
, %k4
{%k2
}
116 // CHECK
: encoding
: [0x62,0xb2,0x95,0x42,0x26,0xe3]
117 vptestmw
%zmm19
, %zmm29
, %k4
{%k2
}
119 // CHECK
: vptestmw
(%rcx
), %zmm29
, %k4
120 // CHECK
: encoding
: [0x62,0xf2,0x95,0x40,0x26,0x21]
121 vptestmw
(%rcx
), %zmm29
, %k4
123 // CHECK
: vptestmw
291(%rax
,%r14,8), %zmm29
, %k4
124 // CHECK
: encoding
: [0x62,0xb2,0x95,0x40,0x26,0xa4,0xf0,0x23,0x01,0x00,0x00]
125 vptestmw
291(%rax
,%r14,8), %zmm29
, %k4
127 // CHECK
: vptestmw
8128(%rdx
), %zmm29
, %k4
128 // CHECK
: encoding
: [0x62,0xf2,0x95,0x40,0x26,0x62,0x7f]
129 vptestmw
8128(%rdx
), %zmm29
, %k4
131 // CHECK
: vptestmw
8192(%rdx
), %zmm29
, %k4
132 // CHECK
: encoding
: [0x62,0xf2,0x95,0x40,0x26,0xa2,0x00,0x20,0x00,0x00]
133 vptestmw
8192(%rdx
), %zmm29
, %k4
135 // CHECK
: vptestmw
-8192(%rdx
), %zmm29
, %k4
136 // CHECK
: encoding
: [0x62,0xf2,0x95,0x40,0x26,0x62,0x80]
137 vptestmw
-8192(%rdx
), %zmm29
, %k4
139 // CHECK
: vptestmw
-8256(%rdx
), %zmm29
, %k4
140 // CHECK
: encoding
: [0x62,0xf2,0x95,0x40,0x26,0xa2,0xc0,0xdf,0xff,0xff]
141 vptestmw
-8256(%rdx
), %zmm29
, %k4
143 // CHECK
: vptestnmb
%zmm23
, %zmm24
, %k2
144 // CHECK
: encoding
: [0x62,0xb2,0x3e,0x40,0x26,0xd7]
145 vptestnmb
%zmm23
, %zmm24
, %k2
147 // CHECK
: vptestnmb
%zmm23
, %zmm24
, %k2
{%k7
}
148 // CHECK
: encoding
: [0x62,0xb2,0x3e,0x47,0x26,0xd7]
149 vptestnmb
%zmm23
, %zmm24
, %k2
{%k7
}
151 // CHECK
: vptestnmb
(%rcx
), %zmm24
, %k2
152 // CHECK
: encoding
: [0x62,0xf2,0x3e,0x40,0x26,0x11]
153 vptestnmb
(%rcx
), %zmm24
, %k2
155 // CHECK
: vptestnmb
291(%rax
,%r14,8), %zmm24
, %k2
156 // CHECK
: encoding
: [0x62,0xb2,0x3e,0x40,0x26,0x94,0xf0,0x23,0x01,0x00,0x00]
157 vptestnmb
291(%rax
,%r14,8), %zmm24
, %k2
159 // CHECK
: vptestnmb
8128(%rdx
), %zmm24
, %k2
160 // CHECK
: encoding
: [0x62,0xf2,0x3e,0x40,0x26,0x52,0x7f]
161 vptestnmb
8128(%rdx
), %zmm24
, %k2
163 // CHECK
: vptestnmb
8192(%rdx
), %zmm24
, %k2
164 // CHECK
: encoding
: [0x62,0xf2,0x3e,0x40,0x26,0x92,0x00,0x20,0x00,0x00]
165 vptestnmb
8192(%rdx
), %zmm24
, %k2
167 // CHECK
: vptestnmb
-8192(%rdx
), %zmm24
, %k2
168 // CHECK
: encoding
: [0x62,0xf2,0x3e,0x40,0x26,0x52,0x80]
169 vptestnmb
-8192(%rdx
), %zmm24
, %k2
171 // CHECK
: vptestnmb
-8256(%rdx
), %zmm24
, %k2
172 // CHECK
: encoding
: [0x62,0xf2,0x3e,0x40,0x26,0x92,0xc0,0xdf,0xff,0xff]
173 vptestnmb
-8256(%rdx
), %zmm24
, %k2
175 // CHECK
: vptestnmw
%zmm27
, %zmm18
, %k4
176 // CHECK
: encoding
: [0x62,0x92,0xee,0x40,0x26,0xe3]
177 vptestnmw
%zmm27
, %zmm18
, %k4
179 // CHECK
: vptestnmw
%zmm27
, %zmm18
, %k4
{%k5
}
180 // CHECK
: encoding
: [0x62,0x92,0xee,0x45,0x26,0xe3]
181 vptestnmw
%zmm27
, %zmm18
, %k4
{%k5
}
183 // CHECK
: vptestnmw
(%rcx
), %zmm18
, %k4
184 // CHECK
: encoding
: [0x62,0xf2,0xee,0x40,0x26,0x21]
185 vptestnmw
(%rcx
), %zmm18
, %k4
187 // CHECK
: vptestnmw
291(%rax
,%r14,8), %zmm18
, %k4
188 // CHECK
: encoding
: [0x62,0xb2,0xee,0x40,0x26,0xa4,0xf0,0x23,0x01,0x00,0x00]
189 vptestnmw
291(%rax
,%r14,8), %zmm18
, %k4
191 // CHECK
: vptestnmw
8128(%rdx
), %zmm18
, %k4
192 // CHECK
: encoding
: [0x62,0xf2,0xee,0x40,0x26,0x62,0x7f]
193 vptestnmw
8128(%rdx
), %zmm18
, %k4
195 // CHECK
: vptestnmw
8192(%rdx
), %zmm18
, %k4
196 // CHECK
: encoding
: [0x62,0xf2,0xee,0x40,0x26,0xa2,0x00,0x20,0x00,0x00]
197 vptestnmw
8192(%rdx
), %zmm18
, %k4
199 // CHECK
: vptestnmw
-8192(%rdx
), %zmm18
, %k4
200 // CHECK
: encoding
: [0x62,0xf2,0xee,0x40,0x26,0x62,0x80]
201 vptestnmw
-8192(%rdx
), %zmm18
, %k4
203 // CHECK
: vptestnmw
-8256(%rdx
), %zmm18
, %k4
204 // CHECK
: encoding
: [0x62,0xf2,0xee,0x40,0x26,0xa2,0xc0,0xdf,0xff,0xff]
205 vptestnmw
-8256(%rdx
), %zmm18
, %k4
207 // CHECK
: vptestnmb
%zmm19
, %zmm27
, %k3
208 // CHECK
: encoding
: [0x62,0xb2,0x26,0x40,0x26,0xdb]
209 vptestnmb
%zmm19
, %zmm27
, %k3
211 // CHECK
: vptestnmb
%zmm19
, %zmm27
, %k3
{%k2
}
212 // CHECK
: encoding
: [0x62,0xb2,0x26,0x42,0x26,0xdb]
213 vptestnmb
%zmm19
, %zmm27
, %k3
{%k2
}
215 // CHECK
: vptestnmb
(%rcx
), %zmm27
, %k3
216 // CHECK
: encoding
: [0x62,0xf2,0x26,0x40,0x26,0x19]
217 vptestnmb
(%rcx
), %zmm27
, %k3
219 // CHECK
: vptestnmb
4660(%rax
,%r14,8), %zmm27
, %k3
220 // CHECK
: encoding
: [0x62,0xb2,0x26,0x40,0x26,0x9c,0xf0,0x34,0x12,0x00,0x00]
221 vptestnmb
4660(%rax
,%r14,8), %zmm27
, %k3
223 // CHECK
: vptestnmb
8128(%rdx
), %zmm27
, %k3
224 // CHECK
: encoding
: [0x62,0xf2,0x26,0x40,0x26,0x5a,0x7f]
225 vptestnmb
8128(%rdx
), %zmm27
, %k3
227 // CHECK
: vptestnmb
8192(%rdx
), %zmm27
, %k3
228 // CHECK
: encoding
: [0x62,0xf2,0x26,0x40,0x26,0x9a,0x00,0x20,0x00,0x00]
229 vptestnmb
8192(%rdx
), %zmm27
, %k3
231 // CHECK
: vptestnmb
-8192(%rdx
), %zmm27
, %k3
232 // CHECK
: encoding
: [0x62,0xf2,0x26,0x40,0x26,0x5a,0x80]
233 vptestnmb
-8192(%rdx
), %zmm27
, %k3
235 // CHECK
: vptestnmb
-8256(%rdx
), %zmm27
, %k3
236 // CHECK
: encoding
: [0x62,0xf2,0x26,0x40,0x26,0x9a,0xc0,0xdf,0xff,0xff]
237 vptestnmb
-8256(%rdx
), %zmm27
, %k3
239 // CHECK
: vptestnmw
%zmm21
, %zmm17
, %k2
240 // CHECK
: encoding
: [0x62,0xb2,0xf6,0x40,0x26,0xd5]
241 vptestnmw
%zmm21
, %zmm17
, %k2
243 // CHECK
: vptestnmw
%zmm21
, %zmm17
, %k2
{%k4
}
244 // CHECK
: encoding
: [0x62,0xb2,0xf6,0x44,0x26,0xd5]
245 vptestnmw
%zmm21
, %zmm17
, %k2
{%k4
}
247 // CHECK
: vptestnmw
(%rcx
), %zmm17
, %k2
248 // CHECK
: encoding
: [0x62,0xf2,0xf6,0x40,0x26,0x11]
249 vptestnmw
(%rcx
), %zmm17
, %k2
251 // CHECK
: vptestnmw
4660(%rax
,%r14,8), %zmm17
, %k2
252 // CHECK
: encoding
: [0x62,0xb2,0xf6,0x40,0x26,0x94,0xf0,0x34,0x12,0x00,0x00]
253 vptestnmw
4660(%rax
,%r14,8), %zmm17
, %k2
255 // CHECK
: vptestnmw
8128(%rdx
), %zmm17
, %k2
256 // CHECK
: encoding
: [0x62,0xf2,0xf6,0x40,0x26,0x52,0x7f]
257 vptestnmw
8128(%rdx
), %zmm17
, %k2
259 // CHECK
: vptestnmw
8192(%rdx
), %zmm17
, %k2
260 // CHECK
: encoding
: [0x62,0xf2,0xf6,0x40,0x26,0x92,0x00,0x20,0x00,0x00]
261 vptestnmw
8192(%rdx
), %zmm17
, %k2
263 // CHECK
: vptestnmw
-8192(%rdx
), %zmm17
, %k2
264 // CHECK
: encoding
: [0x62,0xf2,0xf6,0x40,0x26,0x52,0x80]
265 vptestnmw
-8192(%rdx
), %zmm17
, %k2
267 // CHECK
: vptestnmw
-8256(%rdx
), %zmm17
, %k2
268 // CHECK
: encoding
: [0x62,0xf2,0xf6,0x40,0x26,0x92,0xc0,0xdf,0xff,0xff]
269 vptestnmw
-8256(%rdx
), %zmm17
, %k2
271 // CHECK
: vpmovb2m
%zmm28
, %k5
272 // CHECK
: encoding
: [0x62,0x92,0x7e,0x48,0x29,0xec]
275 // CHECK
: vpmovw2m
%zmm30
, %k3
276 // CHECK
: encoding
: [0x62,0x92,0xfe,0x48,0x29,0xde]
279 // CHECK
: vpmovm2b
%k3
, %zmm18
280 // CHECK
: encoding
: [0x62,0xe2,0x7e,0x48,0x28,0xd3]
283 // CHECK
: vpmovm2w
%k5
, %zmm24
284 // CHECK
: encoding
: [0x62,0x62,0xfe,0x48,0x28,0xc5]