Commit | Line | Data |
---|---|---|
ad692897 L |
1 | /* PREFIX_EVEX_0F10 */ |
2 | { | |
97e6786a | 3 | { "vmovupX", { XM, EXEvexXNoBcst }, PREFIX_OPCODE }, |
36cc073e | 4 | { VEX_W_TABLE (EVEX_W_0F10_P_1) }, |
97e6786a | 5 | { "vmovupX", { XM, EXEvexXNoBcst }, PREFIX_OPCODE }, |
36cc073e | 6 | { VEX_W_TABLE (EVEX_W_0F10_P_3) }, |
ad692897 L |
7 | }, |
8 | /* PREFIX_EVEX_0F11 */ | |
9 | { | |
97e6786a | 10 | { "vmovupX", { EXxS, XM }, PREFIX_OPCODE }, |
36cc073e | 11 | { VEX_W_TABLE (EVEX_W_0F11_P_1) }, |
97e6786a | 12 | { "vmovupX", { EXxS, XM }, PREFIX_OPCODE }, |
36cc073e | 13 | { VEX_W_TABLE (EVEX_W_0F11_P_3) }, |
ad692897 L |
14 | }, |
15 | /* PREFIX_EVEX_0F12 */ | |
16 | { | |
17 | { MOD_TABLE (MOD_EVEX_0F12_PREFIX_0) }, | |
18 | { VEX_W_TABLE (EVEX_W_0F12_P_1) }, | |
97e6786a | 19 | { MOD_TABLE (MOD_EVEX_0F12_PREFIX_2) }, |
ad692897 L |
20 | { VEX_W_TABLE (EVEX_W_0F12_P_3) }, |
21 | }, | |
ad692897 L |
22 | /* PREFIX_EVEX_0F16 */ |
23 | { | |
24 | { MOD_TABLE (MOD_EVEX_0F16_PREFIX_0) }, | |
25 | { VEX_W_TABLE (EVEX_W_0F16_P_1) }, | |
97e6786a | 26 | { MOD_TABLE (MOD_EVEX_0F16_PREFIX_2) }, |
ad692897 L |
27 | }, |
28 | /* PREFIX_EVEX_0F2A */ | |
29 | { | |
30 | { Bad_Opcode }, | |
b24d668c | 31 | { "vcvtsi2ss{%LQ|}", { XMScalar, VexScalar, EXxEVexR, Edq }, 0 }, |
ad692897 L |
32 | { Bad_Opcode }, |
33 | { VEX_W_TABLE (EVEX_W_0F2A_P_3) }, | |
34 | }, | |
ad692897 L |
35 | /* PREFIX_EVEX_0F51 */ |
36 | { | |
97e6786a | 37 | { "vsqrtpX", { XM, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 | 38 | { VEX_W_TABLE (EVEX_W_0F51_P_1) }, |
97e6786a | 39 | { "vsqrtpX", { XM, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 L |
40 | { VEX_W_TABLE (EVEX_W_0F51_P_3) }, |
41 | }, | |
ad692897 L |
42 | /* PREFIX_EVEX_0F58 */ |
43 | { | |
97e6786a | 44 | { "vaddpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 | 45 | { VEX_W_TABLE (EVEX_W_0F58_P_1) }, |
97e6786a | 46 | { "vaddpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 L |
47 | { VEX_W_TABLE (EVEX_W_0F58_P_3) }, |
48 | }, | |
49 | /* PREFIX_EVEX_0F59 */ | |
50 | { | |
97e6786a | 51 | { "vmulpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 | 52 | { VEX_W_TABLE (EVEX_W_0F59_P_1) }, |
97e6786a | 53 | { "vmulpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 L |
54 | { VEX_W_TABLE (EVEX_W_0F59_P_3) }, |
55 | }, | |
56 | /* PREFIX_EVEX_0F5A */ | |
57 | { | |
58 | { VEX_W_TABLE (EVEX_W_0F5A_P_0) }, | |
59 | { VEX_W_TABLE (EVEX_W_0F5A_P_1) }, | |
60 | { VEX_W_TABLE (EVEX_W_0F5A_P_2) }, | |
61 | { VEX_W_TABLE (EVEX_W_0F5A_P_3) }, | |
62 | }, | |
63 | /* PREFIX_EVEX_0F5B */ | |
64 | { | |
65 | { VEX_W_TABLE (EVEX_W_0F5B_P_0) }, | |
66 | { VEX_W_TABLE (EVEX_W_0F5B_P_1) }, | |
67 | { VEX_W_TABLE (EVEX_W_0F5B_P_2) }, | |
68 | }, | |
69 | /* PREFIX_EVEX_0F5C */ | |
70 | { | |
97e6786a | 71 | { "vsubpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 | 72 | { VEX_W_TABLE (EVEX_W_0F5C_P_1) }, |
97e6786a | 73 | { "vsubpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 L |
74 | { VEX_W_TABLE (EVEX_W_0F5C_P_3) }, |
75 | }, | |
76 | /* PREFIX_EVEX_0F5D */ | |
77 | { | |
97e6786a | 78 | { "vminpX", { XM, Vex, EXx, EXxEVexS }, PREFIX_OPCODE }, |
ad692897 | 79 | { VEX_W_TABLE (EVEX_W_0F5D_P_1) }, |
97e6786a | 80 | { "vminpX", { XM, Vex, EXx, EXxEVexS }, PREFIX_OPCODE }, |
ad692897 L |
81 | { VEX_W_TABLE (EVEX_W_0F5D_P_3) }, |
82 | }, | |
83 | /* PREFIX_EVEX_0F5E */ | |
84 | { | |
97e6786a | 85 | { "vdivpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 | 86 | { VEX_W_TABLE (EVEX_W_0F5E_P_1) }, |
97e6786a | 87 | { "vdivpX", { XM, Vex, EXx, EXxEVexR }, PREFIX_OPCODE }, |
ad692897 L |
88 | { VEX_W_TABLE (EVEX_W_0F5E_P_3) }, |
89 | }, | |
90 | /* PREFIX_EVEX_0F5F */ | |
91 | { | |
97e6786a | 92 | { "vmaxpX", { XM, Vex, EXx, EXxEVexS }, PREFIX_OPCODE }, |
ad692897 | 93 | { VEX_W_TABLE (EVEX_W_0F5F_P_1) }, |
97e6786a | 94 | { "vmaxpX", { XM, Vex, EXx, EXxEVexS }, PREFIX_OPCODE }, |
ad692897 L |
95 | { VEX_W_TABLE (EVEX_W_0F5F_P_3) }, |
96 | }, | |
ad692897 L |
97 | /* PREFIX_EVEX_0F64 */ |
98 | { | |
99 | { Bad_Opcode }, | |
100 | { Bad_Opcode }, | |
101 | { "vpcmpgtb", { XMask, Vex, EXx }, 0 }, | |
102 | }, | |
103 | /* PREFIX_EVEX_0F65 */ | |
104 | { | |
105 | { Bad_Opcode }, | |
106 | { Bad_Opcode }, | |
107 | { "vpcmpgtw", { XMask, Vex, EXx }, 0 }, | |
108 | }, | |
109 | /* PREFIX_EVEX_0F66 */ | |
110 | { | |
111 | { Bad_Opcode }, | |
112 | { Bad_Opcode }, | |
113 | { VEX_W_TABLE (EVEX_W_0F66_P_2) }, | |
114 | }, | |
ad692897 L |
115 | /* PREFIX_EVEX_0F6E */ |
116 | { | |
117 | { Bad_Opcode }, | |
118 | { Bad_Opcode }, | |
119 | { EVEX_LEN_TABLE (EVEX_LEN_0F6E_P_2) }, | |
120 | }, | |
121 | /* PREFIX_EVEX_0F6F */ | |
122 | { | |
123 | { Bad_Opcode }, | |
124 | { VEX_W_TABLE (EVEX_W_0F6F_P_1) }, | |
125 | { VEX_W_TABLE (EVEX_W_0F6F_P_2) }, | |
126 | { VEX_W_TABLE (EVEX_W_0F6F_P_3) }, | |
127 | }, | |
128 | /* PREFIX_EVEX_0F70 */ | |
129 | { | |
130 | { Bad_Opcode }, | |
131 | { "vpshufhw", { XM, EXx, Ib }, 0 }, | |
132 | { VEX_W_TABLE (EVEX_W_0F70_P_2) }, | |
133 | { "vpshuflw", { XM, EXx, Ib }, 0 }, | |
134 | }, | |
135 | /* PREFIX_EVEX_0F71_REG_2 */ | |
136 | { | |
137 | { Bad_Opcode }, | |
138 | { Bad_Opcode }, | |
139 | { "vpsrlw", { Vex, EXx, Ib }, 0 }, | |
140 | }, | |
141 | /* PREFIX_EVEX_0F71_REG_4 */ | |
142 | { | |
143 | { Bad_Opcode }, | |
144 | { Bad_Opcode }, | |
145 | { "vpsraw", { Vex, EXx, Ib }, 0 }, | |
146 | }, | |
147 | /* PREFIX_EVEX_0F71_REG_6 */ | |
148 | { | |
149 | { Bad_Opcode }, | |
150 | { Bad_Opcode }, | |
151 | { "vpsllw", { Vex, EXx, Ib }, 0 }, | |
152 | }, | |
153 | /* PREFIX_EVEX_0F72_REG_0 */ | |
154 | { | |
155 | { Bad_Opcode }, | |
156 | { Bad_Opcode }, | |
492a76aa | 157 | { "vpror%DQ", { Vex, EXx, Ib }, 0 }, |
ad692897 L |
158 | }, |
159 | /* PREFIX_EVEX_0F72_REG_1 */ | |
160 | { | |
161 | { Bad_Opcode }, | |
162 | { Bad_Opcode }, | |
492a76aa | 163 | { "vprol%DQ", { Vex, EXx, Ib }, 0 }, |
ad692897 L |
164 | }, |
165 | /* PREFIX_EVEX_0F72_REG_2 */ | |
166 | { | |
167 | { Bad_Opcode }, | |
168 | { Bad_Opcode }, | |
169 | { VEX_W_TABLE (EVEX_W_0F72_R_2_P_2) }, | |
170 | }, | |
171 | /* PREFIX_EVEX_0F72_REG_4 */ | |
172 | { | |
173 | { Bad_Opcode }, | |
174 | { Bad_Opcode }, | |
492a76aa | 175 | { "vpsra%DQ", { Vex, EXx, Ib }, 0 }, |
ad692897 L |
176 | }, |
177 | /* PREFIX_EVEX_0F72_REG_6 */ | |
178 | { | |
179 | { Bad_Opcode }, | |
180 | { Bad_Opcode }, | |
181 | { VEX_W_TABLE (EVEX_W_0F72_R_6_P_2) }, | |
182 | }, | |
183 | /* PREFIX_EVEX_0F73_REG_2 */ | |
184 | { | |
185 | { Bad_Opcode }, | |
186 | { Bad_Opcode }, | |
187 | { VEX_W_TABLE (EVEX_W_0F73_R_2_P_2) }, | |
188 | }, | |
189 | /* PREFIX_EVEX_0F73_REG_3 */ | |
190 | { | |
191 | { Bad_Opcode }, | |
192 | { Bad_Opcode }, | |
193 | { "vpsrldq", { Vex, EXx, Ib }, 0 }, | |
194 | }, | |
195 | /* PREFIX_EVEX_0F73_REG_6 */ | |
196 | { | |
197 | { Bad_Opcode }, | |
198 | { Bad_Opcode }, | |
199 | { VEX_W_TABLE (EVEX_W_0F73_R_6_P_2) }, | |
200 | }, | |
201 | /* PREFIX_EVEX_0F73_REG_7 */ | |
202 | { | |
203 | { Bad_Opcode }, | |
204 | { Bad_Opcode }, | |
205 | { "vpslldq", { Vex, EXx, Ib }, 0 }, | |
206 | }, | |
207 | /* PREFIX_EVEX_0F74 */ | |
208 | { | |
209 | { Bad_Opcode }, | |
210 | { Bad_Opcode }, | |
211 | { "vpcmpeqb", { XMask, Vex, EXx }, 0 }, | |
212 | }, | |
213 | /* PREFIX_EVEX_0F75 */ | |
214 | { | |
215 | { Bad_Opcode }, | |
216 | { Bad_Opcode }, | |
217 | { "vpcmpeqw", { XMask, Vex, EXx }, 0 }, | |
218 | }, | |
219 | /* PREFIX_EVEX_0F76 */ | |
220 | { | |
221 | { Bad_Opcode }, | |
222 | { Bad_Opcode }, | |
223 | { VEX_W_TABLE (EVEX_W_0F76_P_2) }, | |
224 | }, | |
225 | /* PREFIX_EVEX_0F78 */ | |
226 | { | |
227 | { VEX_W_TABLE (EVEX_W_0F78_P_0) }, | |
228 | { "vcvttss2usi", { Gdq, EXxmm_md, EXxEVexS }, 0 }, | |
229 | { VEX_W_TABLE (EVEX_W_0F78_P_2) }, | |
230 | { "vcvttsd2usi", { Gdq, EXxmm_mq, EXxEVexS }, 0 }, | |
231 | }, | |
232 | /* PREFIX_EVEX_0F79 */ | |
233 | { | |
234 | { VEX_W_TABLE (EVEX_W_0F79_P_0) }, | |
235 | { "vcvtss2usi", { Gdq, EXxmm_md, EXxEVexR }, 0 }, | |
236 | { VEX_W_TABLE (EVEX_W_0F79_P_2) }, | |
237 | { "vcvtsd2usi", { Gdq, EXxmm_mq, EXxEVexR }, 0 }, | |
238 | }, | |
239 | /* PREFIX_EVEX_0F7A */ | |
240 | { | |
241 | { Bad_Opcode }, | |
242 | { VEX_W_TABLE (EVEX_W_0F7A_P_1) }, | |
243 | { VEX_W_TABLE (EVEX_W_0F7A_P_2) }, | |
244 | { VEX_W_TABLE (EVEX_W_0F7A_P_3) }, | |
245 | }, | |
246 | /* PREFIX_EVEX_0F7B */ | |
247 | { | |
248 | { Bad_Opcode }, | |
b24d668c | 249 | { "vcvtusi2ss{%LQ|}", { XMScalar, VexScalar, EXxEVexR, Edq }, 0 }, |
ad692897 L |
250 | { VEX_W_TABLE (EVEX_W_0F7B_P_2) }, |
251 | { VEX_W_TABLE (EVEX_W_0F7B_P_3) }, | |
252 | }, | |
253 | /* PREFIX_EVEX_0F7E */ | |
254 | { | |
255 | { Bad_Opcode }, | |
256 | { EVEX_LEN_TABLE (EVEX_LEN_0F7E_P_1) }, | |
257 | { EVEX_LEN_TABLE (EVEX_LEN_0F7E_P_2) }, | |
258 | }, | |
259 | /* PREFIX_EVEX_0F7F */ | |
260 | { | |
261 | { Bad_Opcode }, | |
262 | { VEX_W_TABLE (EVEX_W_0F7F_P_1) }, | |
263 | { VEX_W_TABLE (EVEX_W_0F7F_P_2) }, | |
264 | { VEX_W_TABLE (EVEX_W_0F7F_P_3) }, | |
265 | }, | |
266 | /* PREFIX_EVEX_0FC2 */ | |
267 | { | |
c4de7606 | 268 | { "vcmppX", { XMask, Vex, EXx, EXxEVexS, CMP }, PREFIX_OPCODE }, |
ad692897 | 269 | { VEX_W_TABLE (EVEX_W_0FC2_P_1) }, |
c4de7606 | 270 | { "vcmppX", { XMask, Vex, EXx, EXxEVexS, CMP }, PREFIX_OPCODE }, |
ad692897 L |
271 | { VEX_W_TABLE (EVEX_W_0FC2_P_3) }, |
272 | }, | |
273 | /* PREFIX_EVEX_0FC4 */ | |
274 | { | |
275 | { Bad_Opcode }, | |
276 | { Bad_Opcode }, | |
e74d9fa9 | 277 | { EVEX_LEN_TABLE (EVEX_LEN_0FC4_P_2) }, |
ad692897 L |
278 | }, |
279 | /* PREFIX_EVEX_0FC5 */ | |
280 | { | |
281 | { Bad_Opcode }, | |
282 | { Bad_Opcode }, | |
e74d9fa9 | 283 | { EVEX_LEN_TABLE (EVEX_LEN_0FC5_P_2) }, |
ad692897 | 284 | }, |
ad692897 L |
285 | /* PREFIX_EVEX_0FD6 */ |
286 | { | |
287 | { Bad_Opcode }, | |
288 | { Bad_Opcode }, | |
289 | { EVEX_LEN_TABLE (EVEX_LEN_0FD6_P_2) }, | |
290 | }, | |
ad692897 L |
291 | /* PREFIX_EVEX_0FDB */ |
292 | { | |
293 | { Bad_Opcode }, | |
294 | { Bad_Opcode }, | |
492a76aa | 295 | { "vpand%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 296 | }, |
ad692897 L |
297 | /* PREFIX_EVEX_0FDF */ |
298 | { | |
299 | { Bad_Opcode }, | |
300 | { Bad_Opcode }, | |
492a76aa | 301 | { "vpandn%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 302 | }, |
ad692897 L |
303 | /* PREFIX_EVEX_0FE2 */ |
304 | { | |
305 | { Bad_Opcode }, | |
306 | { Bad_Opcode }, | |
492a76aa | 307 | { "vpsra%DQ", { XM, Vex, EXxmm }, 0 }, |
ad692897 | 308 | }, |
ad692897 L |
309 | /* PREFIX_EVEX_0FE6 */ |
310 | { | |
311 | { Bad_Opcode }, | |
312 | { VEX_W_TABLE (EVEX_W_0FE6_P_1) }, | |
313 | { VEX_W_TABLE (EVEX_W_0FE6_P_2) }, | |
314 | { VEX_W_TABLE (EVEX_W_0FE6_P_3) }, | |
315 | }, | |
316 | /* PREFIX_EVEX_0FE7 */ | |
317 | { | |
318 | { Bad_Opcode }, | |
319 | { Bad_Opcode }, | |
320 | { VEX_W_TABLE (EVEX_W_0FE7_P_2) }, | |
321 | }, | |
ad692897 L |
322 | /* PREFIX_EVEX_0FEB */ |
323 | { | |
324 | { Bad_Opcode }, | |
325 | { Bad_Opcode }, | |
492a76aa | 326 | { "vpor%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 327 | }, |
ad692897 L |
328 | /* PREFIX_EVEX_0FEF */ |
329 | { | |
330 | { Bad_Opcode }, | |
331 | { Bad_Opcode }, | |
492a76aa | 332 | { "vpxor%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 333 | }, |
ad692897 L |
334 | /* PREFIX_EVEX_0F380D */ |
335 | { | |
336 | { Bad_Opcode }, | |
337 | { Bad_Opcode }, | |
338 | { VEX_W_TABLE (EVEX_W_0F380D_P_2) }, | |
339 | }, | |
340 | /* PREFIX_EVEX_0F3810 */ | |
341 | { | |
342 | { Bad_Opcode }, | |
343 | { VEX_W_TABLE (EVEX_W_0F3810_P_1) }, | |
344 | { VEX_W_TABLE (EVEX_W_0F3810_P_2) }, | |
345 | }, | |
346 | /* PREFIX_EVEX_0F3811 */ | |
347 | { | |
348 | { Bad_Opcode }, | |
349 | { VEX_W_TABLE (EVEX_W_0F3811_P_1) }, | |
350 | { VEX_W_TABLE (EVEX_W_0F3811_P_2) }, | |
351 | }, | |
352 | /* PREFIX_EVEX_0F3812 */ | |
353 | { | |
354 | { Bad_Opcode }, | |
355 | { VEX_W_TABLE (EVEX_W_0F3812_P_1) }, | |
356 | { VEX_W_TABLE (EVEX_W_0F3812_P_2) }, | |
357 | }, | |
358 | /* PREFIX_EVEX_0F3813 */ | |
359 | { | |
360 | { Bad_Opcode }, | |
361 | { VEX_W_TABLE (EVEX_W_0F3813_P_1) }, | |
362 | { VEX_W_TABLE (EVEX_W_0F3813_P_2) }, | |
363 | }, | |
364 | /* PREFIX_EVEX_0F3814 */ | |
365 | { | |
366 | { Bad_Opcode }, | |
367 | { VEX_W_TABLE (EVEX_W_0F3814_P_1) }, | |
492a76aa | 368 | { "vprorv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
369 | }, |
370 | /* PREFIX_EVEX_0F3815 */ | |
371 | { | |
372 | { Bad_Opcode }, | |
373 | { VEX_W_TABLE (EVEX_W_0F3815_P_1) }, | |
492a76aa | 374 | { "vprolv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
375 | }, |
376 | /* PREFIX_EVEX_0F3816 */ | |
377 | { | |
378 | { Bad_Opcode }, | |
379 | { Bad_Opcode }, | |
3a57774c | 380 | { EVEX_LEN_TABLE (EVEX_LEN_0F3816_P_2) }, |
ad692897 | 381 | }, |
ad692897 L |
382 | /* PREFIX_EVEX_0F3819 */ |
383 | { | |
384 | { Bad_Opcode }, | |
385 | { Bad_Opcode }, | |
386 | { VEX_W_TABLE (EVEX_W_0F3819_P_2) }, | |
387 | }, | |
388 | /* PREFIX_EVEX_0F381A */ | |
389 | { | |
390 | { Bad_Opcode }, | |
391 | { Bad_Opcode }, | |
392 | { VEX_W_TABLE (EVEX_W_0F381A_P_2) }, | |
393 | }, | |
394 | /* PREFIX_EVEX_0F381B */ | |
395 | { | |
396 | { Bad_Opcode }, | |
397 | { Bad_Opcode }, | |
398 | { VEX_W_TABLE (EVEX_W_0F381B_P_2) }, | |
399 | }, | |
ad692897 L |
400 | /* PREFIX_EVEX_0F381E */ |
401 | { | |
402 | { Bad_Opcode }, | |
403 | { Bad_Opcode }, | |
404 | { VEX_W_TABLE (EVEX_W_0F381E_P_2) }, | |
405 | }, | |
406 | /* PREFIX_EVEX_0F381F */ | |
407 | { | |
408 | { Bad_Opcode }, | |
409 | { Bad_Opcode }, | |
410 | { VEX_W_TABLE (EVEX_W_0F381F_P_2) }, | |
411 | }, | |
412 | /* PREFIX_EVEX_0F3820 */ | |
413 | { | |
414 | { Bad_Opcode }, | |
415 | { VEX_W_TABLE (EVEX_W_0F3820_P_1) }, | |
416 | { "vpmovsxbw", { XM, EXxmmq }, 0 }, | |
417 | }, | |
418 | /* PREFIX_EVEX_0F3821 */ | |
419 | { | |
420 | { Bad_Opcode }, | |
421 | { VEX_W_TABLE (EVEX_W_0F3821_P_1) }, | |
422 | { "vpmovsxbd", { XM, EXxmmqd }, 0 }, | |
423 | }, | |
424 | /* PREFIX_EVEX_0F3822 */ | |
425 | { | |
426 | { Bad_Opcode }, | |
427 | { VEX_W_TABLE (EVEX_W_0F3822_P_1) }, | |
428 | { "vpmovsxbq", { XM, EXxmmdw }, 0 }, | |
429 | }, | |
430 | /* PREFIX_EVEX_0F3823 */ | |
431 | { | |
432 | { Bad_Opcode }, | |
433 | { VEX_W_TABLE (EVEX_W_0F3823_P_1) }, | |
434 | { "vpmovsxwd", { XM, EXxmmq }, 0 }, | |
435 | }, | |
436 | /* PREFIX_EVEX_0F3824 */ | |
437 | { | |
438 | { Bad_Opcode }, | |
439 | { VEX_W_TABLE (EVEX_W_0F3824_P_1) }, | |
440 | { "vpmovsxwq", { XM, EXxmmqd }, 0 }, | |
441 | }, | |
442 | /* PREFIX_EVEX_0F3825 */ | |
443 | { | |
444 | { Bad_Opcode }, | |
445 | { VEX_W_TABLE (EVEX_W_0F3825_P_1) }, | |
446 | { VEX_W_TABLE (EVEX_W_0F3825_P_2) }, | |
447 | }, | |
448 | /* PREFIX_EVEX_0F3826 */ | |
449 | { | |
450 | { Bad_Opcode }, | |
931452b6 JB |
451 | { "vptestnm%BW", { XMask, Vex, EXx }, 0 }, |
452 | { "vptestm%BW", { XMask, Vex, EXx }, 0 }, | |
ad692897 L |
453 | }, |
454 | /* PREFIX_EVEX_0F3827 */ | |
455 | { | |
456 | { Bad_Opcode }, | |
492a76aa JB |
457 | { "vptestnm%DQ", { XMask, Vex, EXx }, 0 }, |
458 | { "vptestm%DQ", { XMask, Vex, EXx }, 0 }, | |
ad692897 L |
459 | }, |
460 | /* PREFIX_EVEX_0F3828 */ | |
461 | { | |
462 | { Bad_Opcode }, | |
931452b6 | 463 | { "vpmovm2%BW", { XM, MaskR }, 0 }, |
ad692897 L |
464 | { VEX_W_TABLE (EVEX_W_0F3828_P_2) }, |
465 | }, | |
466 | /* PREFIX_EVEX_0F3829 */ | |
467 | { | |
468 | { Bad_Opcode }, | |
931452b6 | 469 | { "vpmov%BW2m", { XMask, EXx }, 0 }, |
ad692897 L |
470 | { VEX_W_TABLE (EVEX_W_0F3829_P_2) }, |
471 | }, | |
472 | /* PREFIX_EVEX_0F382A */ | |
473 | { | |
474 | { Bad_Opcode }, | |
475 | { VEX_W_TABLE (EVEX_W_0F382A_P_1) }, | |
476 | { VEX_W_TABLE (EVEX_W_0F382A_P_2) }, | |
477 | }, | |
ad692897 L |
478 | /* PREFIX_EVEX_0F382C */ |
479 | { | |
480 | { Bad_Opcode }, | |
481 | { Bad_Opcode }, | |
482 | { "vscalefp%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, | |
483 | }, | |
484 | /* PREFIX_EVEX_0F382D */ | |
485 | { | |
486 | { Bad_Opcode }, | |
487 | { Bad_Opcode }, | |
4102be5c | 488 | { "vscalefs%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexR }, 0 }, |
ad692897 L |
489 | }, |
490 | /* PREFIX_EVEX_0F3830 */ | |
491 | { | |
492 | { Bad_Opcode }, | |
493 | { VEX_W_TABLE (EVEX_W_0F3830_P_1) }, | |
494 | { "vpmovzxbw", { XM, EXxmmq }, 0 }, | |
495 | }, | |
496 | /* PREFIX_EVEX_0F3831 */ | |
497 | { | |
498 | { Bad_Opcode }, | |
499 | { VEX_W_TABLE (EVEX_W_0F3831_P_1) }, | |
500 | { "vpmovzxbd", { XM, EXxmmqd }, 0 }, | |
501 | }, | |
502 | /* PREFIX_EVEX_0F3832 */ | |
503 | { | |
504 | { Bad_Opcode }, | |
505 | { VEX_W_TABLE (EVEX_W_0F3832_P_1) }, | |
506 | { "vpmovzxbq", { XM, EXxmmdw }, 0 }, | |
507 | }, | |
508 | /* PREFIX_EVEX_0F3833 */ | |
509 | { | |
510 | { Bad_Opcode }, | |
511 | { VEX_W_TABLE (EVEX_W_0F3833_P_1) }, | |
512 | { "vpmovzxwd", { XM, EXxmmq }, 0 }, | |
513 | }, | |
514 | /* PREFIX_EVEX_0F3834 */ | |
515 | { | |
516 | { Bad_Opcode }, | |
517 | { VEX_W_TABLE (EVEX_W_0F3834_P_1) }, | |
518 | { "vpmovzxwq", { XM, EXxmmqd }, 0 }, | |
519 | }, | |
520 | /* PREFIX_EVEX_0F3835 */ | |
521 | { | |
522 | { Bad_Opcode }, | |
523 | { VEX_W_TABLE (EVEX_W_0F3835_P_1) }, | |
524 | { VEX_W_TABLE (EVEX_W_0F3835_P_2) }, | |
525 | }, | |
526 | /* PREFIX_EVEX_0F3836 */ | |
527 | { | |
528 | { Bad_Opcode }, | |
529 | { Bad_Opcode }, | |
3a57774c | 530 | { EVEX_LEN_TABLE (EVEX_LEN_0F3836_P_2) }, |
ad692897 L |
531 | }, |
532 | /* PREFIX_EVEX_0F3837 */ | |
533 | { | |
534 | { Bad_Opcode }, | |
535 | { Bad_Opcode }, | |
536 | { VEX_W_TABLE (EVEX_W_0F3837_P_2) }, | |
537 | }, | |
538 | /* PREFIX_EVEX_0F3838 */ | |
539 | { | |
540 | { Bad_Opcode }, | |
492a76aa | 541 | { "vpmovm2%DQ", { XM, MaskR }, 0 }, |
ad692897 L |
542 | { "vpminsb", { XM, Vex, EXx }, 0 }, |
543 | }, | |
544 | /* PREFIX_EVEX_0F3839 */ | |
545 | { | |
546 | { Bad_Opcode }, | |
492a76aa JB |
547 | { "vpmov%DQ2m", { XMask, EXx }, 0 }, |
548 | { "vpmins%DQ", { XM, Vex, EXx }, 0 }, | |
ad692897 L |
549 | }, |
550 | /* PREFIX_EVEX_0F383A */ | |
551 | { | |
552 | { Bad_Opcode }, | |
553 | { VEX_W_TABLE (EVEX_W_0F383A_P_1) }, | |
554 | { "vpminuw", { XM, Vex, EXx }, 0 }, | |
555 | }, | |
556 | /* PREFIX_EVEX_0F383B */ | |
557 | { | |
558 | { Bad_Opcode }, | |
559 | { Bad_Opcode }, | |
492a76aa | 560 | { "vpminu%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 561 | }, |
ad692897 L |
562 | /* PREFIX_EVEX_0F383D */ |
563 | { | |
564 | { Bad_Opcode }, | |
565 | { Bad_Opcode }, | |
492a76aa | 566 | { "vpmaxs%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 567 | }, |
ad692897 L |
568 | /* PREFIX_EVEX_0F383F */ |
569 | { | |
570 | { Bad_Opcode }, | |
571 | { Bad_Opcode }, | |
492a76aa | 572 | { "vpmaxu%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
573 | }, |
574 | /* PREFIX_EVEX_0F3840 */ | |
575 | { | |
576 | { Bad_Opcode }, | |
577 | { Bad_Opcode }, | |
492a76aa | 578 | { "vpmull%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
579 | }, |
580 | /* PREFIX_EVEX_0F3842 */ | |
581 | { | |
582 | { Bad_Opcode }, | |
583 | { Bad_Opcode }, | |
584 | { "vgetexpp%XW", { XM, EXx, EXxEVexS }, 0 }, | |
585 | }, | |
586 | /* PREFIX_EVEX_0F3843 */ | |
587 | { | |
588 | { Bad_Opcode }, | |
589 | { Bad_Opcode }, | |
4102be5c | 590 | { "vgetexps%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS }, 0 }, |
ad692897 L |
591 | }, |
592 | /* PREFIX_EVEX_0F3844 */ | |
593 | { | |
594 | { Bad_Opcode }, | |
595 | { Bad_Opcode }, | |
492a76aa | 596 | { "vplzcnt%DQ", { XM, EXx }, 0 }, |
ad692897 L |
597 | }, |
598 | /* PREFIX_EVEX_0F3845 */ | |
599 | { | |
600 | { Bad_Opcode }, | |
601 | { Bad_Opcode }, | |
492a76aa | 602 | { "vpsrlv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
603 | }, |
604 | /* PREFIX_EVEX_0F3846 */ | |
605 | { | |
606 | { Bad_Opcode }, | |
607 | { Bad_Opcode }, | |
492a76aa | 608 | { "vpsrav%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
609 | }, |
610 | /* PREFIX_EVEX_0F3847 */ | |
611 | { | |
612 | { Bad_Opcode }, | |
613 | { Bad_Opcode }, | |
492a76aa | 614 | { "vpsllv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
615 | }, |
616 | /* PREFIX_EVEX_0F384C */ | |
617 | { | |
618 | { Bad_Opcode }, | |
619 | { Bad_Opcode }, | |
620 | { "vrcp14p%XW", { XM, EXx }, 0 }, | |
621 | }, | |
622 | /* PREFIX_EVEX_0F384D */ | |
623 | { | |
624 | { Bad_Opcode }, | |
625 | { Bad_Opcode }, | |
4102be5c | 626 | { "vrcp14s%XW", { XMScalar, VexScalar, EXVexWdqScalar }, 0 }, |
ad692897 L |
627 | }, |
628 | /* PREFIX_EVEX_0F384E */ | |
629 | { | |
630 | { Bad_Opcode }, | |
631 | { Bad_Opcode }, | |
632 | { "vrsqrt14p%XW", { XM, EXx }, 0 }, | |
633 | }, | |
634 | /* PREFIX_EVEX_0F384F */ | |
635 | { | |
636 | { Bad_Opcode }, | |
637 | { Bad_Opcode }, | |
4102be5c | 638 | { "vrsqrt14s%XW", { XMScalar, VexScalar, EXVexWdqScalar }, 0 }, |
ad692897 L |
639 | }, |
640 | /* PREFIX_EVEX_0F3850 */ | |
641 | { | |
642 | { Bad_Opcode }, | |
643 | { Bad_Opcode }, | |
644 | { "vpdpbusd", { XM, Vex, EXx }, 0 }, | |
645 | }, | |
646 | /* PREFIX_EVEX_0F3851 */ | |
647 | { | |
648 | { Bad_Opcode }, | |
649 | { Bad_Opcode }, | |
650 | { "vpdpbusds", { XM, Vex, EXx }, 0 }, | |
651 | }, | |
652 | /* PREFIX_EVEX_0F3852 */ | |
653 | { | |
654 | { Bad_Opcode }, | |
655 | { VEX_W_TABLE (EVEX_W_0F3852_P_1) }, | |
656 | { "vpdpwssd", { XM, Vex, EXx }, 0 }, | |
657 | { "vp4dpwssd", { XM, Vex, EXxmm }, 0 }, | |
658 | }, | |
659 | /* PREFIX_EVEX_0F3853 */ | |
660 | { | |
661 | { Bad_Opcode }, | |
662 | { Bad_Opcode }, | |
663 | { "vpdpwssds", { XM, Vex, EXx }, 0 }, | |
664 | { "vp4dpwssds", { XM, Vex, EXxmm }, 0 }, | |
665 | }, | |
666 | /* PREFIX_EVEX_0F3854 */ | |
667 | { | |
668 | { Bad_Opcode }, | |
669 | { Bad_Opcode }, | |
931452b6 | 670 | { "vpopcnt%BW", { XM, EXx }, 0 }, |
ad692897 L |
671 | }, |
672 | /* PREFIX_EVEX_0F3855 */ | |
673 | { | |
674 | { Bad_Opcode }, | |
675 | { Bad_Opcode }, | |
492a76aa | 676 | { "vpopcnt%DQ", { XM, EXx }, 0 }, |
ad692897 | 677 | }, |
ad692897 L |
678 | /* PREFIX_EVEX_0F3859 */ |
679 | { | |
680 | { Bad_Opcode }, | |
681 | { Bad_Opcode }, | |
682 | { VEX_W_TABLE (EVEX_W_0F3859_P_2) }, | |
683 | }, | |
684 | /* PREFIX_EVEX_0F385A */ | |
685 | { | |
686 | { Bad_Opcode }, | |
687 | { Bad_Opcode }, | |
688 | { VEX_W_TABLE (EVEX_W_0F385A_P_2) }, | |
689 | }, | |
690 | /* PREFIX_EVEX_0F385B */ | |
691 | { | |
692 | { Bad_Opcode }, | |
693 | { Bad_Opcode }, | |
694 | { VEX_W_TABLE (EVEX_W_0F385B_P_2) }, | |
695 | }, | |
696 | /* PREFIX_EVEX_0F3862 */ | |
697 | { | |
698 | { Bad_Opcode }, | |
699 | { Bad_Opcode }, | |
4726e9a4 | 700 | { "vpexpand%BW", { XM, EXbwUnit }, 0 }, |
ad692897 L |
701 | }, |
702 | /* PREFIX_EVEX_0F3863 */ | |
703 | { | |
704 | { Bad_Opcode }, | |
705 | { Bad_Opcode }, | |
4726e9a4 | 706 | { "vpcompress%BW", { EXbwUnit, XM }, 0 }, |
ad692897 L |
707 | }, |
708 | /* PREFIX_EVEX_0F3864 */ | |
709 | { | |
710 | { Bad_Opcode }, | |
711 | { Bad_Opcode }, | |
492a76aa | 712 | { "vpblendm%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
713 | }, |
714 | /* PREFIX_EVEX_0F3865 */ | |
715 | { | |
716 | { Bad_Opcode }, | |
717 | { Bad_Opcode }, | |
718 | { "vblendmp%XW", { XM, Vex, EXx }, 0 }, | |
719 | }, | |
720 | /* PREFIX_EVEX_0F3866 */ | |
721 | { | |
722 | { Bad_Opcode }, | |
723 | { Bad_Opcode }, | |
931452b6 | 724 | { "vpblendm%BW", { XM, Vex, EXx }, 0 }, |
ad692897 L |
725 | }, |
726 | /* PREFIX_EVEX_0F3868 */ | |
727 | { | |
728 | { Bad_Opcode }, | |
729 | { Bad_Opcode }, | |
730 | { Bad_Opcode }, | |
492a76aa | 731 | { "vp2intersect%DQ", { XMask, Vex, EXx, EXxEVexS }, 0 }, |
ad692897 L |
732 | }, |
733 | /* PREFIX_EVEX_0F3870 */ | |
734 | { | |
735 | { Bad_Opcode }, | |
736 | { Bad_Opcode }, | |
737 | { VEX_W_TABLE (EVEX_W_0F3870_P_2) }, | |
738 | }, | |
739 | /* PREFIX_EVEX_0F3871 */ | |
740 | { | |
741 | { Bad_Opcode }, | |
742 | { Bad_Opcode }, | |
492a76aa | 743 | { "vpshldv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
744 | }, |
745 | /* PREFIX_EVEX_0F3872 */ | |
746 | { | |
747 | { Bad_Opcode }, | |
748 | { VEX_W_TABLE (EVEX_W_0F3872_P_1) }, | |
749 | { VEX_W_TABLE (EVEX_W_0F3872_P_2) }, | |
750 | { VEX_W_TABLE (EVEX_W_0F3872_P_3) }, | |
751 | }, | |
752 | /* PREFIX_EVEX_0F3873 */ | |
753 | { | |
754 | { Bad_Opcode }, | |
755 | { Bad_Opcode }, | |
492a76aa | 756 | { "vpshrdv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
757 | }, |
758 | /* PREFIX_EVEX_0F3875 */ | |
759 | { | |
760 | { Bad_Opcode }, | |
761 | { Bad_Opcode }, | |
931452b6 | 762 | { "vpermi2%BW", { XM, Vex, EXx }, 0 }, |
ad692897 L |
763 | }, |
764 | /* PREFIX_EVEX_0F3876 */ | |
765 | { | |
766 | { Bad_Opcode }, | |
767 | { Bad_Opcode }, | |
492a76aa | 768 | { "vpermi2%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
769 | }, |
770 | /* PREFIX_EVEX_0F3877 */ | |
771 | { | |
772 | { Bad_Opcode }, | |
773 | { Bad_Opcode }, | |
774 | { "vpermi2p%XW", { XM, Vex, EXx }, 0 }, | |
775 | }, | |
ad692897 L |
776 | /* PREFIX_EVEX_0F387A */ |
777 | { | |
778 | { Bad_Opcode }, | |
779 | { Bad_Opcode }, | |
780 | { VEX_W_TABLE (EVEX_W_0F387A_P_2) }, | |
781 | }, | |
782 | /* PREFIX_EVEX_0F387B */ | |
783 | { | |
784 | { Bad_Opcode }, | |
785 | { Bad_Opcode }, | |
786 | { VEX_W_TABLE (EVEX_W_0F387B_P_2) }, | |
787 | }, | |
788 | /* PREFIX_EVEX_0F387C */ | |
789 | { | |
790 | { Bad_Opcode }, | |
791 | { Bad_Opcode }, | |
792 | { "vpbroadcastK", { XM, Rdq }, 0 }, | |
793 | }, | |
794 | /* PREFIX_EVEX_0F387D */ | |
795 | { | |
796 | { Bad_Opcode }, | |
797 | { Bad_Opcode }, | |
931452b6 | 798 | { "vpermt2%BW", { XM, Vex, EXx }, 0 }, |
ad692897 L |
799 | }, |
800 | /* PREFIX_EVEX_0F387E */ | |
801 | { | |
802 | { Bad_Opcode }, | |
803 | { Bad_Opcode }, | |
492a76aa | 804 | { "vpermt2%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
805 | }, |
806 | /* PREFIX_EVEX_0F387F */ | |
807 | { | |
808 | { Bad_Opcode }, | |
809 | { Bad_Opcode }, | |
810 | { "vpermt2p%XW", { XM, Vex, EXx }, 0 }, | |
811 | }, | |
812 | /* PREFIX_EVEX_0F3883 */ | |
813 | { | |
814 | { Bad_Opcode }, | |
815 | { Bad_Opcode }, | |
816 | { VEX_W_TABLE (EVEX_W_0F3883_P_2) }, | |
817 | }, | |
818 | /* PREFIX_EVEX_0F3888 */ | |
819 | { | |
820 | { Bad_Opcode }, | |
821 | { Bad_Opcode }, | |
822 | { "vexpandp%XW", { XM, EXEvexXGscat }, 0 }, | |
823 | }, | |
824 | /* PREFIX_EVEX_0F3889 */ | |
825 | { | |
826 | { Bad_Opcode }, | |
827 | { Bad_Opcode }, | |
492a76aa | 828 | { "vpexpand%DQ", { XM, EXEvexXGscat }, 0 }, |
ad692897 L |
829 | }, |
830 | /* PREFIX_EVEX_0F388A */ | |
831 | { | |
832 | { Bad_Opcode }, | |
833 | { Bad_Opcode }, | |
834 | { "vcompressp%XW", { EXEvexXGscat, XM }, 0 }, | |
835 | }, | |
836 | /* PREFIX_EVEX_0F388B */ | |
837 | { | |
838 | { Bad_Opcode }, | |
839 | { Bad_Opcode }, | |
492a76aa | 840 | { "vpcompress%DQ", { EXEvexXGscat, XM }, 0 }, |
ad692897 L |
841 | }, |
842 | /* PREFIX_EVEX_0F388D */ | |
843 | { | |
844 | { Bad_Opcode }, | |
845 | { Bad_Opcode }, | |
931452b6 | 846 | { "vperm%BW", { XM, Vex, EXx }, 0 }, |
ad692897 L |
847 | }, |
848 | /* PREFIX_EVEX_0F388F */ | |
849 | { | |
850 | { Bad_Opcode }, | |
851 | { Bad_Opcode }, | |
852 | { "vpshufbitqmb", { XMask, Vex, EXx }, 0 }, | |
853 | }, | |
854 | /* PREFIX_EVEX_0F3890 */ | |
855 | { | |
856 | { Bad_Opcode }, | |
857 | { Bad_Opcode }, | |
492a76aa | 858 | { "vpgatherd%DQ", { XM, MVexVSIBDWpX }, 0 }, |
ad692897 L |
859 | }, |
860 | /* PREFIX_EVEX_0F3891 */ | |
861 | { | |
862 | { Bad_Opcode }, | |
863 | { Bad_Opcode }, | |
864 | { VEX_W_TABLE (EVEX_W_0F3891_P_2) }, | |
865 | }, | |
866 | /* PREFIX_EVEX_0F3892 */ | |
867 | { | |
868 | { Bad_Opcode }, | |
869 | { Bad_Opcode }, | |
870 | { "vgatherdp%XW", { XM, MVexVSIBDWpX}, 0 }, | |
871 | }, | |
872 | /* PREFIX_EVEX_0F3893 */ | |
873 | { | |
874 | { Bad_Opcode }, | |
875 | { Bad_Opcode }, | |
876 | { VEX_W_TABLE (EVEX_W_0F3893_P_2) }, | |
877 | }, | |
ad692897 L |
878 | /* PREFIX_EVEX_0F389A */ |
879 | { | |
880 | { Bad_Opcode }, | |
881 | { Bad_Opcode }, | |
882 | { "vfmsub132p%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, | |
883 | { "v4fmaddps", { XM, Vex, Mxmm }, 0 }, | |
884 | }, | |
885 | /* PREFIX_EVEX_0F389B */ | |
886 | { | |
887 | { Bad_Opcode }, | |
888 | { Bad_Opcode }, | |
4102be5c | 889 | { "vfmsub132s%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexR }, 0 }, |
ad692897 L |
890 | { "v4fmaddss", { XMScalar, VexScalar, Mxmm }, 0 }, |
891 | }, | |
ad692897 L |
892 | /* PREFIX_EVEX_0F38A0 */ |
893 | { | |
894 | { Bad_Opcode }, | |
895 | { Bad_Opcode }, | |
492a76aa | 896 | { "vpscatterd%DQ", { MVexVSIBDWpX, XM }, 0 }, |
ad692897 L |
897 | }, |
898 | /* PREFIX_EVEX_0F38A1 */ | |
899 | { | |
900 | { Bad_Opcode }, | |
901 | { Bad_Opcode }, | |
902 | { VEX_W_TABLE (EVEX_W_0F38A1_P_2) }, | |
903 | }, | |
904 | /* PREFIX_EVEX_0F38A2 */ | |
905 | { | |
906 | { Bad_Opcode }, | |
907 | { Bad_Opcode }, | |
908 | { "vscatterdp%XW", { MVexVSIBDWpX, XM }, 0 }, | |
909 | }, | |
910 | /* PREFIX_EVEX_0F38A3 */ | |
911 | { | |
912 | { Bad_Opcode }, | |
913 | { Bad_Opcode }, | |
914 | { VEX_W_TABLE (EVEX_W_0F38A3_P_2) }, | |
915 | }, | |
ad692897 L |
916 | /* PREFIX_EVEX_0F38AA */ |
917 | { | |
918 | { Bad_Opcode }, | |
919 | { Bad_Opcode }, | |
920 | { "vfmsub213p%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, | |
921 | { "v4fnmaddps", { XM, Vex, Mxmm }, 0 }, | |
922 | }, | |
923 | /* PREFIX_EVEX_0F38AB */ | |
924 | { | |
925 | { Bad_Opcode }, | |
926 | { Bad_Opcode }, | |
4102be5c | 927 | { "vfmsub213s%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexR }, 0 }, |
ad692897 L |
928 | { "v4fnmaddss", { XMScalar, VexScalar, Mxmm }, 0 }, |
929 | }, | |
ad692897 L |
930 | /* PREFIX_EVEX_0F38B4 */ |
931 | { | |
932 | { Bad_Opcode }, | |
933 | { Bad_Opcode }, | |
934 | { "vpmadd52luq", { XM, Vex, EXx }, 0 }, | |
935 | }, | |
936 | /* PREFIX_EVEX_0F38B5 */ | |
937 | { | |
938 | { Bad_Opcode }, | |
939 | { Bad_Opcode }, | |
940 | { "vpmadd52huq", { XM, Vex, EXx }, 0 }, | |
941 | }, | |
ad692897 L |
942 | /* PREFIX_EVEX_0F38C4 */ |
943 | { | |
944 | { Bad_Opcode }, | |
945 | { Bad_Opcode }, | |
492a76aa | 946 | { "vpconflict%DQ", { XM, EXx }, 0 }, |
ad692897 L |
947 | }, |
948 | /* PREFIX_EVEX_0F38C6_REG_1 */ | |
949 | { | |
950 | { Bad_Opcode }, | |
951 | { Bad_Opcode }, | |
e395f487 | 952 | { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_1_PREFIX_2) }, |
ad692897 L |
953 | }, |
954 | /* PREFIX_EVEX_0F38C6_REG_2 */ | |
955 | { | |
956 | { Bad_Opcode }, | |
957 | { Bad_Opcode }, | |
e395f487 | 958 | { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_2_PREFIX_2) }, |
ad692897 L |
959 | }, |
960 | /* PREFIX_EVEX_0F38C6_REG_5 */ | |
961 | { | |
962 | { Bad_Opcode }, | |
963 | { Bad_Opcode }, | |
e395f487 | 964 | { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_5_PREFIX_2) }, |
ad692897 L |
965 | }, |
966 | /* PREFIX_EVEX_0F38C6_REG_6 */ | |
967 | { | |
968 | { Bad_Opcode }, | |
969 | { Bad_Opcode }, | |
e395f487 | 970 | { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_6_PREFIX_2) }, |
ad692897 L |
971 | }, |
972 | /* PREFIX_EVEX_0F38C7_REG_1 */ | |
973 | { | |
974 | { Bad_Opcode }, | |
975 | { Bad_Opcode }, | |
976 | { VEX_W_TABLE (EVEX_W_0F38C7_R_1_P_2) }, | |
977 | }, | |
978 | /* PREFIX_EVEX_0F38C7_REG_2 */ | |
979 | { | |
980 | { Bad_Opcode }, | |
981 | { Bad_Opcode }, | |
982 | { VEX_W_TABLE (EVEX_W_0F38C7_R_2_P_2) }, | |
983 | }, | |
984 | /* PREFIX_EVEX_0F38C7_REG_5 */ | |
985 | { | |
986 | { Bad_Opcode }, | |
987 | { Bad_Opcode }, | |
988 | { VEX_W_TABLE (EVEX_W_0F38C7_R_5_P_2) }, | |
989 | }, | |
990 | /* PREFIX_EVEX_0F38C7_REG_6 */ | |
991 | { | |
992 | { Bad_Opcode }, | |
993 | { Bad_Opcode }, | |
994 | { VEX_W_TABLE (EVEX_W_0F38C7_R_6_P_2) }, | |
995 | }, | |
996 | /* PREFIX_EVEX_0F38C8 */ | |
997 | { | |
998 | { Bad_Opcode }, | |
999 | { Bad_Opcode }, | |
1000 | { "vexp2p%XW", { XM, EXx, EXxEVexS }, 0 }, | |
1001 | }, | |
1002 | /* PREFIX_EVEX_0F38CA */ | |
1003 | { | |
1004 | { Bad_Opcode }, | |
1005 | { Bad_Opcode }, | |
1006 | { "vrcp28p%XW", { XM, EXx, EXxEVexS }, 0 }, | |
1007 | }, | |
1008 | /* PREFIX_EVEX_0F38CB */ | |
1009 | { | |
1010 | { Bad_Opcode }, | |
1011 | { Bad_Opcode }, | |
4102be5c | 1012 | { "vrcp28s%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS }, 0 }, |
ad692897 L |
1013 | }, |
1014 | /* PREFIX_EVEX_0F38CC */ | |
1015 | { | |
1016 | { Bad_Opcode }, | |
1017 | { Bad_Opcode }, | |
1018 | { "vrsqrt28p%XW", { XM, EXx, EXxEVexS }, 0 }, | |
1019 | }, | |
1020 | /* PREFIX_EVEX_0F38CD */ | |
1021 | { | |
1022 | { Bad_Opcode }, | |
1023 | { Bad_Opcode }, | |
4102be5c | 1024 | { "vrsqrt28s%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS }, 0 }, |
ad692897 | 1025 | }, |
ad692897 L |
1026 | /* PREFIX_EVEX_0F3A00 */ |
1027 | { | |
1028 | { Bad_Opcode }, | |
1029 | { Bad_Opcode }, | |
1030 | { VEX_W_TABLE (EVEX_W_0F3A00_P_2) }, | |
1031 | }, | |
1032 | /* PREFIX_EVEX_0F3A01 */ | |
1033 | { | |
1034 | { Bad_Opcode }, | |
1035 | { Bad_Opcode }, | |
1036 | { VEX_W_TABLE (EVEX_W_0F3A01_P_2) }, | |
1037 | }, | |
1038 | /* PREFIX_EVEX_0F3A03 */ | |
1039 | { | |
1040 | { Bad_Opcode }, | |
1041 | { Bad_Opcode }, | |
492a76aa | 1042 | { "valign%DQ", { XM, Vex, EXx, Ib }, 0 }, |
ad692897 | 1043 | }, |
ad692897 L |
1044 | /* PREFIX_EVEX_0F3A05 */ |
1045 | { | |
1046 | { Bad_Opcode }, | |
1047 | { Bad_Opcode }, | |
1048 | { VEX_W_TABLE (EVEX_W_0F3A05_P_2) }, | |
1049 | }, | |
1050 | /* PREFIX_EVEX_0F3A08 */ | |
1051 | { | |
1052 | { Bad_Opcode }, | |
1053 | { Bad_Opcode }, | |
1054 | { VEX_W_TABLE (EVEX_W_0F3A08_P_2) }, | |
1055 | }, | |
1056 | /* PREFIX_EVEX_0F3A09 */ | |
1057 | { | |
1058 | { Bad_Opcode }, | |
1059 | { Bad_Opcode }, | |
1060 | { VEX_W_TABLE (EVEX_W_0F3A09_P_2) }, | |
1061 | }, | |
1062 | /* PREFIX_EVEX_0F3A0A */ | |
1063 | { | |
1064 | { Bad_Opcode }, | |
1065 | { Bad_Opcode }, | |
1066 | { VEX_W_TABLE (EVEX_W_0F3A0A_P_2) }, | |
1067 | }, | |
1068 | /* PREFIX_EVEX_0F3A0B */ | |
1069 | { | |
1070 | { Bad_Opcode }, | |
1071 | { Bad_Opcode }, | |
1072 | { VEX_W_TABLE (EVEX_W_0F3A0B_P_2) }, | |
1073 | }, | |
ad692897 L |
1074 | /* PREFIX_EVEX_0F3A14 */ |
1075 | { | |
1076 | { Bad_Opcode }, | |
1077 | { Bad_Opcode }, | |
e74d9fa9 | 1078 | { EVEX_LEN_TABLE (EVEX_LEN_0F3A14_P_2) }, |
ad692897 L |
1079 | }, |
1080 | /* PREFIX_EVEX_0F3A15 */ | |
1081 | { | |
1082 | { Bad_Opcode }, | |
1083 | { Bad_Opcode }, | |
e74d9fa9 | 1084 | { EVEX_LEN_TABLE (EVEX_LEN_0F3A15_P_2) }, |
ad692897 L |
1085 | }, |
1086 | /* PREFIX_EVEX_0F3A16 */ | |
1087 | { | |
1088 | { Bad_Opcode }, | |
1089 | { Bad_Opcode }, | |
e74d9fa9 | 1090 | { EVEX_LEN_TABLE (EVEX_LEN_0F3A16_P_2) }, |
ad692897 L |
1091 | }, |
1092 | /* PREFIX_EVEX_0F3A17 */ | |
1093 | { | |
1094 | { Bad_Opcode }, | |
1095 | { Bad_Opcode }, | |
e74d9fa9 | 1096 | { EVEX_LEN_TABLE (EVEX_LEN_0F3A17_P_2) }, |
ad692897 L |
1097 | }, |
1098 | /* PREFIX_EVEX_0F3A18 */ | |
1099 | { | |
1100 | { Bad_Opcode }, | |
1101 | { Bad_Opcode }, | |
1102 | { VEX_W_TABLE (EVEX_W_0F3A18_P_2) }, | |
1103 | }, | |
1104 | /* PREFIX_EVEX_0F3A19 */ | |
1105 | { | |
1106 | { Bad_Opcode }, | |
1107 | { Bad_Opcode }, | |
1108 | { VEX_W_TABLE (EVEX_W_0F3A19_P_2) }, | |
1109 | }, | |
1110 | /* PREFIX_EVEX_0F3A1A */ | |
1111 | { | |
1112 | { Bad_Opcode }, | |
1113 | { Bad_Opcode }, | |
1114 | { VEX_W_TABLE (EVEX_W_0F3A1A_P_2) }, | |
1115 | }, | |
1116 | /* PREFIX_EVEX_0F3A1B */ | |
1117 | { | |
1118 | { Bad_Opcode }, | |
1119 | { Bad_Opcode }, | |
1120 | { VEX_W_TABLE (EVEX_W_0F3A1B_P_2) }, | |
1121 | }, | |
ad692897 L |
1122 | /* PREFIX_EVEX_0F3A1E */ |
1123 | { | |
1124 | { Bad_Opcode }, | |
1125 | { Bad_Opcode }, | |
492a76aa | 1126 | { "vpcmpu%DQ", { XMask, Vex, EXx, VPCMP }, 0 }, |
ad692897 L |
1127 | }, |
1128 | /* PREFIX_EVEX_0F3A1F */ | |
1129 | { | |
1130 | { Bad_Opcode }, | |
1131 | { Bad_Opcode }, | |
492a76aa | 1132 | { "vpcmp%DQ", { XMask, Vex, EXx, VPCMP }, 0 }, |
ad692897 L |
1133 | }, |
1134 | /* PREFIX_EVEX_0F3A20 */ | |
1135 | { | |
1136 | { Bad_Opcode }, | |
1137 | { Bad_Opcode }, | |
e74d9fa9 | 1138 | { EVEX_LEN_TABLE (EVEX_LEN_0F3A20_P_2) }, |
ad692897 L |
1139 | }, |
1140 | /* PREFIX_EVEX_0F3A21 */ | |
1141 | { | |
1142 | { Bad_Opcode }, | |
1143 | { Bad_Opcode }, | |
1144 | { VEX_W_TABLE (EVEX_W_0F3A21_P_2) }, | |
1145 | }, | |
1146 | /* PREFIX_EVEX_0F3A22 */ | |
1147 | { | |
1148 | { Bad_Opcode }, | |
1149 | { Bad_Opcode }, | |
e74d9fa9 | 1150 | { EVEX_LEN_TABLE (EVEX_LEN_0F3A22_P_2) }, |
ad692897 L |
1151 | }, |
1152 | /* PREFIX_EVEX_0F3A23 */ | |
1153 | { | |
1154 | { Bad_Opcode }, | |
1155 | { Bad_Opcode }, | |
1156 | { VEX_W_TABLE (EVEX_W_0F3A23_P_2) }, | |
1157 | }, | |
1158 | /* PREFIX_EVEX_0F3A25 */ | |
1159 | { | |
1160 | { Bad_Opcode }, | |
1161 | { Bad_Opcode }, | |
492a76aa | 1162 | { "vpternlog%DQ", { XM, Vex, EXx, Ib }, 0 }, |
ad692897 L |
1163 | }, |
1164 | /* PREFIX_EVEX_0F3A26 */ | |
1165 | { | |
1166 | { Bad_Opcode }, | |
1167 | { Bad_Opcode }, | |
1168 | { "vgetmantp%XW", { XM, EXx, EXxEVexS, Ib }, 0 }, | |
1169 | }, | |
1170 | /* PREFIX_EVEX_0F3A27 */ | |
1171 | { | |
1172 | { Bad_Opcode }, | |
1173 | { Bad_Opcode }, | |
4102be5c | 1174 | { "vgetmants%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS, Ib }, 0 }, |
ad692897 L |
1175 | }, |
1176 | /* PREFIX_EVEX_0F3A38 */ | |
1177 | { | |
1178 | { Bad_Opcode }, | |
1179 | { Bad_Opcode }, | |
1180 | { VEX_W_TABLE (EVEX_W_0F3A38_P_2) }, | |
1181 | }, | |
1182 | /* PREFIX_EVEX_0F3A39 */ | |
1183 | { | |
1184 | { Bad_Opcode }, | |
1185 | { Bad_Opcode }, | |
1186 | { VEX_W_TABLE (EVEX_W_0F3A39_P_2) }, | |
1187 | }, | |
1188 | /* PREFIX_EVEX_0F3A3A */ | |
1189 | { | |
1190 | { Bad_Opcode }, | |
1191 | { Bad_Opcode }, | |
1192 | { VEX_W_TABLE (EVEX_W_0F3A3A_P_2) }, | |
1193 | }, | |
1194 | /* PREFIX_EVEX_0F3A3B */ | |
1195 | { | |
1196 | { Bad_Opcode }, | |
1197 | { Bad_Opcode }, | |
1198 | { VEX_W_TABLE (EVEX_W_0F3A3B_P_2) }, | |
1199 | }, | |
1200 | /* PREFIX_EVEX_0F3A3E */ | |
1201 | { | |
1202 | { Bad_Opcode }, | |
1203 | { Bad_Opcode }, | |
931452b6 | 1204 | { "vpcmpu%BW", { XMask, Vex, EXx, VPCMP }, 0 }, |
ad692897 L |
1205 | }, |
1206 | /* PREFIX_EVEX_0F3A3F */ | |
1207 | { | |
1208 | { Bad_Opcode }, | |
1209 | { Bad_Opcode }, | |
931452b6 | 1210 | { "vpcmp%BW", { XMask, Vex, EXx, VPCMP }, 0 }, |
ad692897 L |
1211 | }, |
1212 | /* PREFIX_EVEX_0F3A42 */ | |
1213 | { | |
1214 | { Bad_Opcode }, | |
1215 | { Bad_Opcode }, | |
1216 | { VEX_W_TABLE (EVEX_W_0F3A42_P_2) }, | |
1217 | }, | |
1218 | /* PREFIX_EVEX_0F3A43 */ | |
1219 | { | |
1220 | { Bad_Opcode }, | |
1221 | { Bad_Opcode }, | |
1222 | { VEX_W_TABLE (EVEX_W_0F3A43_P_2) }, | |
1223 | }, | |
ad692897 L |
1224 | /* PREFIX_EVEX_0F3A50 */ |
1225 | { | |
1226 | { Bad_Opcode }, | |
1227 | { Bad_Opcode }, | |
21a3faeb | 1228 | { "vrangep%XW", { XM, Vex, EXx, EXxEVexS, Ib }, 0 }, |
ad692897 L |
1229 | }, |
1230 | /* PREFIX_EVEX_0F3A51 */ | |
1231 | { | |
1232 | { Bad_Opcode }, | |
1233 | { Bad_Opcode }, | |
21a3faeb | 1234 | { "vranges%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS, Ib }, 0 }, |
ad692897 L |
1235 | }, |
1236 | /* PREFIX_EVEX_0F3A54 */ | |
1237 | { | |
1238 | { Bad_Opcode }, | |
1239 | { Bad_Opcode }, | |
1240 | { "vfixupimmp%XW", { XM, Vex, EXx, EXxEVexS, Ib }, 0 }, | |
1241 | }, | |
1242 | /* PREFIX_EVEX_0F3A55 */ | |
1243 | { | |
1244 | { Bad_Opcode }, | |
1245 | { Bad_Opcode }, | |
4102be5c | 1246 | { "vfixupimms%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS, Ib }, 0 }, |
ad692897 L |
1247 | }, |
1248 | /* PREFIX_EVEX_0F3A56 */ | |
1249 | { | |
1250 | { Bad_Opcode }, | |
1251 | { Bad_Opcode }, | |
21a3faeb | 1252 | { "vreducep%XW", { XM, EXx, EXxEVexS, Ib }, 0 }, |
ad692897 L |
1253 | }, |
1254 | /* PREFIX_EVEX_0F3A57 */ | |
1255 | { | |
1256 | { Bad_Opcode }, | |
1257 | { Bad_Opcode }, | |
21a3faeb | 1258 | { "vreduces%XW", { XMScalar, VexScalar, EXVexWdqScalar, EXxEVexS, Ib }, 0 }, |
ad692897 L |
1259 | }, |
1260 | /* PREFIX_EVEX_0F3A66 */ | |
1261 | { | |
1262 | { Bad_Opcode }, | |
1263 | { Bad_Opcode }, | |
21a3faeb | 1264 | { "vfpclassp%XW%XZ", { XMask, EXx, Ib }, 0 }, |
ad692897 L |
1265 | }, |
1266 | /* PREFIX_EVEX_0F3A67 */ | |
1267 | { | |
1268 | { Bad_Opcode }, | |
1269 | { Bad_Opcode }, | |
21a3faeb | 1270 | { "vfpclasss%XW", { XMask, EXVexWdqScalar, Ib }, 0 }, |
ad692897 L |
1271 | }, |
1272 | /* PREFIX_EVEX_0F3A70 */ | |
1273 | { | |
1274 | { Bad_Opcode }, | |
1275 | { Bad_Opcode }, | |
1276 | { VEX_W_TABLE (EVEX_W_0F3A70_P_2) }, | |
1277 | }, | |
1278 | /* PREFIX_EVEX_0F3A71 */ | |
1279 | { | |
1280 | { Bad_Opcode }, | |
1281 | { Bad_Opcode }, | |
492a76aa | 1282 | { "vpshld%DQ", { XM, Vex, EXx, Ib }, 0 }, |
ad692897 L |
1283 | }, |
1284 | /* PREFIX_EVEX_0F3A72 */ | |
1285 | { | |
1286 | { Bad_Opcode }, | |
1287 | { Bad_Opcode }, | |
1288 | { VEX_W_TABLE (EVEX_W_0F3A72_P_2) }, | |
1289 | }, | |
1290 | /* PREFIX_EVEX_0F3A73 */ | |
1291 | { | |
1292 | { Bad_Opcode }, | |
1293 | { Bad_Opcode }, | |
492a76aa | 1294 | { "vpshrd%DQ", { XM, Vex, EXx, Ib }, 0 }, |
ad692897 | 1295 | }, |