1   /* PREFIX_EVEX_0F10 */
2   {
3     { VEX_W_TABLE (EVEX_W_0F10_P_0) },
4     { VEX_W_TABLE (EVEX_W_0F10_P_1) },
5     { VEX_W_TABLE (EVEX_W_0F10_P_2) },
6     { VEX_W_TABLE (EVEX_W_0F10_P_3) },
7   },
8   /* PREFIX_EVEX_0F11 */
9   {
10     { VEX_W_TABLE (EVEX_W_0F11_P_0) },
11     { VEX_W_TABLE (EVEX_W_0F11_P_1) },
12     { VEX_W_TABLE (EVEX_W_0F11_P_2) },
13     { VEX_W_TABLE (EVEX_W_0F11_P_3) },
14   },
15   /* PREFIX_EVEX_0F12 */
16   {
17     { MOD_TABLE (MOD_EVEX_0F12_PREFIX_0) },
18     { VEX_W_TABLE (EVEX_W_0F12_P_1) },
19     { VEX_W_TABLE (EVEX_W_0F12_P_2) },
20     { VEX_W_TABLE (EVEX_W_0F12_P_3) },
21   },
22   /* PREFIX_EVEX_0F13 */
23   {
24     { VEX_W_TABLE (EVEX_W_0F13_P_0) },
25     { Bad_Opcode },
26     { VEX_W_TABLE (EVEX_W_0F13_P_2) },
27   },
28   /* PREFIX_EVEX_0F14 */
29   {
30     { VEX_W_TABLE (EVEX_W_0F14_P_0) },
31     { Bad_Opcode },
32     { VEX_W_TABLE (EVEX_W_0F14_P_2) },
33   },
34   /* PREFIX_EVEX_0F15 */
35   {
36     { VEX_W_TABLE (EVEX_W_0F15_P_0) },
37     { Bad_Opcode },
38     { VEX_W_TABLE (EVEX_W_0F15_P_2) },
39   },
40   /* PREFIX_EVEX_0F16 */
41   {
42     { MOD_TABLE (MOD_EVEX_0F16_PREFIX_0) },
43     { VEX_W_TABLE (EVEX_W_0F16_P_1) },
44     { VEX_W_TABLE (EVEX_W_0F16_P_2) },
45   },
46   /* PREFIX_EVEX_0F17 */
47   {
48     { VEX_W_TABLE (EVEX_W_0F17_P_0) },
49     { Bad_Opcode },
50     { VEX_W_TABLE (EVEX_W_0F17_P_2) },
51   },
52   /* PREFIX_EVEX_0F28 */
53   {
54     { VEX_W_TABLE (EVEX_W_0F28_P_0) },
55     { Bad_Opcode },
56     { VEX_W_TABLE (EVEX_W_0F28_P_2) },
57   },
58   /* PREFIX_EVEX_0F29 */
59   {
60     { VEX_W_TABLE (EVEX_W_0F29_P_0) },
61     { Bad_Opcode },
62     { VEX_W_TABLE (EVEX_W_0F29_P_2) },
63   },
64   /* PREFIX_EVEX_0F2A */
65   {
66     { Bad_Opcode },
67     { "vcvtsi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Edq }, 0 },
68     { Bad_Opcode },
69     { VEX_W_TABLE (EVEX_W_0F2A_P_3) },
70   },
71   /* PREFIX_EVEX_0F2B */
72   {
73     { VEX_W_TABLE (EVEX_W_0F2B_P_0) },
74     { Bad_Opcode },
75     { VEX_W_TABLE (EVEX_W_0F2B_P_2) },
76   },
77   /* PREFIX_EVEX_0F2C */
78   {
79     { Bad_Opcode },
80     { "vcvttss2si",	{ Gdq, EXxmm_md, EXxEVexS }, 0 },
81     { Bad_Opcode },
82     { "vcvttsd2si",	{ Gdq, EXxmm_mq, EXxEVexS }, 0 },
83   },
84   /* PREFIX_EVEX_0F2D */
85   {
86     { Bad_Opcode },
87     { "vcvtss2si",	{ Gdq, EXxmm_md, EXxEVexR }, 0 },
88     { Bad_Opcode },
89     { "vcvtsd2si",	{ Gdq, EXxmm_mq, EXxEVexR }, 0 },
90   },
91   /* PREFIX_EVEX_0F2E */
92   {
93     { VEX_W_TABLE (EVEX_W_0F2E_P_0) },
94     { Bad_Opcode },
95     { VEX_W_TABLE (EVEX_W_0F2E_P_2) },
96   },
97   /* PREFIX_EVEX_0F2F */
98   {
99     { VEX_W_TABLE (EVEX_W_0F2F_P_0) },
100     { Bad_Opcode },
101     { VEX_W_TABLE (EVEX_W_0F2F_P_2) },
102   },
103   /* PREFIX_EVEX_0F51 */
104   {
105     { VEX_W_TABLE (EVEX_W_0F51_P_0) },
106     { VEX_W_TABLE (EVEX_W_0F51_P_1) },
107     { VEX_W_TABLE (EVEX_W_0F51_P_2) },
108     { VEX_W_TABLE (EVEX_W_0F51_P_3) },
109   },
110   /* PREFIX_EVEX_0F54 */
111   {
112     { VEX_W_TABLE (EVEX_W_0F54_P_0) },
113     { Bad_Opcode },
114     { VEX_W_TABLE (EVEX_W_0F54_P_2) },
115   },
116   /* PREFIX_EVEX_0F55 */
117   {
118     { VEX_W_TABLE (EVEX_W_0F55_P_0) },
119     { Bad_Opcode },
120     { VEX_W_TABLE (EVEX_W_0F55_P_2) },
121   },
122   /* PREFIX_EVEX_0F56 */
123   {
124     { VEX_W_TABLE (EVEX_W_0F56_P_0) },
125     { Bad_Opcode },
126     { VEX_W_TABLE (EVEX_W_0F56_P_2) },
127   },
128   /* PREFIX_EVEX_0F57 */
129   {
130     { VEX_W_TABLE (EVEX_W_0F57_P_0) },
131     { Bad_Opcode },
132     { VEX_W_TABLE (EVEX_W_0F57_P_2) },
133   },
134   /* PREFIX_EVEX_0F58 */
135   {
136     { VEX_W_TABLE (EVEX_W_0F58_P_0) },
137     { VEX_W_TABLE (EVEX_W_0F58_P_1) },
138     { VEX_W_TABLE (EVEX_W_0F58_P_2) },
139     { VEX_W_TABLE (EVEX_W_0F58_P_3) },
140   },
141   /* PREFIX_EVEX_0F59 */
142   {
143     { VEX_W_TABLE (EVEX_W_0F59_P_0) },
144     { VEX_W_TABLE (EVEX_W_0F59_P_1) },
145     { VEX_W_TABLE (EVEX_W_0F59_P_2) },
146     { VEX_W_TABLE (EVEX_W_0F59_P_3) },
147   },
148   /* PREFIX_EVEX_0F5A */
149   {
150     { VEX_W_TABLE (EVEX_W_0F5A_P_0) },
151     { VEX_W_TABLE (EVEX_W_0F5A_P_1) },
152     { VEX_W_TABLE (EVEX_W_0F5A_P_2) },
153     { VEX_W_TABLE (EVEX_W_0F5A_P_3) },
154   },
155   /* PREFIX_EVEX_0F5B */
156   {
157     { VEX_W_TABLE (EVEX_W_0F5B_P_0) },
158     { VEX_W_TABLE (EVEX_W_0F5B_P_1) },
159     { VEX_W_TABLE (EVEX_W_0F5B_P_2) },
160   },
161   /* PREFIX_EVEX_0F5C */
162   {
163     { VEX_W_TABLE (EVEX_W_0F5C_P_0) },
164     { VEX_W_TABLE (EVEX_W_0F5C_P_1) },
165     { VEX_W_TABLE (EVEX_W_0F5C_P_2) },
166     { VEX_W_TABLE (EVEX_W_0F5C_P_3) },
167   },
168   /* PREFIX_EVEX_0F5D */
169   {
170     { VEX_W_TABLE (EVEX_W_0F5D_P_0) },
171     { VEX_W_TABLE (EVEX_W_0F5D_P_1) },
172     { VEX_W_TABLE (EVEX_W_0F5D_P_2) },
173     { VEX_W_TABLE (EVEX_W_0F5D_P_3) },
174   },
175   /* PREFIX_EVEX_0F5E */
176   {
177     { VEX_W_TABLE (EVEX_W_0F5E_P_0) },
178     { VEX_W_TABLE (EVEX_W_0F5E_P_1) },
179     { VEX_W_TABLE (EVEX_W_0F5E_P_2) },
180     { VEX_W_TABLE (EVEX_W_0F5E_P_3) },
181   },
182   /* PREFIX_EVEX_0F5F */
183   {
184     { VEX_W_TABLE (EVEX_W_0F5F_P_0) },
185     { VEX_W_TABLE (EVEX_W_0F5F_P_1) },
186     { VEX_W_TABLE (EVEX_W_0F5F_P_2) },
187     { VEX_W_TABLE (EVEX_W_0F5F_P_3) },
188   },
189   /* PREFIX_EVEX_0F60 */
190   {
191     { Bad_Opcode },
192     { Bad_Opcode },
193     { "vpunpcklbw",	{ XM, Vex, EXx }, 0 },
194   },
195   /* PREFIX_EVEX_0F61 */
196   {
197     { Bad_Opcode },
198     { Bad_Opcode },
199     { "vpunpcklwd",	{ XM, Vex, EXx }, 0 },
200   },
201   /* PREFIX_EVEX_0F62 */
202   {
203     { Bad_Opcode },
204     { Bad_Opcode },
205     { VEX_W_TABLE (EVEX_W_0F62_P_2) },
206   },
207   /* PREFIX_EVEX_0F63 */
208   {
209     { Bad_Opcode },
210     { Bad_Opcode },
211     { "vpacksswb",	{ XM, Vex, EXx }, 0 },
212   },
213   /* PREFIX_EVEX_0F64 */
214   {
215     { Bad_Opcode },
216     { Bad_Opcode },
217     { "vpcmpgtb",	{ XMask, Vex, EXx }, 0 },
218   },
219   /* PREFIX_EVEX_0F65 */
220   {
221     { Bad_Opcode },
222     { Bad_Opcode },
223     { "vpcmpgtw",	{ XMask, Vex, EXx }, 0 },
224   },
225   /* PREFIX_EVEX_0F66 */
226   {
227     { Bad_Opcode },
228     { Bad_Opcode },
229     { VEX_W_TABLE (EVEX_W_0F66_P_2) },
230   },
231   /* PREFIX_EVEX_0F67 */
232   {
233     { Bad_Opcode },
234     { Bad_Opcode },
235     { "vpackuswb",	{ XM, Vex, EXx }, 0 },
236   },
237   /* PREFIX_EVEX_0F68 */
238   {
239     { Bad_Opcode },
240     { Bad_Opcode },
241     { "vpunpckhbw",	{ XM, Vex, EXx }, 0 },
242   },
243   /* PREFIX_EVEX_0F69 */
244   {
245     { Bad_Opcode },
246     { Bad_Opcode },
247     { "vpunpckhwd",	{ XM, Vex, EXx }, 0 },
248   },
249   /* PREFIX_EVEX_0F6A */
250   {
251     { Bad_Opcode },
252     { Bad_Opcode },
253     { VEX_W_TABLE (EVEX_W_0F6A_P_2) },
254   },
255   /* PREFIX_EVEX_0F6B */
256   {
257     { Bad_Opcode },
258     { Bad_Opcode },
259     { VEX_W_TABLE (EVEX_W_0F6B_P_2) },
260   },
261   /* PREFIX_EVEX_0F6C */
262   {
263     { Bad_Opcode },
264     { Bad_Opcode },
265     { VEX_W_TABLE (EVEX_W_0F6C_P_2) },
266   },
267   /* PREFIX_EVEX_0F6D */
268   {
269     { Bad_Opcode },
270     { Bad_Opcode },
271     { VEX_W_TABLE (EVEX_W_0F6D_P_2) },
272   },
273   /* PREFIX_EVEX_0F6E */
274   {
275     { Bad_Opcode },
276     { Bad_Opcode },
277     { EVEX_LEN_TABLE (EVEX_LEN_0F6E_P_2) },
278   },
279   /* PREFIX_EVEX_0F6F */
280   {
281     { Bad_Opcode },
282     { VEX_W_TABLE (EVEX_W_0F6F_P_1) },
283     { VEX_W_TABLE (EVEX_W_0F6F_P_2) },
284     { VEX_W_TABLE (EVEX_W_0F6F_P_3) },
285   },
286   /* PREFIX_EVEX_0F70 */
287   {
288     { Bad_Opcode },
289     { "vpshufhw",	{ XM, EXx, Ib }, 0 },
290     { VEX_W_TABLE (EVEX_W_0F70_P_2) },
291     { "vpshuflw",	{ XM, EXx, Ib }, 0 },
292   },
293   /* PREFIX_EVEX_0F71_REG_2 */
294   {
295     { Bad_Opcode },
296     { Bad_Opcode },
297     { "vpsrlw",	{ Vex, EXx, Ib }, 0 },
298   },
299   /* PREFIX_EVEX_0F71_REG_4 */
300   {
301     { Bad_Opcode },
302     { Bad_Opcode },
303     { "vpsraw",	{ Vex, EXx, Ib }, 0 },
304   },
305   /* PREFIX_EVEX_0F71_REG_6 */
306   {
307     { Bad_Opcode },
308     { Bad_Opcode },
309     { "vpsllw",	{ Vex, EXx, Ib }, 0 },
310   },
311   /* PREFIX_EVEX_0F72_REG_0 */
312   {
313     { Bad_Opcode },
314     { Bad_Opcode },
315     { "vpror%LW",	{ Vex, EXx, Ib }, 0 },
316   },
317   /* PREFIX_EVEX_0F72_REG_1 */
318   {
319     { Bad_Opcode },
320     { Bad_Opcode },
321     { "vprol%LW",	{ Vex, EXx, Ib }, 0 },
322   },
323   /* PREFIX_EVEX_0F72_REG_2 */
324   {
325     { Bad_Opcode },
326     { Bad_Opcode },
327     { VEX_W_TABLE (EVEX_W_0F72_R_2_P_2) },
328   },
329   /* PREFIX_EVEX_0F72_REG_4 */
330   {
331     { Bad_Opcode },
332     { Bad_Opcode },
333     { "vpsra%LW",	{ Vex, EXx, Ib }, 0 },
334   },
335   /* PREFIX_EVEX_0F72_REG_6 */
336   {
337     { Bad_Opcode },
338     { Bad_Opcode },
339     { VEX_W_TABLE (EVEX_W_0F72_R_6_P_2) },
340   },
341   /* PREFIX_EVEX_0F73_REG_2 */
342   {
343     { Bad_Opcode },
344     { Bad_Opcode },
345     { VEX_W_TABLE (EVEX_W_0F73_R_2_P_2) },
346   },
347   /* PREFIX_EVEX_0F73_REG_3 */
348   {
349     { Bad_Opcode },
350     { Bad_Opcode },
351     { "vpsrldq",	{ Vex, EXx, Ib }, 0 },
352   },
353   /* PREFIX_EVEX_0F73_REG_6 */
354   {
355     { Bad_Opcode },
356     { Bad_Opcode },
357     { VEX_W_TABLE (EVEX_W_0F73_R_6_P_2) },
358   },
359   /* PREFIX_EVEX_0F73_REG_7 */
360   {
361     { Bad_Opcode },
362     { Bad_Opcode },
363     { "vpslldq",	{ Vex, EXx, Ib }, 0 },
364   },
365   /* PREFIX_EVEX_0F74 */
366   {
367     { Bad_Opcode },
368     { Bad_Opcode },
369     { "vpcmpeqb",	{ XMask, Vex, EXx }, 0 },
370   },
371   /* PREFIX_EVEX_0F75 */
372   {
373     { Bad_Opcode },
374     { Bad_Opcode },
375     { "vpcmpeqw",	{ XMask, Vex, EXx }, 0 },
376   },
377   /* PREFIX_EVEX_0F76 */
378   {
379     { Bad_Opcode },
380     { Bad_Opcode },
381     { VEX_W_TABLE (EVEX_W_0F76_P_2) },
382   },
383   /* PREFIX_EVEX_0F78 */
384   {
385     { VEX_W_TABLE (EVEX_W_0F78_P_0) },
386     { "vcvttss2usi",	{ Gdq, EXxmm_md, EXxEVexS }, 0 },
387     { VEX_W_TABLE (EVEX_W_0F78_P_2) },
388     { "vcvttsd2usi",	{ Gdq, EXxmm_mq, EXxEVexS }, 0 },
389   },
390   /* PREFIX_EVEX_0F79 */
391   {
392     { VEX_W_TABLE (EVEX_W_0F79_P_0) },
393     { "vcvtss2usi",	{ Gdq, EXxmm_md, EXxEVexR }, 0 },
394     { VEX_W_TABLE (EVEX_W_0F79_P_2) },
395     { "vcvtsd2usi",	{ Gdq, EXxmm_mq, EXxEVexR }, 0 },
396   },
397   /* PREFIX_EVEX_0F7A */
398   {
399     { Bad_Opcode },
400     { VEX_W_TABLE (EVEX_W_0F7A_P_1) },
401     { VEX_W_TABLE (EVEX_W_0F7A_P_2) },
402     { VEX_W_TABLE (EVEX_W_0F7A_P_3) },
403   },
404   /* PREFIX_EVEX_0F7B */
405   {
406     { Bad_Opcode },
407     { "vcvtusi2ss%LQ",	{ XMScalar, VexScalar, EXxEVexR, Edq }, 0 },
408     { VEX_W_TABLE (EVEX_W_0F7B_P_2) },
409     { VEX_W_TABLE (EVEX_W_0F7B_P_3) },
410   },
411   /* PREFIX_EVEX_0F7E */
412   {
413     { Bad_Opcode },
414     { EVEX_LEN_TABLE (EVEX_LEN_0F7E_P_1) },
415     { EVEX_LEN_TABLE (EVEX_LEN_0F7E_P_2) },
416   },
417   /* PREFIX_EVEX_0F7F */
418   {
419     { Bad_Opcode },
420     { VEX_W_TABLE (EVEX_W_0F7F_P_1) },
421     { VEX_W_TABLE (EVEX_W_0F7F_P_2) },
422     { VEX_W_TABLE (EVEX_W_0F7F_P_3) },
423   },
424   /* PREFIX_EVEX_0FC2 */
425   {
426     { VEX_W_TABLE (EVEX_W_0FC2_P_0) },
427     { VEX_W_TABLE (EVEX_W_0FC2_P_1) },
428     { VEX_W_TABLE (EVEX_W_0FC2_P_2) },
429     { VEX_W_TABLE (EVEX_W_0FC2_P_3) },
430   },
431   /* PREFIX_EVEX_0FC4 */
432   {
433     { Bad_Opcode },
434     { Bad_Opcode },
435     { "vpinsrw",	{ XM, Vex128, Edw, Ib }, 0 },
436   },
437   /* PREFIX_EVEX_0FC5 */
438   {
439     { Bad_Opcode },
440     { Bad_Opcode },
441     { "vpextrw",	{ Gdq, XS, Ib }, 0 },
442   },
443   /* PREFIX_EVEX_0FC6 */
444   {
445     { VEX_W_TABLE (EVEX_W_0FC6_P_0) },
446     { Bad_Opcode },
447     { VEX_W_TABLE (EVEX_W_0FC6_P_2) },
448   },
449   /* PREFIX_EVEX_0FD1 */
450   {
451     { Bad_Opcode },
452     { Bad_Opcode },
453     { "vpsrlw",	{ XM, Vex, EXxmm }, 0 },
454   },
455   /* PREFIX_EVEX_0FD2 */
456   {
457     { Bad_Opcode },
458     { Bad_Opcode },
459     { VEX_W_TABLE (EVEX_W_0FD2_P_2) },
460   },
461   /* PREFIX_EVEX_0FD3 */
462   {
463     { Bad_Opcode },
464     { Bad_Opcode },
465     { VEX_W_TABLE (EVEX_W_0FD3_P_2) },
466   },
467   /* PREFIX_EVEX_0FD4 */
468   {
469     { Bad_Opcode },
470     { Bad_Opcode },
471     { VEX_W_TABLE (EVEX_W_0FD4_P_2) },
472   },
473   /* PREFIX_EVEX_0FD5 */
474   {
475     { Bad_Opcode },
476     { Bad_Opcode },
477     { "vpmullw",	{ XM, Vex, EXx }, 0 },
478   },
479   /* PREFIX_EVEX_0FD6 */
480   {
481     { Bad_Opcode },
482     { Bad_Opcode },
483     { EVEX_LEN_TABLE (EVEX_LEN_0FD6_P_2) },
484   },
485   /* PREFIX_EVEX_0FD8 */
486   {
487     { Bad_Opcode },
488     { Bad_Opcode },
489     { "vpsubusb",	{ XM, Vex, EXx }, 0 },
490   },
491   /* PREFIX_EVEX_0FD9 */
492   {
493     { Bad_Opcode },
494     { Bad_Opcode },
495     { "vpsubusw",	{ XM, Vex, EXx }, 0 },
496   },
497   /* PREFIX_EVEX_0FDA */
498   {
499     { Bad_Opcode },
500     { Bad_Opcode },
501     { "vpminub",	{ XM, Vex, EXx }, 0 },
502   },
503   /* PREFIX_EVEX_0FDB */
504   {
505     { Bad_Opcode },
506     { Bad_Opcode },
507     { "vpand%LW",	{ XM, Vex, EXx }, 0 },
508   },
509   /* PREFIX_EVEX_0FDC */
510   {
511     { Bad_Opcode },
512     { Bad_Opcode },
513     { "vpaddusb",	{ XM, Vex, EXx }, 0 },
514   },
515   /* PREFIX_EVEX_0FDD */
516   {
517     { Bad_Opcode },
518     { Bad_Opcode },
519     { "vpaddusw",	{ XM, Vex, EXx }, 0 },
520   },
521   /* PREFIX_EVEX_0FDE */
522   {
523     { Bad_Opcode },
524     { Bad_Opcode },
525     { "vpmaxub",	{ XM, Vex, EXx }, 0 },
526   },
527   /* PREFIX_EVEX_0FDF */
528   {
529     { Bad_Opcode },
530     { Bad_Opcode },
531     { "vpandn%LW",	{ XM, Vex, EXx }, 0 },
532   },
533   /* PREFIX_EVEX_0FE0 */
534   {
535     { Bad_Opcode },
536     { Bad_Opcode },
537     { "vpavgb",	{ XM, Vex, EXx }, 0 },
538   },
539   /* PREFIX_EVEX_0FE1 */
540   {
541     { Bad_Opcode },
542     { Bad_Opcode },
543     { "vpsraw",	{ XM, Vex, EXxmm }, 0 },
544   },
545   /* PREFIX_EVEX_0FE2 */
546   {
547     { Bad_Opcode },
548     { Bad_Opcode },
549     { "vpsra%LW",	{ XM, Vex, EXxmm }, 0 },
550   },
551   /* PREFIX_EVEX_0FE3 */
552   {
553     { Bad_Opcode },
554     { Bad_Opcode },
555     { "vpavgw",	{ XM, Vex, EXx }, 0 },
556   },
557   /* PREFIX_EVEX_0FE4 */
558   {
559     { Bad_Opcode },
560     { Bad_Opcode },
561     { "vpmulhuw",	{ XM, Vex, EXx }, 0 },
562   },
563   /* PREFIX_EVEX_0FE5 */
564   {
565     { Bad_Opcode },
566     { Bad_Opcode },
567     { "vpmulhw",	{ XM, Vex, EXx }, 0 },
568   },
569   /* PREFIX_EVEX_0FE6 */
570   {
571     { Bad_Opcode },
572     { VEX_W_TABLE (EVEX_W_0FE6_P_1) },
573     { VEX_W_TABLE (EVEX_W_0FE6_P_2) },
574     { VEX_W_TABLE (EVEX_W_0FE6_P_3) },
575   },
576   /* PREFIX_EVEX_0FE7 */
577   {
578     { Bad_Opcode },
579     { Bad_Opcode },
580     { VEX_W_TABLE (EVEX_W_0FE7_P_2) },
581   },
582   /* PREFIX_EVEX_0FE8 */
583   {
584     { Bad_Opcode },
585     { Bad_Opcode },
586     { "vpsubsb",	{ XM, Vex, EXx }, 0 },
587   },
588   /* PREFIX_EVEX_0FE9 */
589   {
590     { Bad_Opcode },
591     { Bad_Opcode },
592     { "vpsubsw",	{ XM, Vex, EXx }, 0 },
593   },
594   /* PREFIX_EVEX_0FEA */
595   {
596     { Bad_Opcode },
597     { Bad_Opcode },
598     { "vpminsw",	{ XM, Vex, EXx }, 0 },
599   },
600   /* PREFIX_EVEX_0FEB */
601   {
602     { Bad_Opcode },
603     { Bad_Opcode },
604     { "vpor%LW",	{ XM, Vex, EXx }, 0 },
605   },
606   /* PREFIX_EVEX_0FEC */
607   {
608     { Bad_Opcode },
609     { Bad_Opcode },
610     { "vpaddsb",	{ XM, Vex, EXx }, 0 },
611   },
612   /* PREFIX_EVEX_0FED */
613   {
614     { Bad_Opcode },
615     { Bad_Opcode },
616     { "vpaddsw",	{ XM, Vex, EXx }, 0 },
617   },
618   /* PREFIX_EVEX_0FEE */
619   {
620     { Bad_Opcode },
621     { Bad_Opcode },
622     { "vpmaxsw",	{ XM, Vex, EXx }, 0 },
623   },
624   /* PREFIX_EVEX_0FEF */
625   {
626     { Bad_Opcode },
627     { Bad_Opcode },
628     { "vpxor%LW",	{ XM, Vex, EXx }, 0 },
629   },
630   /* PREFIX_EVEX_0FF1 */
631   {
632     { Bad_Opcode },
633     { Bad_Opcode },
634     { "vpsllw",	{ XM, Vex, EXxmm }, 0 },
635   },
636   /* PREFIX_EVEX_0FF2 */
637   {
638     { Bad_Opcode },
639     { Bad_Opcode },
640     { VEX_W_TABLE (EVEX_W_0FF2_P_2) },
641   },
642   /* PREFIX_EVEX_0FF3 */
643   {
644     { Bad_Opcode },
645     { Bad_Opcode },
646     { VEX_W_TABLE (EVEX_W_0FF3_P_2) },
647   },
648   /* PREFIX_EVEX_0FF4 */
649   {
650     { Bad_Opcode },
651     { Bad_Opcode },
652     { VEX_W_TABLE (EVEX_W_0FF4_P_2) },
653   },
654   /* PREFIX_EVEX_0FF5 */
655   {
656     { Bad_Opcode },
657     { Bad_Opcode },
658     { "vpmaddwd",	{ XM, Vex, EXx }, 0 },
659   },
660   /* PREFIX_EVEX_0FF6 */
661   {
662     { Bad_Opcode },
663     { Bad_Opcode },
664     { "vpsadbw",	{ XM, Vex, EXx }, 0 },
665   },
666   /* PREFIX_EVEX_0FF8 */
667   {
668     { Bad_Opcode },
669     { Bad_Opcode },
670     { "vpsubb",	{ XM, Vex, EXx }, 0 },
671   },
672   /* PREFIX_EVEX_0FF9 */
673   {
674     { Bad_Opcode },
675     { Bad_Opcode },
676     { "vpsubw",	{ XM, Vex, EXx }, 0 },
677   },
678   /* PREFIX_EVEX_0FFA */
679   {
680     { Bad_Opcode },
681     { Bad_Opcode },
682     { VEX_W_TABLE (EVEX_W_0FFA_P_2) },
683   },
684   /* PREFIX_EVEX_0FFB */
685   {
686     { Bad_Opcode },
687     { Bad_Opcode },
688     { VEX_W_TABLE (EVEX_W_0FFB_P_2) },
689   },
690   /* PREFIX_EVEX_0FFC */
691   {
692     { Bad_Opcode },
693     { Bad_Opcode },
694     { "vpaddb",	{ XM, Vex, EXx }, 0 },
695   },
696   /* PREFIX_EVEX_0FFD */
697   {
698     { Bad_Opcode },
699     { Bad_Opcode },
700     { "vpaddw",	{ XM, Vex, EXx }, 0 },
701   },
702   /* PREFIX_EVEX_0FFE */
703   {
704     { Bad_Opcode },
705     { Bad_Opcode },
706     { VEX_W_TABLE (EVEX_W_0FFE_P_2) },
707   },
708   /* PREFIX_EVEX_0F3800 */
709   {
710     { Bad_Opcode },
711     { Bad_Opcode },
712     { "vpshufb",	{ XM, Vex, EXx }, 0 },
713   },
714   /* PREFIX_EVEX_0F3804 */
715   {
716     { Bad_Opcode },
717     { Bad_Opcode },
718     { "vpmaddubsw",	{ XM, Vex, EXx }, 0 },
719   },
720   /* PREFIX_EVEX_0F380B */
721   {
722     { Bad_Opcode },
723     { Bad_Opcode },
724     { "vpmulhrsw",	{ XM, Vex, EXx }, 0 },
725   },
726   /* PREFIX_EVEX_0F380C */
727   {
728     { Bad_Opcode },
729     { Bad_Opcode },
730     { VEX_W_TABLE (EVEX_W_0F380C_P_2) },
731   },
732   /* PREFIX_EVEX_0F380D */
733   {
734     { Bad_Opcode },
735     { Bad_Opcode },
736     { VEX_W_TABLE (EVEX_W_0F380D_P_2) },
737   },
738   /* PREFIX_EVEX_0F3810 */
739   {
740     { Bad_Opcode },
741     { VEX_W_TABLE (EVEX_W_0F3810_P_1) },
742     { VEX_W_TABLE (EVEX_W_0F3810_P_2) },
743   },
744   /* PREFIX_EVEX_0F3811 */
745   {
746     { Bad_Opcode },
747     { VEX_W_TABLE (EVEX_W_0F3811_P_1) },
748     { VEX_W_TABLE (EVEX_W_0F3811_P_2) },
749   },
750   /* PREFIX_EVEX_0F3812 */
751   {
752     { Bad_Opcode },
753     { VEX_W_TABLE (EVEX_W_0F3812_P_1) },
754     { VEX_W_TABLE (EVEX_W_0F3812_P_2) },
755   },
756   /* PREFIX_EVEX_0F3813 */
757   {
758     { Bad_Opcode },
759     { VEX_W_TABLE (EVEX_W_0F3813_P_1) },
760     { VEX_W_TABLE (EVEX_W_0F3813_P_2) },
761   },
762   /* PREFIX_EVEX_0F3814 */
763   {
764     { Bad_Opcode },
765     { VEX_W_TABLE (EVEX_W_0F3814_P_1) },
766     { "vprorv%LW",	{ XM, Vex, EXx }, 0 },
767   },
768   /* PREFIX_EVEX_0F3815 */
769   {
770     { Bad_Opcode },
771     { VEX_W_TABLE (EVEX_W_0F3815_P_1) },
772     { "vprolv%LW",	{ XM, Vex, EXx }, 0 },
773   },
774   /* PREFIX_EVEX_0F3816 */
775   {
776     { Bad_Opcode },
777     { Bad_Opcode },
778     { "vpermp%XW",	{ XM, Vex, EXx }, 0 },
779   },
780   /* PREFIX_EVEX_0F3818 */
781   {
782     { Bad_Opcode },
783     { Bad_Opcode },
784     { VEX_W_TABLE (EVEX_W_0F3818_P_2) },
785   },
786   /* PREFIX_EVEX_0F3819 */
787   {
788     { Bad_Opcode },
789     { Bad_Opcode },
790     { VEX_W_TABLE (EVEX_W_0F3819_P_2) },
791   },
792   /* PREFIX_EVEX_0F381A */
793   {
794     { Bad_Opcode },
795     { Bad_Opcode },
796     { VEX_W_TABLE (EVEX_W_0F381A_P_2) },
797   },
798   /* PREFIX_EVEX_0F381B */
799   {
800     { Bad_Opcode },
801     { Bad_Opcode },
802     { VEX_W_TABLE (EVEX_W_0F381B_P_2) },
803   },
804   /* PREFIX_EVEX_0F381C */
805   {
806     { Bad_Opcode },
807     { Bad_Opcode },
808     { "vpabsb",	{ XM, EXx }, 0 },
809   },
810   /* PREFIX_EVEX_0F381D */
811   {
812     { Bad_Opcode },
813     { Bad_Opcode },
814     { "vpabsw",	{ XM, EXx }, 0 },
815   },
816   /* PREFIX_EVEX_0F381E */
817   {
818     { Bad_Opcode },
819     { Bad_Opcode },
820     { VEX_W_TABLE (EVEX_W_0F381E_P_2) },
821   },
822   /* PREFIX_EVEX_0F381F */
823   {
824     { Bad_Opcode },
825     { Bad_Opcode },
826     { VEX_W_TABLE (EVEX_W_0F381F_P_2) },
827   },
828   /* PREFIX_EVEX_0F3820 */
829   {
830     { Bad_Opcode },
831     { VEX_W_TABLE (EVEX_W_0F3820_P_1) },
832     { "vpmovsxbw",	{ XM, EXxmmq }, 0 },
833   },
834   /* PREFIX_EVEX_0F3821 */
835   {
836     { Bad_Opcode },
837     { VEX_W_TABLE (EVEX_W_0F3821_P_1) },
838     { "vpmovsxbd",	{ XM, EXxmmqd }, 0 },
839   },
840   /* PREFIX_EVEX_0F3822 */
841   {
842     { Bad_Opcode },
843     { VEX_W_TABLE (EVEX_W_0F3822_P_1) },
844     { "vpmovsxbq",	{ XM, EXxmmdw }, 0 },
845   },
846   /* PREFIX_EVEX_0F3823 */
847   {
848     { Bad_Opcode },
849     { VEX_W_TABLE (EVEX_W_0F3823_P_1) },
850     { "vpmovsxwd",	{ XM, EXxmmq }, 0 },
851   },
852   /* PREFIX_EVEX_0F3824 */
853   {
854     { Bad_Opcode },
855     { VEX_W_TABLE (EVEX_W_0F3824_P_1) },
856     { "vpmovsxwq",	{ XM, EXxmmqd }, 0 },
857   },
858   /* PREFIX_EVEX_0F3825 */
859   {
860     { Bad_Opcode },
861     { VEX_W_TABLE (EVEX_W_0F3825_P_1) },
862     { VEX_W_TABLE (EVEX_W_0F3825_P_2) },
863   },
864   /* PREFIX_EVEX_0F3826 */
865   {
866     { Bad_Opcode },
867     { VEX_W_TABLE (EVEX_W_0F3826_P_1) },
868     { VEX_W_TABLE (EVEX_W_0F3826_P_2) },
869   },
870   /* PREFIX_EVEX_0F3827 */
871   {
872     { Bad_Opcode },
873     { "vptestnm%LW",	{ XMask, Vex, EXx }, 0 },
874     { "vptestm%LW",	{ XMask, Vex, EXx }, 0 },
875   },
876   /* PREFIX_EVEX_0F3828 */
877   {
878     { Bad_Opcode },
879     { VEX_W_TABLE (EVEX_W_0F3828_P_1) },
880     { VEX_W_TABLE (EVEX_W_0F3828_P_2) },
881   },
882   /* PREFIX_EVEX_0F3829 */
883   {
884     { Bad_Opcode },
885     { VEX_W_TABLE (EVEX_W_0F3829_P_1) },
886     { VEX_W_TABLE (EVEX_W_0F3829_P_2) },
887   },
888   /* PREFIX_EVEX_0F382A */
889   {
890     { Bad_Opcode },
891     { VEX_W_TABLE (EVEX_W_0F382A_P_1) },
892     { VEX_W_TABLE (EVEX_W_0F382A_P_2) },
893   },
894   /* PREFIX_EVEX_0F382B */
895   {
896     { Bad_Opcode },
897     { Bad_Opcode },
898     { VEX_W_TABLE (EVEX_W_0F382B_P_2) },
899   },
900   /* PREFIX_EVEX_0F382C */
901   {
902     { Bad_Opcode },
903     { Bad_Opcode },
904     { "vscalefp%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
905   },
906   /* PREFIX_EVEX_0F382D */
907   {
908     { Bad_Opcode },
909     { Bad_Opcode },
910     { "vscalefs%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
911   },
912   /* PREFIX_EVEX_0F3830 */
913   {
914     { Bad_Opcode },
915     { VEX_W_TABLE (EVEX_W_0F3830_P_1) },
916     { "vpmovzxbw",	{ XM, EXxmmq }, 0 },
917   },
918   /* PREFIX_EVEX_0F3831 */
919   {
920     { Bad_Opcode },
921     { VEX_W_TABLE (EVEX_W_0F3831_P_1) },
922     { "vpmovzxbd",	{ XM, EXxmmqd }, 0 },
923   },
924   /* PREFIX_EVEX_0F3832 */
925   {
926     { Bad_Opcode },
927     { VEX_W_TABLE (EVEX_W_0F3832_P_1) },
928     { "vpmovzxbq",	{ XM, EXxmmdw }, 0 },
929   },
930   /* PREFIX_EVEX_0F3833 */
931   {
932     { Bad_Opcode },
933     { VEX_W_TABLE (EVEX_W_0F3833_P_1) },
934     { "vpmovzxwd",	{ XM, EXxmmq }, 0 },
935   },
936   /* PREFIX_EVEX_0F3834 */
937   {
938     { Bad_Opcode },
939     { VEX_W_TABLE (EVEX_W_0F3834_P_1) },
940     { "vpmovzxwq",	{ XM, EXxmmqd }, 0 },
941   },
942   /* PREFIX_EVEX_0F3835 */
943   {
944     { Bad_Opcode },
945     { VEX_W_TABLE (EVEX_W_0F3835_P_1) },
946     { VEX_W_TABLE (EVEX_W_0F3835_P_2) },
947   },
948   /* PREFIX_EVEX_0F3836 */
949   {
950     { Bad_Opcode },
951     { Bad_Opcode },
952     { "vperm%LW",	{ XM, Vex, EXx }, 0 },
953   },
954   /* PREFIX_EVEX_0F3837 */
955   {
956     { Bad_Opcode },
957     { Bad_Opcode },
958     { VEX_W_TABLE (EVEX_W_0F3837_P_2) },
959   },
960   /* PREFIX_EVEX_0F3838 */
961   {
962     { Bad_Opcode },
963     { VEX_W_TABLE (EVEX_W_0F3838_P_1) },
964     { "vpminsb",	{ XM, Vex, EXx }, 0 },
965   },
966   /* PREFIX_EVEX_0F3839 */
967   {
968     { Bad_Opcode },
969     { VEX_W_TABLE (EVEX_W_0F3839_P_1) },
970     { "vpmins%LW",	{ XM, Vex, EXx }, 0 },
971   },
972   /* PREFIX_EVEX_0F383A */
973   {
974     { Bad_Opcode },
975     { VEX_W_TABLE (EVEX_W_0F383A_P_1) },
976     { "vpminuw",	{ XM, Vex, EXx }, 0 },
977   },
978   /* PREFIX_EVEX_0F383B */
979   {
980     { Bad_Opcode },
981     { Bad_Opcode },
982     { "vpminu%LW",	{ XM, Vex, EXx }, 0 },
983   },
984   /* PREFIX_EVEX_0F383C */
985   {
986     { Bad_Opcode },
987     { Bad_Opcode },
988     { "vpmaxsb",	{ XM, Vex, EXx }, 0 },
989   },
990   /* PREFIX_EVEX_0F383D */
991   {
992     { Bad_Opcode },
993     { Bad_Opcode },
994     { "vpmaxs%LW",	{ XM, Vex, EXx }, 0 },
995   },
996   /* PREFIX_EVEX_0F383E */
997   {
998     { Bad_Opcode },
999     { Bad_Opcode },
1000     { "vpmaxuw",	{ XM, Vex, EXx }, 0 },
1001   },
1002   /* PREFIX_EVEX_0F383F */
1003   {
1004     { Bad_Opcode },
1005     { Bad_Opcode },
1006     { "vpmaxu%LW",	{ XM, Vex, EXx }, 0 },
1007   },
1008   /* PREFIX_EVEX_0F3840 */
1009   {
1010     { Bad_Opcode },
1011     { Bad_Opcode },
1012     { VEX_W_TABLE (EVEX_W_0F3840_P_2) },
1013   },
1014   /* PREFIX_EVEX_0F3842 */
1015   {
1016     { Bad_Opcode },
1017     { Bad_Opcode },
1018     { "vgetexpp%XW",	{ XM, EXx, EXxEVexS }, 0 },
1019   },
1020   /* PREFIX_EVEX_0F3843 */
1021   {
1022     { Bad_Opcode },
1023     { Bad_Opcode },
1024     { "vgetexps%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexS }, 0 },
1025   },
1026   /* PREFIX_EVEX_0F3844 */
1027   {
1028     { Bad_Opcode },
1029     { Bad_Opcode },
1030     { "vplzcnt%LW",	{ XM, EXx }, 0 },
1031   },
1032   /* PREFIX_EVEX_0F3845 */
1033   {
1034     { Bad_Opcode },
1035     { Bad_Opcode },
1036     { "vpsrlv%LW",	{ XM, Vex, EXx }, 0 },
1037   },
1038   /* PREFIX_EVEX_0F3846 */
1039   {
1040     { Bad_Opcode },
1041     { Bad_Opcode },
1042     { "vpsrav%LW",	{ XM, Vex, EXx }, 0 },
1043   },
1044   /* PREFIX_EVEX_0F3847 */
1045   {
1046     { Bad_Opcode },
1047     { Bad_Opcode },
1048     { "vpsllv%LW",	{ XM, Vex, EXx }, 0 },
1049   },
1050   /* PREFIX_EVEX_0F384C */
1051   {
1052     { Bad_Opcode },
1053     { Bad_Opcode },
1054     { "vrcp14p%XW",	{ XM, EXx }, 0 },
1055   },
1056   /* PREFIX_EVEX_0F384D */
1057   {
1058     { Bad_Opcode },
1059     { Bad_Opcode },
1060     { "vrcp14s%XW",	{ XMScalar, VexScalar, EXxmm_mdq }, 0 },
1061   },
1062   /* PREFIX_EVEX_0F384E */
1063   {
1064     { Bad_Opcode },
1065     { Bad_Opcode },
1066     { "vrsqrt14p%XW",	{ XM, EXx }, 0 },
1067   },
1068   /* PREFIX_EVEX_0F384F */
1069   {
1070     { Bad_Opcode },
1071     { Bad_Opcode },
1072     { "vrsqrt14s%XW",	{ XMScalar, VexScalar, EXxmm_mdq }, 0 },
1073   },
1074   /* PREFIX_EVEX_0F3850 */
1075   {
1076     { Bad_Opcode },
1077     { Bad_Opcode },
1078     { "vpdpbusd",	{ XM, Vex, EXx }, 0 },
1079   },
1080   /* PREFIX_EVEX_0F3851 */
1081   {
1082     { Bad_Opcode },
1083     { Bad_Opcode },
1084     { "vpdpbusds",	{ XM, Vex, EXx }, 0 },
1085   },
1086   /* PREFIX_EVEX_0F3852 */
1087   {
1088     { Bad_Opcode },
1089     { VEX_W_TABLE (EVEX_W_0F3852_P_1) },
1090     { "vpdpwssd",	{ XM, Vex, EXx }, 0 },
1091     { "vp4dpwssd",	{ XM, Vex, EXxmm }, 0 },
1092   },
1093   /* PREFIX_EVEX_0F3853 */
1094   {
1095     { Bad_Opcode },
1096     { Bad_Opcode },
1097     { "vpdpwssds",	{ XM, Vex, EXx }, 0 },
1098     { "vp4dpwssds",	{ XM, Vex, EXxmm }, 0 },
1099   },
1100   /* PREFIX_EVEX_0F3854 */
1101   {
1102     { Bad_Opcode },
1103     { Bad_Opcode },
1104     { VEX_W_TABLE (EVEX_W_0F3854_P_2) },
1105   },
1106   /* PREFIX_EVEX_0F3855 */
1107   {
1108     { Bad_Opcode },
1109     { Bad_Opcode },
1110     { VEX_W_TABLE (EVEX_W_0F3855_P_2) },
1111   },
1112   /* PREFIX_EVEX_0F3858 */
1113   {
1114     { Bad_Opcode },
1115     { Bad_Opcode },
1116     { VEX_W_TABLE (EVEX_W_0F3858_P_2) },
1117   },
1118   /* PREFIX_EVEX_0F3859 */
1119   {
1120     { Bad_Opcode },
1121     { Bad_Opcode },
1122     { VEX_W_TABLE (EVEX_W_0F3859_P_2) },
1123   },
1124   /* PREFIX_EVEX_0F385A */
1125   {
1126     { Bad_Opcode },
1127     { Bad_Opcode },
1128     { VEX_W_TABLE (EVEX_W_0F385A_P_2) },
1129   },
1130   /* PREFIX_EVEX_0F385B */
1131   {
1132     { Bad_Opcode },
1133     { Bad_Opcode },
1134     { VEX_W_TABLE (EVEX_W_0F385B_P_2) },
1135   },
1136   /* PREFIX_EVEX_0F3862 */
1137   {
1138     { Bad_Opcode },
1139     { Bad_Opcode },
1140     { VEX_W_TABLE (EVEX_W_0F3862_P_2) },
1141   },
1142   /* PREFIX_EVEX_0F3863 */
1143   {
1144     { Bad_Opcode },
1145     { Bad_Opcode },
1146     { VEX_W_TABLE (EVEX_W_0F3863_P_2) },
1147   },
1148   /* PREFIX_EVEX_0F3864 */
1149   {
1150     { Bad_Opcode },
1151     { Bad_Opcode },
1152     { "vpblendm%LW",	{ XM, Vex, EXx }, 0 },
1153   },
1154   /* PREFIX_EVEX_0F3865 */
1155   {
1156     { Bad_Opcode },
1157     { Bad_Opcode },
1158     { "vblendmp%XW",	{ XM, Vex, EXx }, 0 },
1159   },
1160   /* PREFIX_EVEX_0F3866 */
1161   {
1162     { Bad_Opcode },
1163     { Bad_Opcode },
1164     { VEX_W_TABLE (EVEX_W_0F3866_P_2) },
1165   },
1166   /* PREFIX_EVEX_0F3868 */
1167   {
1168     { Bad_Opcode },
1169     { Bad_Opcode },
1170     { Bad_Opcode },
1171     { VEX_W_TABLE (EVEX_W_0F3868_P_3) },
1172   },
1173   /* PREFIX_EVEX_0F3870 */
1174   {
1175     { Bad_Opcode },
1176     { Bad_Opcode },
1177     { VEX_W_TABLE (EVEX_W_0F3870_P_2) },
1178   },
1179   /* PREFIX_EVEX_0F3871 */
1180   {
1181     { Bad_Opcode },
1182     { Bad_Opcode },
1183     { VEX_W_TABLE (EVEX_W_0F3871_P_2) },
1184   },
1185   /* PREFIX_EVEX_0F3872 */
1186   {
1187     { Bad_Opcode },
1188     { VEX_W_TABLE (EVEX_W_0F3872_P_1) },
1189     { VEX_W_TABLE (EVEX_W_0F3872_P_2) },
1190     { VEX_W_TABLE (EVEX_W_0F3872_P_3) },
1191   },
1192   /* PREFIX_EVEX_0F3873 */
1193   {
1194     { Bad_Opcode },
1195     { Bad_Opcode },
1196     { VEX_W_TABLE (EVEX_W_0F3873_P_2) },
1197   },
1198   /* PREFIX_EVEX_0F3875 */
1199   {
1200     { Bad_Opcode },
1201     { Bad_Opcode },
1202     { VEX_W_TABLE (EVEX_W_0F3875_P_2) },
1203   },
1204   /* PREFIX_EVEX_0F3876 */
1205   {
1206     { Bad_Opcode },
1207     { Bad_Opcode },
1208     { "vpermi2%LW",	{ XM, Vex, EXx }, 0 },
1209   },
1210   /* PREFIX_EVEX_0F3877 */
1211   {
1212     { Bad_Opcode },
1213     { Bad_Opcode },
1214     { "vpermi2p%XW",	{ XM, Vex, EXx }, 0 },
1215   },
1216   /* PREFIX_EVEX_0F3878 */
1217   {
1218     { Bad_Opcode },
1219     { Bad_Opcode },
1220     { VEX_W_TABLE (EVEX_W_0F3878_P_2) },
1221   },
1222   /* PREFIX_EVEX_0F3879 */
1223   {
1224     { Bad_Opcode },
1225     { Bad_Opcode },
1226     { VEX_W_TABLE (EVEX_W_0F3879_P_2) },
1227   },
1228   /* PREFIX_EVEX_0F387A */
1229   {
1230     { Bad_Opcode },
1231     { Bad_Opcode },
1232     { VEX_W_TABLE (EVEX_W_0F387A_P_2) },
1233   },
1234   /* PREFIX_EVEX_0F387B */
1235   {
1236     { Bad_Opcode },
1237     { Bad_Opcode },
1238     { VEX_W_TABLE (EVEX_W_0F387B_P_2) },
1239   },
1240   /* PREFIX_EVEX_0F387C */
1241   {
1242     { Bad_Opcode },
1243     { Bad_Opcode },
1244     { "vpbroadcastK",	{ XM, Rdq }, 0 },
1245   },
1246   /* PREFIX_EVEX_0F387D */
1247   {
1248     { Bad_Opcode },
1249     { Bad_Opcode },
1250     { VEX_W_TABLE (EVEX_W_0F387D_P_2) },
1251   },
1252   /* PREFIX_EVEX_0F387E */
1253   {
1254     { Bad_Opcode },
1255     { Bad_Opcode },
1256     { "vpermt2%LW",	{ XM, Vex, EXx }, 0 },
1257   },
1258   /* PREFIX_EVEX_0F387F */
1259   {
1260     { Bad_Opcode },
1261     { Bad_Opcode },
1262     { "vpermt2p%XW",	{ XM, Vex, EXx }, 0 },
1263   },
1264   /* PREFIX_EVEX_0F3883 */
1265   {
1266     { Bad_Opcode },
1267     { Bad_Opcode },
1268     { VEX_W_TABLE (EVEX_W_0F3883_P_2) },
1269   },
1270   /* PREFIX_EVEX_0F3888 */
1271   {
1272     { Bad_Opcode },
1273     { Bad_Opcode },
1274     { "vexpandp%XW",	{ XM, EXEvexXGscat }, 0 },
1275   },
1276   /* PREFIX_EVEX_0F3889 */
1277   {
1278     { Bad_Opcode },
1279     { Bad_Opcode },
1280     { "vpexpand%LW",	{ XM, EXEvexXGscat }, 0 },
1281   },
1282   /* PREFIX_EVEX_0F388A */
1283   {
1284     { Bad_Opcode },
1285     { Bad_Opcode },
1286     { "vcompressp%XW",	{ EXEvexXGscat, XM }, 0 },
1287   },
1288   /* PREFIX_EVEX_0F388B */
1289   {
1290     { Bad_Opcode },
1291     { Bad_Opcode },
1292     { "vpcompress%LW",	{ EXEvexXGscat, XM }, 0 },
1293   },
1294   /* PREFIX_EVEX_0F388D */
1295   {
1296     { Bad_Opcode },
1297     { Bad_Opcode },
1298     { VEX_W_TABLE (EVEX_W_0F388D_P_2) },
1299   },
1300   /* PREFIX_EVEX_0F388F */
1301   {
1302     { Bad_Opcode },
1303     { Bad_Opcode },
1304     { "vpshufbitqmb",  { XMask, Vex, EXx }, 0 },
1305   },
1306   /* PREFIX_EVEX_0F3890 */
1307   {
1308     { Bad_Opcode },
1309     { Bad_Opcode },
1310     { "vpgatherd%LW",	{ XM, MVexVSIBDWpX }, 0 },
1311   },
1312   /* PREFIX_EVEX_0F3891 */
1313   {
1314     { Bad_Opcode },
1315     { Bad_Opcode },
1316     { VEX_W_TABLE (EVEX_W_0F3891_P_2) },
1317   },
1318   /* PREFIX_EVEX_0F3892 */
1319   {
1320     { Bad_Opcode },
1321     { Bad_Opcode },
1322     { "vgatherdp%XW",	{ XM, MVexVSIBDWpX}, 0 },
1323   },
1324   /* PREFIX_EVEX_0F3893 */
1325   {
1326     { Bad_Opcode },
1327     { Bad_Opcode },
1328     { VEX_W_TABLE (EVEX_W_0F3893_P_2) },
1329   },
1330   /* PREFIX_EVEX_0F3896 */
1331   {
1332     { Bad_Opcode },
1333     { Bad_Opcode },
1334     { "vfmaddsub132p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1335   },
1336   /* PREFIX_EVEX_0F3897 */
1337   {
1338     { Bad_Opcode },
1339     { Bad_Opcode },
1340     { "vfmsubadd132p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1341   },
1342   /* PREFIX_EVEX_0F3898 */
1343   {
1344     { Bad_Opcode },
1345     { Bad_Opcode },
1346     { "vfmadd132p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1347   },
1348   /* PREFIX_EVEX_0F3899 */
1349   {
1350     { Bad_Opcode },
1351     { Bad_Opcode },
1352     { "vfmadd132s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1353   },
1354   /* PREFIX_EVEX_0F389A */
1355   {
1356     { Bad_Opcode },
1357     { Bad_Opcode },
1358     { "vfmsub132p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1359     { "v4fmaddps",	{ XM, Vex, Mxmm }, 0 },
1360   },
1361   /* PREFIX_EVEX_0F389B */
1362   {
1363     { Bad_Opcode },
1364     { Bad_Opcode },
1365     { "vfmsub132s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1366     { "v4fmaddss",	{ XMScalar, VexScalar, Mxmm }, 0 },
1367   },
1368   /* PREFIX_EVEX_0F389C */
1369   {
1370     { Bad_Opcode },
1371     { Bad_Opcode },
1372     { "vfnmadd132p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1373   },
1374   /* PREFIX_EVEX_0F389D */
1375   {
1376     { Bad_Opcode },
1377     { Bad_Opcode },
1378     { "vfnmadd132s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1379   },
1380   /* PREFIX_EVEX_0F389E */
1381   {
1382     { Bad_Opcode },
1383     { Bad_Opcode },
1384     { "vfnmsub132p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1385   },
1386   /* PREFIX_EVEX_0F389F */
1387   {
1388     { Bad_Opcode },
1389     { Bad_Opcode },
1390     { "vfnmsub132s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1391   },
1392   /* PREFIX_EVEX_0F38A0 */
1393   {
1394     { Bad_Opcode },
1395     { Bad_Opcode },
1396     { "vpscatterd%LW",	{ MVexVSIBDWpX, XM }, 0 },
1397   },
1398   /* PREFIX_EVEX_0F38A1 */
1399   {
1400     { Bad_Opcode },
1401     { Bad_Opcode },
1402     { VEX_W_TABLE (EVEX_W_0F38A1_P_2) },
1403   },
1404   /* PREFIX_EVEX_0F38A2 */
1405   {
1406     { Bad_Opcode },
1407     { Bad_Opcode },
1408     { "vscatterdp%XW",	{ MVexVSIBDWpX, XM }, 0 },
1409   },
1410   /* PREFIX_EVEX_0F38A3 */
1411   {
1412     { Bad_Opcode },
1413     { Bad_Opcode },
1414     { VEX_W_TABLE (EVEX_W_0F38A3_P_2) },
1415   },
1416   /* PREFIX_EVEX_0F38A6 */
1417   {
1418     { Bad_Opcode },
1419     { Bad_Opcode },
1420     { "vfmaddsub213p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1421   },
1422   /* PREFIX_EVEX_0F38A7 */
1423   {
1424     { Bad_Opcode },
1425     { Bad_Opcode },
1426     { "vfmsubadd213p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1427   },
1428   /* PREFIX_EVEX_0F38A8 */
1429   {
1430     { Bad_Opcode },
1431     { Bad_Opcode },
1432     { "vfmadd213p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1433   },
1434   /* PREFIX_EVEX_0F38A9 */
1435   {
1436     { Bad_Opcode },
1437     { Bad_Opcode },
1438     { "vfmadd213s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1439   },
1440   /* PREFIX_EVEX_0F38AA */
1441   {
1442     { Bad_Opcode },
1443     { Bad_Opcode },
1444     { "vfmsub213p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1445     { "v4fnmaddps",	{ XM, Vex, Mxmm }, 0 },
1446   },
1447   /* PREFIX_EVEX_0F38AB */
1448   {
1449     { Bad_Opcode },
1450     { Bad_Opcode },
1451     { "vfmsub213s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1452     { "v4fnmaddss",	{ XMScalar, VexScalar, Mxmm }, 0 },
1453   },
1454   /* PREFIX_EVEX_0F38AC */
1455   {
1456     { Bad_Opcode },
1457     { Bad_Opcode },
1458     { "vfnmadd213p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1459   },
1460   /* PREFIX_EVEX_0F38AD */
1461   {
1462     { Bad_Opcode },
1463     { Bad_Opcode },
1464     { "vfnmadd213s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1465   },
1466   /* PREFIX_EVEX_0F38AE */
1467   {
1468     { Bad_Opcode },
1469     { Bad_Opcode },
1470     { "vfnmsub213p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1471   },
1472   /* PREFIX_EVEX_0F38AF */
1473   {
1474     { Bad_Opcode },
1475     { Bad_Opcode },
1476     { "vfnmsub213s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1477   },
1478   /* PREFIX_EVEX_0F38B4 */
1479   {
1480     { Bad_Opcode },
1481     { Bad_Opcode },
1482     { "vpmadd52luq",	{ XM, Vex, EXx }, 0 },
1483   },
1484   /* PREFIX_EVEX_0F38B5 */
1485   {
1486     { Bad_Opcode },
1487     { Bad_Opcode },
1488     { "vpmadd52huq",	{ XM, Vex, EXx }, 0 },
1489   },
1490   /* PREFIX_EVEX_0F38B6 */
1491   {
1492     { Bad_Opcode },
1493     { Bad_Opcode },
1494     { "vfmaddsub231p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1495   },
1496   /* PREFIX_EVEX_0F38B7 */
1497   {
1498     { Bad_Opcode },
1499     { Bad_Opcode },
1500     { "vfmsubadd231p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1501   },
1502   /* PREFIX_EVEX_0F38B8 */
1503   {
1504     { Bad_Opcode },
1505     { Bad_Opcode },
1506     { "vfmadd231p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1507   },
1508   /* PREFIX_EVEX_0F38B9 */
1509   {
1510     { Bad_Opcode },
1511     { Bad_Opcode },
1512     { "vfmadd231s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1513   },
1514   /* PREFIX_EVEX_0F38BA */
1515   {
1516     { Bad_Opcode },
1517     { Bad_Opcode },
1518     { "vfmsub231p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1519   },
1520   /* PREFIX_EVEX_0F38BB */
1521   {
1522     { Bad_Opcode },
1523     { Bad_Opcode },
1524     { "vfmsub231s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1525   },
1526   /* PREFIX_EVEX_0F38BC */
1527   {
1528     { Bad_Opcode },
1529     { Bad_Opcode },
1530     { "vfnmadd231p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1531   },
1532   /* PREFIX_EVEX_0F38BD */
1533   {
1534     { Bad_Opcode },
1535     { Bad_Opcode },
1536     { "vfnmadd231s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1537   },
1538   /* PREFIX_EVEX_0F38BE */
1539   {
1540     { Bad_Opcode },
1541     { Bad_Opcode },
1542     { "vfnmsub231p%XW",	{ XM, Vex, EXx, EXxEVexR }, 0 },
1543   },
1544   /* PREFIX_EVEX_0F38BF */
1545   {
1546     { Bad_Opcode },
1547     { Bad_Opcode },
1548     { "vfnmsub231s%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexR }, 0 },
1549   },
1550   /* PREFIX_EVEX_0F38C4 */
1551   {
1552     { Bad_Opcode },
1553     { Bad_Opcode },
1554     { "vpconflict%LW",	{ XM, EXx }, 0 },
1555   },
1556   /* PREFIX_EVEX_0F38C6_REG_1 */
1557   {
1558     { Bad_Opcode },
1559     { Bad_Opcode },
1560     { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_1_PREFIX_2) },
1561   },
1562   /* PREFIX_EVEX_0F38C6_REG_2 */
1563   {
1564     { Bad_Opcode },
1565     { Bad_Opcode },
1566     { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_2_PREFIX_2) },
1567   },
1568   /* PREFIX_EVEX_0F38C6_REG_5 */
1569   {
1570     { Bad_Opcode },
1571     { Bad_Opcode },
1572     { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_5_PREFIX_2) },
1573   },
1574   /* PREFIX_EVEX_0F38C6_REG_6 */
1575   {
1576     { Bad_Opcode },
1577     { Bad_Opcode },
1578     { EVEX_LEN_TABLE (EVEX_LEN_0F38C6_REG_6_PREFIX_2) },
1579   },
1580   /* PREFIX_EVEX_0F38C7_REG_1 */
1581   {
1582     { Bad_Opcode },
1583     { Bad_Opcode },
1584     { VEX_W_TABLE (EVEX_W_0F38C7_R_1_P_2) },
1585   },
1586   /* PREFIX_EVEX_0F38C7_REG_2 */
1587   {
1588     { Bad_Opcode },
1589     { Bad_Opcode },
1590     { VEX_W_TABLE (EVEX_W_0F38C7_R_2_P_2) },
1591   },
1592   /* PREFIX_EVEX_0F38C7_REG_5 */
1593   {
1594     { Bad_Opcode },
1595     { Bad_Opcode },
1596     { VEX_W_TABLE (EVEX_W_0F38C7_R_5_P_2) },
1597   },
1598   /* PREFIX_EVEX_0F38C7_REG_6 */
1599   {
1600     { Bad_Opcode },
1601     { Bad_Opcode },
1602     { VEX_W_TABLE (EVEX_W_0F38C7_R_6_P_2) },
1603   },
1604   /* PREFIX_EVEX_0F38C8 */
1605   {
1606     { Bad_Opcode },
1607     { Bad_Opcode },
1608     { "vexp2p%XW",        { XM, EXx, EXxEVexS }, 0 },
1609   },
1610   /* PREFIX_EVEX_0F38CA */
1611   {
1612     { Bad_Opcode },
1613     { Bad_Opcode },
1614     { "vrcp28p%XW",       { XM, EXx, EXxEVexS }, 0 },
1615   },
1616   /* PREFIX_EVEX_0F38CB */
1617   {
1618     { Bad_Opcode },
1619     { Bad_Opcode },
1620     { "vrcp28s%XW",       { XMScalar, VexScalar, EXxmm_mdq, EXxEVexS }, 0 },
1621   },
1622   /* PREFIX_EVEX_0F38CC */
1623   {
1624     { Bad_Opcode },
1625     { Bad_Opcode },
1626     { "vrsqrt28p%XW",     { XM, EXx, EXxEVexS }, 0 },
1627   },
1628   /* PREFIX_EVEX_0F38CD */
1629   {
1630     { Bad_Opcode },
1631     { Bad_Opcode },
1632     { "vrsqrt28s%XW",     { XMScalar, VexScalar, EXxmm_mdq, EXxEVexS }, 0 },
1633   },
1634   /* PREFIX_EVEX_0F38CF */
1635   {
1636     { Bad_Opcode },
1637     { Bad_Opcode },
1638     { "vgf2p8mulb",	{ XM, Vex, EXx }, 0 },
1639   },
1640   /* PREFIX_EVEX_0F38DC */
1641   {
1642     { Bad_Opcode },
1643     { Bad_Opcode },
1644     { "vaesenc",       { XM, Vex, EXx }, 0 },
1645   },
1646   /* PREFIX_EVEX_0F38DD */
1647   {
1648     { Bad_Opcode },
1649     { Bad_Opcode },
1650     { "vaesenclast",   { XM, Vex, EXx }, 0 },
1651   },
1652   /* PREFIX_EVEX_0F38DE */
1653   {
1654     { Bad_Opcode },
1655     { Bad_Opcode },
1656     { "vaesdec",       { XM, Vex, EXx }, 0 },
1657   },
1658   /* PREFIX_EVEX_0F38DF */
1659   {
1660     { Bad_Opcode },
1661     { Bad_Opcode },
1662     { "vaesdeclast",   { XM, Vex, EXx }, 0 },
1663   },
1664   /* PREFIX_EVEX_0F3A00 */
1665   {
1666     { Bad_Opcode },
1667     { Bad_Opcode },
1668     { VEX_W_TABLE (EVEX_W_0F3A00_P_2) },
1669   },
1670   /* PREFIX_EVEX_0F3A01 */
1671   {
1672     { Bad_Opcode },
1673     { Bad_Opcode },
1674     { VEX_W_TABLE (EVEX_W_0F3A01_P_2) },
1675   },
1676   /* PREFIX_EVEX_0F3A03 */
1677   {
1678     { Bad_Opcode },
1679     { Bad_Opcode },
1680     { "valign%LW",	{ XM, Vex, EXx, Ib }, 0 },
1681   },
1682   /* PREFIX_EVEX_0F3A04 */
1683   {
1684     { Bad_Opcode },
1685     { Bad_Opcode },
1686     { VEX_W_TABLE (EVEX_W_0F3A04_P_2) },
1687   },
1688   /* PREFIX_EVEX_0F3A05 */
1689   {
1690     { Bad_Opcode },
1691     { Bad_Opcode },
1692     { VEX_W_TABLE (EVEX_W_0F3A05_P_2) },
1693   },
1694   /* PREFIX_EVEX_0F3A08 */
1695   {
1696     { Bad_Opcode },
1697     { Bad_Opcode },
1698     { VEX_W_TABLE (EVEX_W_0F3A08_P_2) },
1699   },
1700   /* PREFIX_EVEX_0F3A09 */
1701   {
1702     { Bad_Opcode },
1703     { Bad_Opcode },
1704     { VEX_W_TABLE (EVEX_W_0F3A09_P_2) },
1705   },
1706   /* PREFIX_EVEX_0F3A0A */
1707   {
1708     { Bad_Opcode },
1709     { Bad_Opcode },
1710     { VEX_W_TABLE (EVEX_W_0F3A0A_P_2) },
1711   },
1712   /* PREFIX_EVEX_0F3A0B */
1713   {
1714     { Bad_Opcode },
1715     { Bad_Opcode },
1716     { VEX_W_TABLE (EVEX_W_0F3A0B_P_2) },
1717   },
1718   /* PREFIX_EVEX_0F3A0F */
1719   {
1720     { Bad_Opcode },
1721     { Bad_Opcode },
1722     { "vpalignr",	{ XM, Vex, EXx, Ib }, 0 },
1723   },
1724   /* PREFIX_EVEX_0F3A14 */
1725   {
1726     { Bad_Opcode },
1727     { Bad_Opcode },
1728     { "vpextrb",	{ Edqb, XM, Ib }, 0 },
1729   },
1730   /* PREFIX_EVEX_0F3A15 */
1731   {
1732     { Bad_Opcode },
1733     { Bad_Opcode },
1734     { "vpextrw",	{ Edqw, XM, Ib }, 0 },
1735   },
1736   /* PREFIX_EVEX_0F3A16 */
1737   {
1738     { Bad_Opcode },
1739     { Bad_Opcode },
1740     { "vpextrK",	{ Edq, XM, Ib }, 0 },
1741   },
1742   /* PREFIX_EVEX_0F3A17 */
1743   {
1744     { Bad_Opcode },
1745     { Bad_Opcode },
1746     { "vextractps",	{ Edqd, XMM, Ib }, 0 },
1747   },
1748   /* PREFIX_EVEX_0F3A18 */
1749   {
1750     { Bad_Opcode },
1751     { Bad_Opcode },
1752     { VEX_W_TABLE (EVEX_W_0F3A18_P_2) },
1753   },
1754   /* PREFIX_EVEX_0F3A19 */
1755   {
1756     { Bad_Opcode },
1757     { Bad_Opcode },
1758     { VEX_W_TABLE (EVEX_W_0F3A19_P_2) },
1759   },
1760   /* PREFIX_EVEX_0F3A1A */
1761   {
1762     { Bad_Opcode },
1763     { Bad_Opcode },
1764     { VEX_W_TABLE (EVEX_W_0F3A1A_P_2) },
1765   },
1766   /* PREFIX_EVEX_0F3A1B */
1767   {
1768     { Bad_Opcode },
1769     { Bad_Opcode },
1770     { VEX_W_TABLE (EVEX_W_0F3A1B_P_2) },
1771   },
1772   /* PREFIX_EVEX_0F3A1D */
1773   {
1774     { Bad_Opcode },
1775     { Bad_Opcode },
1776     { VEX_W_TABLE (EVEX_W_0F3A1D_P_2) },
1777   },
1778   /* PREFIX_EVEX_0F3A1E */
1779   {
1780     { Bad_Opcode },
1781     { Bad_Opcode },
1782     { "vpcmpu%LW",	{ XMask, Vex, EXx, VPCMP }, 0 },
1783   },
1784   /* PREFIX_EVEX_0F3A1F */
1785   {
1786     { Bad_Opcode },
1787     { Bad_Opcode },
1788     { "vpcmp%LW",	{ XMask, Vex, EXx, VPCMP }, 0 },
1789   },
1790   /* PREFIX_EVEX_0F3A20 */
1791   {
1792     { Bad_Opcode },
1793     { Bad_Opcode },
1794     { "vpinsrb",	{ XM, Vex128, Edb, Ib }, 0 },
1795   },
1796   /* PREFIX_EVEX_0F3A21 */
1797   {
1798     { Bad_Opcode },
1799     { Bad_Opcode },
1800     { VEX_W_TABLE (EVEX_W_0F3A21_P_2) },
1801   },
1802   /* PREFIX_EVEX_0F3A22 */
1803   {
1804     { Bad_Opcode },
1805     { Bad_Opcode },
1806     { "vpinsrK",	{ XM, Vex128, Edq, Ib }, 0 },
1807   },
1808   /* PREFIX_EVEX_0F3A23 */
1809   {
1810     { Bad_Opcode },
1811     { Bad_Opcode },
1812     { VEX_W_TABLE (EVEX_W_0F3A23_P_2) },
1813   },
1814   /* PREFIX_EVEX_0F3A25 */
1815   {
1816     { Bad_Opcode },
1817     { Bad_Opcode },
1818     { "vpternlog%LW",	{ XM, Vex, EXx, Ib }, 0 },
1819   },
1820   /* PREFIX_EVEX_0F3A26 */
1821   {
1822     { Bad_Opcode },
1823     { Bad_Opcode },
1824     { "vgetmantp%XW",	{ XM, EXx, EXxEVexS, Ib }, 0 },
1825   },
1826   /* PREFIX_EVEX_0F3A27 */
1827   {
1828     { Bad_Opcode },
1829     { Bad_Opcode },
1830     { "vgetmants%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexS, Ib }, 0 },
1831   },
1832   /* PREFIX_EVEX_0F3A38 */
1833   {
1834     { Bad_Opcode },
1835     { Bad_Opcode },
1836     { VEX_W_TABLE (EVEX_W_0F3A38_P_2) },
1837   },
1838   /* PREFIX_EVEX_0F3A39 */
1839   {
1840     { Bad_Opcode },
1841     { Bad_Opcode },
1842     { VEX_W_TABLE (EVEX_W_0F3A39_P_2) },
1843   },
1844   /* PREFIX_EVEX_0F3A3A */
1845   {
1846     { Bad_Opcode },
1847     { Bad_Opcode },
1848     { VEX_W_TABLE (EVEX_W_0F3A3A_P_2) },
1849   },
1850   /* PREFIX_EVEX_0F3A3B */
1851   {
1852     { Bad_Opcode },
1853     { Bad_Opcode },
1854     { VEX_W_TABLE (EVEX_W_0F3A3B_P_2) },
1855   },
1856   /* PREFIX_EVEX_0F3A3E */
1857   {
1858     { Bad_Opcode },
1859     { Bad_Opcode },
1860     { VEX_W_TABLE (EVEX_W_0F3A3E_P_2) },
1861   },
1862   /* PREFIX_EVEX_0F3A3F */
1863   {
1864     { Bad_Opcode },
1865     { Bad_Opcode },
1866     { VEX_W_TABLE (EVEX_W_0F3A3F_P_2) },
1867   },
1868   /* PREFIX_EVEX_0F3A42 */
1869   {
1870     { Bad_Opcode },
1871     { Bad_Opcode },
1872     { VEX_W_TABLE (EVEX_W_0F3A42_P_2) },
1873   },
1874   /* PREFIX_EVEX_0F3A43 */
1875   {
1876     { Bad_Opcode },
1877     { Bad_Opcode },
1878     { VEX_W_TABLE (EVEX_W_0F3A43_P_2) },
1879   },
1880   /* PREFIX_EVEX_0F3A44 */
1881   {
1882     { Bad_Opcode },
1883     { Bad_Opcode },
1884     { "vpclmulqdq",	{ XM, Vex, EXx, PCLMUL }, 0 },
1885   },
1886   /* PREFIX_EVEX_0F3A50 */
1887   {
1888     { Bad_Opcode },
1889     { Bad_Opcode },
1890     { VEX_W_TABLE (EVEX_W_0F3A50_P_2) },
1891   },
1892   /* PREFIX_EVEX_0F3A51 */
1893   {
1894     { Bad_Opcode },
1895     { Bad_Opcode },
1896     { VEX_W_TABLE (EVEX_W_0F3A51_P_2) },
1897   },
1898   /* PREFIX_EVEX_0F3A54 */
1899   {
1900     { Bad_Opcode },
1901     { Bad_Opcode },
1902     { "vfixupimmp%XW",	{ XM, Vex, EXx, EXxEVexS, Ib }, 0 },
1903   },
1904   /* PREFIX_EVEX_0F3A55 */
1905   {
1906     { Bad_Opcode },
1907     { Bad_Opcode },
1908     { "vfixupimms%XW",	{ XMScalar, VexScalar, EXxmm_mdq, EXxEVexS, Ib }, 0 },
1909   },
1910   /* PREFIX_EVEX_0F3A56 */
1911   {
1912     { Bad_Opcode },
1913     { Bad_Opcode },
1914     { VEX_W_TABLE (EVEX_W_0F3A56_P_2) },
1915   },
1916   /* PREFIX_EVEX_0F3A57 */
1917   {
1918     { Bad_Opcode },
1919     { Bad_Opcode },
1920     { VEX_W_TABLE (EVEX_W_0F3A57_P_2) },
1921   },
1922   /* PREFIX_EVEX_0F3A66 */
1923   {
1924     { Bad_Opcode },
1925     { Bad_Opcode },
1926     { VEX_W_TABLE (EVEX_W_0F3A66_P_2) },
1927   },
1928   /* PREFIX_EVEX_0F3A67 */
1929   {
1930     { Bad_Opcode },
1931     { Bad_Opcode },
1932     { VEX_W_TABLE (EVEX_W_0F3A67_P_2) },
1933   },
1934   /* PREFIX_EVEX_0F3A70 */
1935   {
1936     { Bad_Opcode },
1937     { Bad_Opcode },
1938     { VEX_W_TABLE (EVEX_W_0F3A70_P_2) },
1939   },
1940   /* PREFIX_EVEX_0F3A71 */
1941   {
1942     { Bad_Opcode },
1943     { Bad_Opcode },
1944     { VEX_W_TABLE (EVEX_W_0F3A71_P_2) },
1945   },
1946   /* PREFIX_EVEX_0F3A72 */
1947   {
1948     { Bad_Opcode },
1949     { Bad_Opcode },
1950     { VEX_W_TABLE (EVEX_W_0F3A72_P_2) },
1951   },
1952   /* PREFIX_EVEX_0F3A73 */
1953   {
1954     { Bad_Opcode },
1955     { Bad_Opcode },
1956     { VEX_W_TABLE (EVEX_W_0F3A73_P_2) },
1957   },
1958   /* PREFIX_EVEX_0F3ACE */
1959   {
1960     { Bad_Opcode },
1961     { Bad_Opcode },
1962     { VEX_W_TABLE (EVEX_W_0F3ACE_P_2) },
1963   },
1964   /* PREFIX_EVEX_0F3ACF */
1965   {
1966     { Bad_Opcode },
1967     { Bad_Opcode },
1968     { VEX_W_TABLE (EVEX_W_0F3ACF_P_2) },
1969   },
1970