xref: /netbsd-src/external/gpl3/gdb.old/dist/opcodes/i386-dis-evex-w.h (revision b2c35e17b976cf7ccd7250c86c6f5e95090ed636)
1   /* EVEX_W_0F10_P_1 */
2   {
3     { "vmovss",	{ XMScalar, VexScalarR, EXxmm_md }, 0 },
4   },
5   /* EVEX_W_0F10_P_3 */
6   {
7     { Bad_Opcode },
8     { "vmovsd",	{ XMScalar, VexScalarR, EXxmm_mq }, 0 },
9   },
10   /* EVEX_W_0F11_P_1 */
11   {
12     { "vmovss",	{ EXdS, VexScalarR, XMScalar }, 0 },
13   },
14   /* EVEX_W_0F11_P_3 */
15   {
16     { Bad_Opcode },
17     { "vmovsd",	{ EXqS, VexScalarR, XMScalar }, 0 },
18   },
19   /* EVEX_W_0F12_P_0_M_1 */
20   {
21     { "vmovhlps",	{ XMM, Vex, EXxmm_mq }, 0 },
22   },
23   /* EVEX_W_0F12_P_1 */
24   {
25     { "vmovsldup",	{ XM, EXEvexXNoBcst }, 0 },
26   },
27   /* EVEX_W_0F12_P_3 */
28   {
29     { Bad_Opcode },
30     { "vmovddup",	{ XM, EXymmq }, 0 },
31   },
32   /* EVEX_W_0F16_P_0_M_1 */
33   {
34     { "vmovlhps",	{ XMM, Vex, EXx }, 0 },
35   },
36   /* EVEX_W_0F16_P_1 */
37   {
38     { "vmovshdup",	{ XM, EXx }, 0 },
39   },
40   /* EVEX_W_0F2A_P_3 */
41   {
42     { "vcvtsi2sd{%LQ|}",	{ XMScalar, VexScalar, Ed }, 0 },
43     { "vcvtsi2sd{%LQ|}",	{ XMScalar, VexScalar, EXxEVexR64, Edq }, 0 },
44   },
45   /* EVEX_W_0F51_P_1 */
46   {
47     { "vsqrtss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexR }, 0 },
48   },
49   /* EVEX_W_0F51_P_3 */
50   {
51     { Bad_Opcode },
52     { "vsqrtsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexR }, 0 },
53   },
54   /* EVEX_W_0F58_P_1 */
55   {
56     { "vaddss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexR }, 0 },
57   },
58   /* EVEX_W_0F58_P_3 */
59   {
60     { Bad_Opcode },
61     { "vaddsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexR }, 0 },
62   },
63   /* EVEX_W_0F59_P_1 */
64   {
65     { "vmulss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexR }, 0 },
66   },
67   /* EVEX_W_0F59_P_3 */
68   {
69     { Bad_Opcode },
70     { "vmulsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexR }, 0 },
71   },
72   /* EVEX_W_0F5A_P_0 */
73   {
74     { "vcvtps2pd",   { XM, EXEvexHalfBcstXmmq, EXxEVexS }, 0 },
75   },
76   /* EVEX_W_0F5A_P_1 */
77   {
78     { "vcvtss2sd",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexS }, 0 },
79   },
80   /* EVEX_W_0F5A_P_2 */
81   {
82     { Bad_Opcode },
83     { "vcvtpd2ps%XY",	{ XMxmmq, EXx, EXxEVexR }, 0 },
84   },
85   /* EVEX_W_0F5A_P_3 */
86   {
87     { Bad_Opcode },
88     { "vcvtsd2ss",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexR }, 0 },
89   },
90   /* EVEX_W_0F5B_P_0 */
91   {
92     { "vcvtdq2ps",	{ XM, EXx, EXxEVexR }, 0 },
93     { "vcvtqq2ps%XY",	{ XMxmmq, EXx, EXxEVexR }, 0 },
94   },
95   /* EVEX_W_0F5B_P_1 */
96   {
97     { "vcvttps2dq",	{ XM, EXx, EXxEVexS }, 0 },
98   },
99   /* EVEX_W_0F5B_P_2 */
100   {
101     { "vcvtps2dq",	{ XM, EXx, EXxEVexR }, 0 },
102   },
103   /* EVEX_W_0F5C_P_1 */
104   {
105     { "vsubss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexR }, 0 },
106   },
107   /* EVEX_W_0F5C_P_3 */
108   {
109     { Bad_Opcode },
110     { "vsubsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexR }, 0 },
111   },
112   /* EVEX_W_0F5D_P_1 */
113   {
114     { "vminss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexS }, 0 },
115   },
116   /* EVEX_W_0F5D_P_3 */
117   {
118     { Bad_Opcode },
119     { "vminsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexS }, 0 },
120   },
121   /* EVEX_W_0F5E_P_1 */
122   {
123     { "vdivss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexR }, 0 },
124   },
125   /* EVEX_W_0F5E_P_3 */
126   {
127     { Bad_Opcode },
128     { "vdivsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexR }, 0 },
129   },
130   /* EVEX_W_0F5F_P_1 */
131   {
132     { "vmaxss",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexS }, 0 },
133   },
134   /* EVEX_W_0F5F_P_3 */
135   {
136     { Bad_Opcode },
137     { "vmaxsd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexS }, 0 },
138   },
139   /* EVEX_W_0F62 */
140   {
141     { "vpunpckldq",	{ XM, Vex, EXx }, PREFIX_DATA },
142   },
143   /* EVEX_W_0F66 */
144   {
145     { "vpcmpgtd",	{ XMask, Vex, EXx }, PREFIX_DATA },
146   },
147   /* EVEX_W_0F6A */
148   {
149     { "vpunpckhdq",	{ XM, Vex, EXx }, PREFIX_DATA },
150   },
151   /* EVEX_W_0F6B */
152   {
153     { "vpackssdw",	{ XM, Vex, EXx }, PREFIX_DATA },
154   },
155   /* EVEX_W_0F6C */
156   {
157     { Bad_Opcode },
158     { "vpunpcklqdq",	{ XM, Vex, EXx }, PREFIX_DATA },
159   },
160   /* EVEX_W_0F6D */
161   {
162     { Bad_Opcode },
163     { "vpunpckhqdq",	{ XM, Vex, EXx }, PREFIX_DATA },
164   },
165   /* EVEX_W_0F6F_P_1 */
166   {
167     { "vmovdqu32",	{ XM, EXEvexXNoBcst }, 0 },
168     { "vmovdqu64",	{ XM, EXEvexXNoBcst }, 0 },
169   },
170   /* EVEX_W_0F6F_P_2 */
171   {
172     { "vmovdqa32",	{ XM, EXEvexXNoBcst }, 0 },
173     { "vmovdqa64",	{ XM, EXEvexXNoBcst }, 0 },
174   },
175   /* EVEX_W_0F6F_P_3 */
176   {
177     { "vmovdqu8",	{ XM, EXx }, 0 },
178     { "vmovdqu16",	{ XM, EXx }, 0 },
179   },
180   /* EVEX_W_0F70_P_2 */
181   {
182     { "vpshufd",	{ XM, EXx, Ib }, 0 },
183   },
184   /* EVEX_W_0F72_R_2 */
185   {
186     { "vpsrld",	{ Vex, EXx, Ib }, PREFIX_DATA },
187   },
188   /* EVEX_W_0F72_R_6 */
189   {
190     { "vpslld",	{ Vex, EXx, Ib }, PREFIX_DATA },
191   },
192   /* EVEX_W_0F73_R_2 */
193   {
194     { Bad_Opcode },
195     { "vpsrlq",	{ Vex, EXx, Ib }, PREFIX_DATA },
196   },
197   /* EVEX_W_0F73_R_6 */
198   {
199     { Bad_Opcode },
200     { "vpsllq",	{ Vex, EXx, Ib }, PREFIX_DATA },
201   },
202   /* EVEX_W_0F76 */
203   {
204     { "vpcmpeqd",	{ XMask, Vex, EXx }, PREFIX_DATA },
205   },
206   /* EVEX_W_0F78_P_0 */
207   {
208     { "vcvttps2udq",	{ XM, EXx, EXxEVexS }, 0 },
209     { "vcvttpd2udq%XY",	{ XMxmmq, EXx, EXxEVexS }, 0 },
210   },
211   /* EVEX_W_0F78_P_2 */
212   {
213     { "vcvttps2uqq",	{ XM, EXEvexHalfBcstXmmq, EXxEVexS }, 0 },
214     { "vcvttpd2uqq",	{ XM, EXx, EXxEVexS }, 0 },
215   },
216   /* EVEX_W_0F79_P_0 */
217   {
218     { "vcvtps2udq",	{ XM, EXx, EXxEVexR }, 0 },
219     { "vcvtpd2udq%XY",	{ XMxmmq, EXx, EXxEVexR }, 0 },
220   },
221   /* EVEX_W_0F79_P_2 */
222   {
223     { "vcvtps2uqq",	{ XM, EXEvexHalfBcstXmmq, EXxEVexR }, 0 },
224     { "vcvtpd2uqq",	{ XM, EXx, EXxEVexR }, 0 },
225   },
226   /* EVEX_W_0F7A_P_1 */
227   {
228     { "vcvtudq2pd",	{ XM, EXEvexHalfBcstXmmq }, 0 },
229     { "vcvtuqq2pd",	{ XM, EXx, EXxEVexR }, 0 },
230   },
231   /* EVEX_W_0F7A_P_2 */
232   {
233     { "vcvttps2qq",	{ XM, EXEvexHalfBcstXmmq, EXxEVexS }, 0 },
234     { "vcvttpd2qq",	{ XM, EXx, EXxEVexS }, 0 },
235   },
236   /* EVEX_W_0F7A_P_3 */
237   {
238     { "vcvtudq2ps",	{ XM, EXx, EXxEVexR }, 0 },
239     { "vcvtuqq2ps%XY",	{ XMxmmq, EXx, EXxEVexR }, 0 },
240   },
241   /* EVEX_W_0F7B_P_2 */
242   {
243     { "vcvtps2qq",	{ XM, EXEvexHalfBcstXmmq, EXxEVexR }, 0 },
244     { "vcvtpd2qq",	{ XM, EXx, EXxEVexR }, 0 },
245   },
246   /* EVEX_W_0F7B_P_3 */
247   {
248     { "vcvtusi2sd{%LQ|}",	{ XMScalar, VexScalar, Ed }, 0 },
249     { "vcvtusi2sd{%LQ|}",	{ XMScalar, VexScalar, EXxEVexR64, Edq }, 0 },
250   },
251   /* EVEX_W_0F7E_P_1 */
252   {
253     { Bad_Opcode },
254     { "vmovq",	{ XMScalar, EXxmm_mq }, 0 },
255   },
256   /* EVEX_W_0F7F_P_1 */
257   {
258     { "vmovdqu32",	{ EXxS, XM }, 0 },
259     { "vmovdqu64",	{ EXxS, XM }, 0 },
260   },
261   /* EVEX_W_0F7F_P_2 */
262   {
263     { "vmovdqa32",	{ EXxS, XM }, 0 },
264     { "vmovdqa64",	{ EXxS, XM }, 0 },
265   },
266   /* EVEX_W_0F7F_P_3 */
267   {
268     { "vmovdqu8",	{ EXxS, XM }, 0 },
269     { "vmovdqu16",	{ EXxS, XM }, 0 },
270   },
271   /* EVEX_W_0FC2_P_1 */
272   {
273     { "vcmpss",	{ XMask, VexScalar, EXxmm_md, EXxEVexS, CMP }, 0 },
274   },
275   /* EVEX_W_0FC2_P_3 */
276   {
277     { Bad_Opcode },
278     { "vcmpsd",	{ XMask, VexScalar, EXxmm_mq, EXxEVexS, CMP }, 0 },
279   },
280   /* EVEX_W_0FD2 */
281   {
282     { "vpsrld",		{ XM, Vex, EXxmm }, PREFIX_DATA },
283   },
284   /* EVEX_W_0FD3 */
285   {
286     { Bad_Opcode },
287     { "vpsrlq",		{ XM, Vex, EXxmm }, PREFIX_DATA },
288   },
289   /* EVEX_W_0FD4 */
290   {
291     { Bad_Opcode },
292     { "vpaddq",		{ XM, Vex, EXx }, PREFIX_DATA },
293   },
294   /* EVEX_W_0FD6_L_0 */
295   {
296     { Bad_Opcode },
297     { "vmovq",	{ EXqS, XMScalar }, PREFIX_DATA },
298   },
299   /* EVEX_W_0FE6_P_1 */
300   {
301     { "vcvtdq2pd",	{ XM, EXEvexHalfBcstXmmq }, 0 },
302     { "vcvtqq2pd",	{ XM, EXx, EXxEVexR }, 0 },
303   },
304   /* EVEX_W_0FE6_P_2 */
305   {
306     { Bad_Opcode },
307     { "vcvttpd2dq%XY",	{ XMxmmq, EXx, EXxEVexS }, 0 },
308   },
309   /* EVEX_W_0FE6_P_3 */
310   {
311     { Bad_Opcode },
312     { "vcvtpd2dq%XY",	{ XMxmmq, EXx, EXxEVexR }, 0 },
313   },
314   /* EVEX_W_0FE7 */
315   {
316     { "vmovntdq",	{ EXEvexXNoBcst, XM }, PREFIX_DATA },
317   },
318   /* EVEX_W_0FF2 */
319   {
320     { "vpslld",		{ XM, Vex, EXxmm }, PREFIX_DATA },
321   },
322   /* EVEX_W_0FF3 */
323   {
324     { Bad_Opcode },
325     { "vpsllq",		{ XM, Vex, EXxmm }, PREFIX_DATA },
326   },
327   /* EVEX_W_0FF4 */
328   {
329     { Bad_Opcode },
330     { "vpmuludq",	{ XM, Vex, EXx }, PREFIX_DATA },
331   },
332   /* EVEX_W_0FFA */
333   {
334     { "vpsubd",		{ XM, Vex, EXx }, PREFIX_DATA },
335   },
336   /* EVEX_W_0FFB */
337   {
338     { Bad_Opcode },
339     { "vpsubq",		{ XM, Vex, EXx }, PREFIX_DATA },
340   },
341   /* EVEX_W_0FFE */
342   {
343     { "vpaddd",		{ XM, Vex, EXx }, PREFIX_DATA },
344   },
345   /* EVEX_W_0F380D */
346   {
347     { Bad_Opcode },
348     { "vpermilpd",	{ XM, Vex, EXx }, PREFIX_DATA },
349   },
350   /* EVEX_W_0F3810_P_1 */
351   {
352     { "vpmovuswb",	{ EXxmmq, XM }, 0 },
353   },
354   /* EVEX_W_0F3810_P_2 */
355   {
356     { Bad_Opcode },
357     { "vpsrlvw",	{ XM, Vex, EXx }, 0 },
358   },
359   /* EVEX_W_0F3811_P_1 */
360   {
361     { "vpmovusdb",	{ EXxmmqd, XM }, 0 },
362   },
363   /* EVEX_W_0F3811_P_2 */
364   {
365     { Bad_Opcode },
366     { "vpsravw",	{ XM, Vex, EXx }, 0 },
367   },
368   /* EVEX_W_0F3812_P_1 */
369   {
370     { "vpmovusqb",	{ EXxmmdw, XM }, 0 },
371   },
372   /* EVEX_W_0F3812_P_2 */
373   {
374     { Bad_Opcode },
375     { "vpsllvw",	{ XM, Vex, EXx }, 0 },
376   },
377   /* EVEX_W_0F3813_P_1 */
378   {
379     { "vpmovusdw",	{ EXxmmq, XM }, 0 },
380   },
381   /* EVEX_W_0F3813_P_2 */
382   {
383     { "vcvtph2ps",	{ XM, EXxmmq, EXxEVexS }, 0 },
384   },
385   /* EVEX_W_0F3814_P_1 */
386   {
387     { "vpmovusqw",	{ EXxmmqd, XM }, 0 },
388   },
389   /* EVEX_W_0F3815_P_1 */
390   {
391     { "vpmovusqd",	{ EXxmmq, XM }, 0 },
392   },
393   /* EVEX_W_0F3819 */
394   {
395     { EVEX_LEN_TABLE (EVEX_LEN_0F3819_W_0) },
396     { EVEX_LEN_TABLE (EVEX_LEN_0F3819_W_1) },
397   },
398   /* EVEX_W_0F381A */
399   {
400     { MOD_TABLE (MOD_EVEX_0F381A_W_0) },
401     { MOD_TABLE (MOD_EVEX_0F381A_W_1) },
402   },
403   /* EVEX_W_0F381B */
404   {
405     { MOD_TABLE (MOD_EVEX_0F381B_W_0) },
406     { MOD_TABLE (MOD_EVEX_0F381B_W_1) },
407   },
408   /* EVEX_W_0F381E */
409   {
410     { "vpabsd",	{ XM, EXx }, PREFIX_DATA },
411   },
412   /* EVEX_W_0F381F */
413   {
414     { Bad_Opcode },
415     { "vpabsq",	{ XM, EXx }, PREFIX_DATA },
416   },
417   /* EVEX_W_0F3820_P_1 */
418   {
419     { "vpmovswb",	{ EXxmmq, XM }, 0 },
420   },
421   /* EVEX_W_0F3821_P_1 */
422   {
423     { "vpmovsdb",	{ EXxmmqd, XM }, 0 },
424   },
425   /* EVEX_W_0F3822_P_1 */
426   {
427     { "vpmovsqb",	{ EXxmmdw, XM }, 0 },
428   },
429   /* EVEX_W_0F3823_P_1 */
430   {
431     { "vpmovsdw",	{ EXxmmq, XM }, 0 },
432   },
433   /* EVEX_W_0F3824_P_1 */
434   {
435     { "vpmovsqw",	{ EXxmmqd, XM }, 0 },
436   },
437   /* EVEX_W_0F3825_P_1 */
438   {
439     { "vpmovsqd",	{ EXxmmq, XM }, 0 },
440   },
441   /* EVEX_W_0F3825_P_2 */
442   {
443     { "vpmovsxdq",	{ XM, EXxmmq }, 0 },
444   },
445   /* EVEX_W_0F3828_P_2 */
446   {
447     { Bad_Opcode },
448     { "vpmuldq",	{ XM, Vex, EXx }, 0 },
449   },
450   /* EVEX_W_0F3829_P_2 */
451   {
452     { Bad_Opcode },
453     { "vpcmpeqq",	{ XMask, Vex, EXx }, 0 },
454   },
455   /* EVEX_W_0F382A_P_1 */
456   {
457     { Bad_Opcode },
458     { MOD_TABLE (MOD_EVEX_0F382A_P_1_W_1) },
459   },
460   /* EVEX_W_0F382A_P_2 */
461   {
462     { "vmovntdqa",	{ XM, EXEvexXNoBcst }, 0 },
463   },
464   /* EVEX_W_0F382B */
465   {
466     { "vpackusdw",	{ XM, Vex, EXx }, PREFIX_DATA },
467   },
468   /* EVEX_W_0F3830_P_1 */
469   {
470     { "vpmovwb",	{ EXxmmq, XM }, 0 },
471   },
472   /* EVEX_W_0F3831_P_1 */
473   {
474     { "vpmovdb",	{ EXxmmqd, XM }, 0 },
475   },
476   /* EVEX_W_0F3832_P_1 */
477   {
478     { "vpmovqb",	{ EXxmmdw, XM }, 0 },
479   },
480   /* EVEX_W_0F3833_P_1 */
481   {
482     { "vpmovdw",	{ EXxmmq, XM }, 0 },
483   },
484   /* EVEX_W_0F3834_P_1 */
485   {
486     { "vpmovqw",	{ EXxmmqd, XM }, 0 },
487   },
488   /* EVEX_W_0F3835_P_1 */
489   {
490     { "vpmovqd",	{ EXxmmq, XM }, 0 },
491   },
492   /* EVEX_W_0F3835_P_2 */
493   {
494     { "vpmovzxdq",	{ XM, EXxmmq }, 0 },
495   },
496   /* EVEX_W_0F3837 */
497   {
498     { Bad_Opcode },
499     { "vpcmpgtq",	{ XMask, Vex, EXx }, PREFIX_DATA },
500   },
501   /* EVEX_W_0F383A_P_1 */
502   {
503     { MOD_TABLE (MOD_EVEX_0F383A_P_1_W_0) },
504   },
505   /* EVEX_W_0F3852_P_1 */
506   {
507     { "vdpbf16ps",	{ XM, Vex, EXx }, 0 },
508     { Bad_Opcode },
509   },
510   /* EVEX_W_0F3859 */
511   {
512     { "vbroadcasti32x2",	{ XM, EXxmm_mq }, PREFIX_DATA },
513     { "vpbroadcastq",	{ XM, EXxmm_mq }, PREFIX_DATA },
514   },
515   /* EVEX_W_0F385A */
516   {
517     { MOD_TABLE (MOD_EVEX_0F385A_W_0) },
518     { MOD_TABLE (MOD_EVEX_0F385A_W_1) },
519   },
520   /* EVEX_W_0F385B */
521   {
522     { MOD_TABLE (MOD_EVEX_0F385B_W_0) },
523     { MOD_TABLE (MOD_EVEX_0F385B_W_1) },
524   },
525   /* EVEX_W_0F3870 */
526   {
527     { Bad_Opcode },
528     { "vpshldvw",  { XM, Vex, EXx }, PREFIX_DATA },
529   },
530   /* EVEX_W_0F3872_P_1 */
531   {
532     { "vcvtneps2bf16%XY", { XMxmmq, EXx }, 0 },
533     { Bad_Opcode },
534   },
535   /* EVEX_W_0F3872_P_2 */
536   {
537     { Bad_Opcode },
538     { "vpshrdvw",  { XM, Vex, EXx }, 0 },
539   },
540   /* EVEX_W_0F3872_P_3 */
541   {
542     { "vcvtne2ps2bf16", { XM, Vex, EXx}, 0 },
543     { Bad_Opcode },
544   },
545   /* EVEX_W_0F387A */
546   {
547     { MOD_TABLE (MOD_EVEX_0F387A_W_0) },
548   },
549   /* EVEX_W_0F387B */
550   {
551     { MOD_TABLE (MOD_EVEX_0F387B_W_0) },
552   },
553   /* EVEX_W_0F3883 */
554   {
555     { Bad_Opcode },
556     { "vpmultishiftqb",	{ XM, Vex, EXx }, PREFIX_DATA },
557   },
558   /* EVEX_W_0F3891 */
559   {
560     { "vpgatherqd",	{ XMxmmq, MVexVSIBQDWpX }, PREFIX_DATA },
561     { "vpgatherqq",	{ XM, MVexVSIBQWpX }, 0 },
562   },
563   /* EVEX_W_0F3893 */
564   {
565     { "vgatherqps",	{ XMxmmq, MVexVSIBQDWpX }, PREFIX_DATA },
566     { "vgatherqpd",	{ XM, MVexVSIBQWpX }, 0 },
567   },
568   /* EVEX_W_0F38A1 */
569   {
570     { "vpscatterqd",	{ MVexVSIBQDWpX, XMxmmq }, PREFIX_DATA },
571     { "vpscatterqq",	{ MVexVSIBQWpX, XM }, 0 },
572   },
573   /* EVEX_W_0F38A3 */
574   {
575     { "vscatterqps",	{ MVexVSIBQDWpX, XMxmmq }, PREFIX_DATA },
576     { "vscatterqpd",	{ MVexVSIBQWpX, XM }, 0 },
577   },
578   /* EVEX_W_0F38C7_R_1_M_0 */
579   {
580     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_1_M_0_W_0) },
581     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_1_M_0_W_1) },
582   },
583   /* EVEX_W_0F38C7_R_2_M_0 */
584   {
585     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_2_M_0_W_0) },
586     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_2_M_0_W_1) },
587   },
588   /* EVEX_W_0F38C7_R_5_M_0 */
589   {
590     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_5_M_0_W_0) },
591     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_5_M_0_W_1) },
592   },
593   /* EVEX_W_0F38C7_R_6_M_0 */
594   {
595     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_6_M_0_W_0) },
596     { EVEX_LEN_TABLE (EVEX_LEN_0F38C7_R_6_M_0_W_1) },
597   },
598   /* EVEX_W_0F3A00 */
599   {
600     { Bad_Opcode },
601     { EVEX_LEN_TABLE (EVEX_LEN_0F3A00_W_1) },
602   },
603   /* EVEX_W_0F3A01 */
604   {
605     { Bad_Opcode },
606     { EVEX_LEN_TABLE (EVEX_LEN_0F3A01_W_1) },
607   },
608   /* EVEX_W_0F3A05 */
609   {
610     { Bad_Opcode },
611     { "vpermilpd",	{ XM, EXx, Ib }, PREFIX_DATA },
612   },
613   /* EVEX_W_0F3A08 */
614   {
615     { "vrndscaleps",	{ XM, EXx, EXxEVexS, Ib }, PREFIX_DATA },
616   },
617   /* EVEX_W_0F3A09 */
618   {
619     { Bad_Opcode },
620     { "vrndscalepd",	{ XM, EXx, EXxEVexS, Ib }, PREFIX_DATA },
621   },
622   /* EVEX_W_0F3A0A */
623   {
624     { "vrndscaless",	{ XMScalar, VexScalar, EXxmm_md, EXxEVexS, Ib }, PREFIX_DATA },
625   },
626   /* EVEX_W_0F3A0B */
627   {
628     { Bad_Opcode },
629     { "vrndscalesd",	{ XMScalar, VexScalar, EXxmm_mq, EXxEVexS, Ib }, PREFIX_DATA },
630   },
631   /* EVEX_W_0F3A18 */
632   {
633     { EVEX_LEN_TABLE (EVEX_LEN_0F3A18_W_0) },
634     { EVEX_LEN_TABLE (EVEX_LEN_0F3A18_W_1) },
635   },
636   /* EVEX_W_0F3A19 */
637   {
638     { EVEX_LEN_TABLE (EVEX_LEN_0F3A19_W_0) },
639     { EVEX_LEN_TABLE (EVEX_LEN_0F3A19_W_1) },
640   },
641   /* EVEX_W_0F3A1A */
642   {
643     { EVEX_LEN_TABLE (EVEX_LEN_0F3A1A_W_0) },
644     { EVEX_LEN_TABLE (EVEX_LEN_0F3A1A_W_1) },
645   },
646   /* EVEX_W_0F3A1B */
647   {
648     { EVEX_LEN_TABLE (EVEX_LEN_0F3A1B_W_0) },
649     { EVEX_LEN_TABLE (EVEX_LEN_0F3A1B_W_1) },
650   },
651   /* EVEX_W_0F3A21 */
652   {
653     { EVEX_LEN_TABLE (EVEX_LEN_0F3A21_W_0) },
654   },
655   /* EVEX_W_0F3A23 */
656   {
657     { EVEX_LEN_TABLE (EVEX_LEN_0F3A23_W_0) },
658     { EVEX_LEN_TABLE (EVEX_LEN_0F3A23_W_1) },
659   },
660   /* EVEX_W_0F3A38 */
661   {
662     { EVEX_LEN_TABLE (EVEX_LEN_0F3A38_W_0) },
663     { EVEX_LEN_TABLE (EVEX_LEN_0F3A38_W_1) },
664   },
665   /* EVEX_W_0F3A39 */
666   {
667     { EVEX_LEN_TABLE (EVEX_LEN_0F3A39_W_0) },
668     { EVEX_LEN_TABLE (EVEX_LEN_0F3A39_W_1) },
669   },
670   /* EVEX_W_0F3A3A */
671   {
672     { EVEX_LEN_TABLE (EVEX_LEN_0F3A3A_W_0) },
673     { EVEX_LEN_TABLE (EVEX_LEN_0F3A3A_W_1) },
674   },
675   /* EVEX_W_0F3A3B */
676   {
677     { EVEX_LEN_TABLE (EVEX_LEN_0F3A3B_W_0) },
678     { EVEX_LEN_TABLE (EVEX_LEN_0F3A3B_W_1) },
679   },
680   /* EVEX_W_0F3A42 */
681   {
682     { "vdbpsadbw",	{ XM, Vex, EXx, Ib }, 0 },
683   },
684   /* EVEX_W_0F3A43 */
685   {
686     { EVEX_LEN_TABLE (EVEX_LEN_0F3A43_W_0) },
687     { EVEX_LEN_TABLE (EVEX_LEN_0F3A43_W_1) },
688   },
689   /* EVEX_W_0F3A70 */
690   {
691     { Bad_Opcode },
692     { "vpshldw",   { XM, Vex, EXx, Ib }, 0 },
693   },
694   /* EVEX_W_0F3A72 */
695   {
696     { Bad_Opcode },
697     { "vpshrdw",   { XM, Vex, EXx, Ib }, 0 },
698   },
699