i386-dis-evex-len.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. static const struct dis386 evex_len_table[][3] = {
  2. /* EVEX_LEN_0F3816 */
  3. {
  4. { Bad_Opcode },
  5. { "vpermp%XW", { XM, Vex, EXx }, PREFIX_DATA },
  6. { "vpermp%XW", { XM, Vex, EXx }, PREFIX_DATA },
  7. },
  8. /* EVEX_LEN_0F3819 */
  9. {
  10. { Bad_Opcode },
  11. { VEX_W_TABLE (EVEX_W_0F3819_L_n) },
  12. { VEX_W_TABLE (EVEX_W_0F3819_L_n) },
  13. },
  14. /* EVEX_LEN_0F381A_M_0 */
  15. {
  16. { Bad_Opcode },
  17. { VEX_W_TABLE (EVEX_W_0F381A_M_0_L_n) },
  18. { VEX_W_TABLE (EVEX_W_0F381A_M_0_L_n) },
  19. },
  20. /* EVEX_LEN_0F381B_M_0 */
  21. {
  22. { Bad_Opcode },
  23. { Bad_Opcode },
  24. { VEX_W_TABLE (EVEX_W_0F381B_M_0_L_2) },
  25. },
  26. /* EVEX_LEN_0F3836 */
  27. {
  28. { Bad_Opcode },
  29. { "vperm%DQ", { XM, Vex, EXx }, PREFIX_DATA },
  30. { "vperm%DQ", { XM, Vex, EXx }, PREFIX_DATA },
  31. },
  32. /* EVEX_LEN_0F385A_M_0 */
  33. {
  34. { Bad_Opcode },
  35. { VEX_W_TABLE (EVEX_W_0F385A_M_0_L_n) },
  36. { VEX_W_TABLE (EVEX_W_0F385A_M_0_L_n) },
  37. },
  38. /* EVEX_LEN_0F385B_M_0 */
  39. {
  40. { Bad_Opcode },
  41. { Bad_Opcode },
  42. { VEX_W_TABLE (EVEX_W_0F385B_M_0_L_2) },
  43. },
  44. /* EVEX_LEN_0F38C6_M_0 */
  45. {
  46. { Bad_Opcode },
  47. { Bad_Opcode },
  48. { REG_TABLE (REG_EVEX_0F38C6_M_0_L_2) },
  49. },
  50. /* EVEX_LEN_0F38C7_M_0 */
  51. {
  52. { Bad_Opcode },
  53. { Bad_Opcode },
  54. { REG_TABLE (REG_EVEX_0F38C7_M_0_L_2) },
  55. },
  56. /* EVEX_LEN_0F3A00 */
  57. {
  58. { Bad_Opcode },
  59. { VEX_W_TABLE (VEX_W_0F3A00_L_1) },
  60. { VEX_W_TABLE (VEX_W_0F3A00_L_1) },
  61. },
  62. /* EVEX_LEN_0F3A01 */
  63. {
  64. { Bad_Opcode },
  65. { VEX_W_TABLE (VEX_W_0F3A01_L_1) },
  66. { VEX_W_TABLE (VEX_W_0F3A01_L_1) },
  67. },
  68. /* EVEX_LEN_0F3A18 */
  69. {
  70. { Bad_Opcode },
  71. { VEX_W_TABLE (EVEX_W_0F3A18_L_n) },
  72. { VEX_W_TABLE (EVEX_W_0F3A18_L_n) },
  73. },
  74. /* EVEX_LEN_0F3A19 */
  75. {
  76. { Bad_Opcode },
  77. { VEX_W_TABLE (EVEX_W_0F3A19_L_n) },
  78. { VEX_W_TABLE (EVEX_W_0F3A19_L_n) },
  79. },
  80. /* EVEX_LEN_0F3A1A */
  81. {
  82. { Bad_Opcode },
  83. { Bad_Opcode },
  84. { VEX_W_TABLE (EVEX_W_0F3A1A_L_2) },
  85. },
  86. /* EVEX_LEN_0F3A1B */
  87. {
  88. { Bad_Opcode },
  89. { Bad_Opcode },
  90. { VEX_W_TABLE (EVEX_W_0F3A1B_L_2) },
  91. },
  92. /* EVEX_LEN_0F3A23 */
  93. {
  94. { Bad_Opcode },
  95. { VEX_W_TABLE (EVEX_W_0F3A23_L_n) },
  96. { VEX_W_TABLE (EVEX_W_0F3A23_L_n) },
  97. },
  98. /* EVEX_LEN_0F3A38 */
  99. {
  100. { Bad_Opcode },
  101. { VEX_W_TABLE (EVEX_W_0F3A38_L_n) },
  102. { VEX_W_TABLE (EVEX_W_0F3A38_L_n) },
  103. },
  104. /* EVEX_LEN_0F3A39 */
  105. {
  106. { Bad_Opcode },
  107. { VEX_W_TABLE (EVEX_W_0F3A39_L_n) },
  108. { VEX_W_TABLE (EVEX_W_0F3A39_L_n) },
  109. },
  110. /* EVEX_LEN_0F3A3A */
  111. {
  112. { Bad_Opcode },
  113. { Bad_Opcode },
  114. { VEX_W_TABLE (EVEX_W_0F3A3A_L_2) },
  115. },
  116. /* EVEX_LEN_0F3A3B */
  117. {
  118. { Bad_Opcode },
  119. { Bad_Opcode },
  120. { VEX_W_TABLE (EVEX_W_0F3A3B_L_2) },
  121. },
  122. /* EVEX_LEN_0F3A43 */
  123. {
  124. { Bad_Opcode },
  125. { VEX_W_TABLE (EVEX_W_0F3A43_L_n) },
  126. { VEX_W_TABLE (EVEX_W_0F3A43_L_n) },
  127. },
  128. };