crabstone 3.0.3 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGES.md +45 -42
  3. data/README.md +16 -33
  4. data/lib/crabstone.rb +5 -557
  5. data/lib/crabstone/arch.rb +37 -0
  6. data/lib/{arch → crabstone/arch/3}/arm.rb +28 -49
  7. data/lib/crabstone/arch/3/arm64.rb +124 -0
  8. data/lib/{arch → crabstone/arch/3}/arm64_const.rb +45 -86
  9. data/lib/{arch → crabstone/arch/3}/arm_const.rb +19 -47
  10. data/lib/crabstone/arch/3/mips.rb +57 -0
  11. data/lib/{arch → crabstone/arch/3}/mips_const.rb +18 -38
  12. data/lib/crabstone/arch/3/ppc.rb +73 -0
  13. data/lib/{arch → crabstone/arch/3}/ppc_const.rb +27 -43
  14. data/lib/crabstone/arch/3/sparc.rb +60 -0
  15. data/lib/{arch → crabstone/arch/3}/sparc_const.rb +49 -67
  16. data/lib/crabstone/arch/3/sysz.rb +67 -0
  17. data/lib/{arch → crabstone/arch/3}/sysz_const.rb +11 -25
  18. data/lib/crabstone/arch/3/x86.rb +82 -0
  19. data/lib/{arch → crabstone/arch/3}/x86_const.rb +15 -36
  20. data/lib/crabstone/arch/3/xcore.rb +59 -0
  21. data/lib/{arch → crabstone/arch/3}/xcore_const.rb +10 -22
  22. data/lib/crabstone/arch/4/arm.rb +110 -0
  23. data/lib/crabstone/arch/4/arm64.rb +125 -0
  24. data/lib/crabstone/arch/4/arm64_const.rb +1016 -0
  25. data/lib/crabstone/arch/4/arm_const.rb +785 -0
  26. data/lib/crabstone/arch/4/evm.rb +20 -0
  27. data/lib/crabstone/arch/4/evm_const.rb +161 -0
  28. data/lib/crabstone/arch/4/m680x.rb +106 -0
  29. data/lib/crabstone/arch/4/m680x_const.rb +426 -0
  30. data/lib/crabstone/arch/4/m68k.rb +129 -0
  31. data/lib/crabstone/arch/4/m68k_const.rb +496 -0
  32. data/lib/crabstone/arch/4/mips.rb +57 -0
  33. data/lib/crabstone/arch/4/mips_const.rb +869 -0
  34. data/lib/crabstone/arch/4/ppc.rb +73 -0
  35. data/lib/crabstone/arch/4/ppc_const.rb +1375 -0
  36. data/lib/crabstone/arch/4/sparc.rb +60 -0
  37. data/lib/crabstone/arch/4/sparc_const.rb +439 -0
  38. data/lib/crabstone/arch/4/sysz.rb +67 -0
  39. data/lib/crabstone/arch/4/sysz_const.rb +763 -0
  40. data/lib/crabstone/arch/4/tms320c64x.rb +87 -0
  41. data/lib/crabstone/arch/4/tms320c64x_const.rb +287 -0
  42. data/lib/crabstone/arch/4/x86.rb +91 -0
  43. data/lib/crabstone/arch/4/x86_const.rb +1972 -0
  44. data/lib/crabstone/arch/4/xcore.rb +59 -0
  45. data/lib/crabstone/arch/4/xcore_const.rb +171 -0
  46. data/lib/crabstone/arch/extension.rb +27 -0
  47. data/lib/crabstone/arch/register.rb +36 -0
  48. data/lib/crabstone/binding.rb +60 -0
  49. data/lib/crabstone/binding/3/detail.rb +36 -0
  50. data/lib/crabstone/binding/3/instruction.rb +23 -0
  51. data/lib/crabstone/binding/4/detail.rb +40 -0
  52. data/lib/crabstone/binding/4/instruction.rb +23 -0
  53. data/lib/crabstone/binding/structs.rb +32 -0
  54. data/lib/crabstone/constants.rb +110 -0
  55. data/lib/crabstone/cs_version.rb +49 -0
  56. data/lib/crabstone/disassembler.rb +153 -0
  57. data/lib/crabstone/error.rb +60 -0
  58. data/lib/crabstone/instruction.rb +183 -0
  59. data/lib/crabstone/version.rb +5 -0
  60. metadata +128 -324
  61. data/MANIFEST +0 -312
  62. data/Rakefile +0 -27
  63. data/bin/genconst +0 -66
  64. data/bin/genreg +0 -99
  65. data/crabstone.gemspec +0 -27
  66. data/examples/hello_world.rb +0 -43
  67. data/lib/arch/arm64.rb +0 -167
  68. data/lib/arch/arm64_registers.rb +0 -295
  69. data/lib/arch/arm_registers.rb +0 -149
  70. data/lib/arch/mips.rb +0 -78
  71. data/lib/arch/mips_registers.rb +0 -208
  72. data/lib/arch/ppc.rb +0 -90
  73. data/lib/arch/ppc_registers.rb +0 -209
  74. data/lib/arch/sparc.rb +0 -79
  75. data/lib/arch/sparc_registers.rb +0 -121
  76. data/lib/arch/systemz.rb +0 -79
  77. data/lib/arch/sysz_registers.rb +0 -66
  78. data/lib/arch/x86.rb +0 -107
  79. data/lib/arch/x86_registers.rb +0 -265
  80. data/lib/arch/xcore.rb +0 -78
  81. data/lib/arch/xcore_registers.rb +0 -57
  82. data/test/MC/AArch64/basic-a64-instructions.s.cs +0 -2014
  83. data/test/MC/AArch64/gicv3-regs.s.cs +0 -111
  84. data/test/MC/AArch64/neon-2velem.s.cs +0 -113
  85. data/test/MC/AArch64/neon-3vdiff.s.cs +0 -143
  86. data/test/MC/AArch64/neon-aba-abd.s.cs +0 -28
  87. data/test/MC/AArch64/neon-across.s.cs +0 -40
  88. data/test/MC/AArch64/neon-add-pairwise.s.cs +0 -11
  89. data/test/MC/AArch64/neon-add-sub-instructions.s.cs +0 -21
  90. data/test/MC/AArch64/neon-bitwise-instructions.s.cs +0 -17
  91. data/test/MC/AArch64/neon-compare-instructions.s.cs +0 -136
  92. data/test/MC/AArch64/neon-crypto.s.cs +0 -15
  93. data/test/MC/AArch64/neon-extract.s.cs +0 -3
  94. data/test/MC/AArch64/neon-facge-facgt.s.cs +0 -13
  95. data/test/MC/AArch64/neon-frsqrt-frecp.s.cs +0 -7
  96. data/test/MC/AArch64/neon-halving-add-sub.s.cs +0 -25
  97. data/test/MC/AArch64/neon-max-min-pairwise.s.cs +0 -37
  98. data/test/MC/AArch64/neon-max-min.s.cs +0 -37
  99. data/test/MC/AArch64/neon-mla-mls-instructions.s.cs +0 -19
  100. data/test/MC/AArch64/neon-mov.s.cs +0 -74
  101. data/test/MC/AArch64/neon-mul-div-instructions.s.cs +0 -24
  102. data/test/MC/AArch64/neon-perm.s.cs +0 -43
  103. data/test/MC/AArch64/neon-rounding-halving-add.s.cs +0 -13
  104. data/test/MC/AArch64/neon-rounding-shift.s.cs +0 -15
  105. data/test/MC/AArch64/neon-saturating-add-sub.s.cs +0 -29
  106. data/test/MC/AArch64/neon-saturating-rounding-shift.s.cs +0 -15
  107. data/test/MC/AArch64/neon-saturating-shift.s.cs +0 -15
  108. data/test/MC/AArch64/neon-scalar-abs.s.cs +0 -8
  109. data/test/MC/AArch64/neon-scalar-add-sub.s.cs +0 -3
  110. data/test/MC/AArch64/neon-scalar-by-elem-mla.s.cs +0 -13
  111. data/test/MC/AArch64/neon-scalar-by-elem-mul.s.cs +0 -13
  112. data/test/MC/AArch64/neon-scalar-by-elem-saturating-mla.s.cs +0 -15
  113. data/test/MC/AArch64/neon-scalar-by-elem-saturating-mul.s.cs +0 -18
  114. data/test/MC/AArch64/neon-scalar-compare.s.cs +0 -12
  115. data/test/MC/AArch64/neon-scalar-cvt.s.cs +0 -34
  116. data/test/MC/AArch64/neon-scalar-dup.s.cs +0 -23
  117. data/test/MC/AArch64/neon-scalar-extract-narrow.s.cs +0 -10
  118. data/test/MC/AArch64/neon-scalar-fp-compare.s.cs +0 -21
  119. data/test/MC/AArch64/neon-scalar-mul.s.cs +0 -13
  120. data/test/MC/AArch64/neon-scalar-neg.s.cs +0 -6
  121. data/test/MC/AArch64/neon-scalar-recip.s.cs +0 -11
  122. data/test/MC/AArch64/neon-scalar-reduce-pairwise.s.cs +0 -3
  123. data/test/MC/AArch64/neon-scalar-rounding-shift.s.cs +0 -3
  124. data/test/MC/AArch64/neon-scalar-saturating-add-sub.s.cs +0 -25
  125. data/test/MC/AArch64/neon-scalar-saturating-rounding-shift.s.cs +0 -9
  126. data/test/MC/AArch64/neon-scalar-saturating-shift.s.cs +0 -9
  127. data/test/MC/AArch64/neon-scalar-shift-imm.s.cs +0 -42
  128. data/test/MC/AArch64/neon-scalar-shift.s.cs +0 -3
  129. data/test/MC/AArch64/neon-shift-left-long.s.cs +0 -13
  130. data/test/MC/AArch64/neon-shift.s.cs +0 -22
  131. data/test/MC/AArch64/neon-simd-copy.s.cs +0 -42
  132. data/test/MC/AArch64/neon-simd-ldst-multi-elem.s.cs +0 -197
  133. data/test/MC/AArch64/neon-simd-ldst-one-elem.s.cs +0 -129
  134. data/test/MC/AArch64/neon-simd-misc.s.cs +0 -213
  135. data/test/MC/AArch64/neon-simd-post-ldst-multi-elem.s.cs +0 -107
  136. data/test/MC/AArch64/neon-simd-shift.s.cs +0 -151
  137. data/test/MC/AArch64/neon-tbl.s.cs +0 -21
  138. data/test/MC/AArch64/trace-regs.s.cs +0 -383
  139. data/test/MC/ARM/arm-aliases.s.cs +0 -7
  140. data/test/MC/ARM/arm-arithmetic-aliases.s.cs +0 -50
  141. data/test/MC/ARM/arm-it-block.s.cs +0 -2
  142. data/test/MC/ARM/arm-memory-instructions.s.cs +0 -138
  143. data/test/MC/ARM/arm-shift-encoding.s.cs +0 -50
  144. data/test/MC/ARM/arm-thumb-trustzone.s.cs +0 -3
  145. data/test/MC/ARM/arm-trustzone.s.cs +0 -3
  146. data/test/MC/ARM/arm_addrmode2.s.cs +0 -15
  147. data/test/MC/ARM/arm_addrmode3.s.cs +0 -9
  148. data/test/MC/ARM/arm_instructions.s.cs +0 -25
  149. data/test/MC/ARM/basic-arm-instructions-v8.s.cs +0 -10
  150. data/test/MC/ARM/basic-arm-instructions.s.cs +0 -997
  151. data/test/MC/ARM/basic-thumb-instructions.s.cs +0 -130
  152. data/test/MC/ARM/basic-thumb2-instructions-v8.s.cs +0 -1
  153. data/test/MC/ARM/basic-thumb2-instructions.s.cs +0 -1242
  154. data/test/MC/ARM/crc32-thumb.s.cs +0 -7
  155. data/test/MC/ARM/crc32.s.cs +0 -7
  156. data/test/MC/ARM/dot-req.s.cs +0 -3
  157. data/test/MC/ARM/fp-armv8.s.cs +0 -52
  158. data/test/MC/ARM/idiv-thumb.s.cs +0 -3
  159. data/test/MC/ARM/idiv.s.cs +0 -3
  160. data/test/MC/ARM/load-store-acquire-release-v8-thumb.s.cs +0 -15
  161. data/test/MC/ARM/load-store-acquire-release-v8.s.cs +0 -15
  162. data/test/MC/ARM/mode-switch.s.cs +0 -7
  163. data/test/MC/ARM/neon-abs-encoding.s.cs +0 -15
  164. data/test/MC/ARM/neon-absdiff-encoding.s.cs +0 -39
  165. data/test/MC/ARM/neon-add-encoding.s.cs +0 -119
  166. data/test/MC/ARM/neon-bitcount-encoding.s.cs +0 -15
  167. data/test/MC/ARM/neon-bitwise-encoding.s.cs +0 -126
  168. data/test/MC/ARM/neon-cmp-encoding.s.cs +0 -88
  169. data/test/MC/ARM/neon-convert-encoding.s.cs +0 -27
  170. data/test/MC/ARM/neon-crypto.s.cs +0 -16
  171. data/test/MC/ARM/neon-dup-encoding.s.cs +0 -13
  172. data/test/MC/ARM/neon-minmax-encoding.s.cs +0 -57
  173. data/test/MC/ARM/neon-mov-encoding.s.cs +0 -76
  174. data/test/MC/ARM/neon-mul-accum-encoding.s.cs +0 -39
  175. data/test/MC/ARM/neon-mul-encoding.s.cs +0 -72
  176. data/test/MC/ARM/neon-neg-encoding.s.cs +0 -15
  177. data/test/MC/ARM/neon-pairwise-encoding.s.cs +0 -47
  178. data/test/MC/ARM/neon-reciprocal-encoding.s.cs +0 -13
  179. data/test/MC/ARM/neon-reverse-encoding.s.cs +0 -13
  180. data/test/MC/ARM/neon-satshift-encoding.s.cs +0 -75
  181. data/test/MC/ARM/neon-shift-encoding.s.cs +0 -238
  182. data/test/MC/ARM/neon-shiftaccum-encoding.s.cs +0 -97
  183. data/test/MC/ARM/neon-shuffle-encoding.s.cs +0 -59
  184. data/test/MC/ARM/neon-sub-encoding.s.cs +0 -82
  185. data/test/MC/ARM/neon-table-encoding.s.cs +0 -9
  186. data/test/MC/ARM/neon-v8.s.cs +0 -38
  187. data/test/MC/ARM/neon-vld-encoding.s.cs +0 -213
  188. data/test/MC/ARM/neon-vst-encoding.s.cs +0 -120
  189. data/test/MC/ARM/neon-vswp.s.cs +0 -3
  190. data/test/MC/ARM/neont2-abs-encoding.s.cs +0 -15
  191. data/test/MC/ARM/neont2-absdiff-encoding.s.cs +0 -39
  192. data/test/MC/ARM/neont2-add-encoding.s.cs +0 -65
  193. data/test/MC/ARM/neont2-bitcount-encoding.s.cs +0 -15
  194. data/test/MC/ARM/neont2-bitwise-encoding.s.cs +0 -15
  195. data/test/MC/ARM/neont2-cmp-encoding.s.cs +0 -17
  196. data/test/MC/ARM/neont2-convert-encoding.s.cs +0 -19
  197. data/test/MC/ARM/neont2-dup-encoding.s.cs +0 -19
  198. data/test/MC/ARM/neont2-minmax-encoding.s.cs +0 -57
  199. data/test/MC/ARM/neont2-mov-encoding.s.cs +0 -58
  200. data/test/MC/ARM/neont2-mul-accum-encoding.s.cs +0 -41
  201. data/test/MC/ARM/neont2-mul-encoding.s.cs +0 -31
  202. data/test/MC/ARM/neont2-neg-encoding.s.cs +0 -15
  203. data/test/MC/ARM/neont2-pairwise-encoding.s.cs +0 -43
  204. data/test/MC/ARM/neont2-reciprocal-encoding.s.cs +0 -13
  205. data/test/MC/ARM/neont2-reverse-encoding.s.cs +0 -13
  206. data/test/MC/ARM/neont2-satshift-encoding.s.cs +0 -75
  207. data/test/MC/ARM/neont2-shift-encoding.s.cs +0 -80
  208. data/test/MC/ARM/neont2-shiftaccum-encoding.s.cs +0 -97
  209. data/test/MC/ARM/neont2-shuffle-encoding.s.cs +0 -23
  210. data/test/MC/ARM/neont2-sub-encoding.s.cs +0 -23
  211. data/test/MC/ARM/neont2-table-encoding.s.cs +0 -9
  212. data/test/MC/ARM/neont2-vld-encoding.s.cs +0 -51
  213. data/test/MC/ARM/neont2-vst-encoding.s.cs +0 -48
  214. data/test/MC/ARM/simple-fp-encoding.s.cs +0 -157
  215. data/test/MC/ARM/thumb-fp-armv8.s.cs +0 -51
  216. data/test/MC/ARM/thumb-hints.s.cs +0 -12
  217. data/test/MC/ARM/thumb-neon-crypto.s.cs +0 -16
  218. data/test/MC/ARM/thumb-neon-v8.s.cs +0 -38
  219. data/test/MC/ARM/thumb-shift-encoding.s.cs +0 -19
  220. data/test/MC/ARM/thumb.s.cs +0 -19
  221. data/test/MC/ARM/thumb2-b.w-encodingT4.s.cs +0 -2
  222. data/test/MC/ARM/thumb2-branches.s.cs +0 -85
  223. data/test/MC/ARM/thumb2-mclass.s.cs +0 -41
  224. data/test/MC/ARM/thumb2-narrow-dp.ll.cs +0 -379
  225. data/test/MC/ARM/thumb2-pldw.s.cs +0 -2
  226. data/test/MC/ARM/vfp4-thumb.s.cs +0 -13
  227. data/test/MC/ARM/vfp4.s.cs +0 -13
  228. data/test/MC/ARM/vpush-vpop-thumb.s.cs +0 -9
  229. data/test/MC/ARM/vpush-vpop.s.cs +0 -9
  230. data/test/MC/Mips/hilo-addressing.s.cs +0 -4
  231. data/test/MC/Mips/micromips-alu-instructions-EB.s.cs +0 -33
  232. data/test/MC/Mips/micromips-alu-instructions.s.cs +0 -33
  233. data/test/MC/Mips/micromips-branch-instructions-EB.s.cs +0 -11
  234. data/test/MC/Mips/micromips-branch-instructions.s.cs +0 -11
  235. data/test/MC/Mips/micromips-expansions.s.cs +0 -20
  236. data/test/MC/Mips/micromips-jump-instructions-EB.s.cs +0 -5
  237. data/test/MC/Mips/micromips-jump-instructions.s.cs +0 -6
  238. data/test/MC/Mips/micromips-loadstore-instructions-EB.s.cs +0 -9
  239. data/test/MC/Mips/micromips-loadstore-instructions.s.cs +0 -9
  240. data/test/MC/Mips/micromips-loadstore-unaligned-EB.s.cs +0 -5
  241. data/test/MC/Mips/micromips-loadstore-unaligned.s.cs +0 -5
  242. data/test/MC/Mips/micromips-movcond-instructions-EB.s.cs +0 -5
  243. data/test/MC/Mips/micromips-movcond-instructions.s.cs +0 -5
  244. data/test/MC/Mips/micromips-multiply-instructions-EB.s.cs +0 -5
  245. data/test/MC/Mips/micromips-multiply-instructions.s.cs +0 -5
  246. data/test/MC/Mips/micromips-shift-instructions-EB.s.cs +0 -9
  247. data/test/MC/Mips/micromips-shift-instructions.s.cs +0 -9
  248. data/test/MC/Mips/micromips-trap-instructions-EB.s.cs +0 -13
  249. data/test/MC/Mips/micromips-trap-instructions.s.cs +0 -13
  250. data/test/MC/Mips/mips-alu-instructions.s.cs +0 -53
  251. data/test/MC/Mips/mips-control-instructions-64.s.cs +0 -33
  252. data/test/MC/Mips/mips-control-instructions.s.cs +0 -33
  253. data/test/MC/Mips/mips-coprocessor-encodings.s.cs +0 -17
  254. data/test/MC/Mips/mips-dsp-instructions.s.cs +0 -43
  255. data/test/MC/Mips/mips-expansions.s.cs +0 -20
  256. data/test/MC/Mips/mips-fpu-instructions.s.cs +0 -93
  257. data/test/MC/Mips/mips-jump-instructions.s.cs +0 -1
  258. data/test/MC/Mips/mips-memory-instructions.s.cs +0 -17
  259. data/test/MC/Mips/mips-register-names.s.cs +0 -33
  260. data/test/MC/Mips/mips64-alu-instructions.s.cs +0 -47
  261. data/test/MC/Mips/mips64-instructions.s.cs +0 -3
  262. data/test/MC/Mips/mips64-register-names.s.cs +0 -33
  263. data/test/MC/Mips/mips_directives.s.cs +0 -12
  264. data/test/MC/Mips/nabi-regs.s.cs +0 -12
  265. data/test/MC/Mips/set-at-directive.s.cs +0 -6
  266. data/test/MC/Mips/test_2r.s.cs +0 -16
  267. data/test/MC/Mips/test_2rf.s.cs +0 -33
  268. data/test/MC/Mips/test_3r.s.cs +0 -243
  269. data/test/MC/Mips/test_3rf.s.cs +0 -83
  270. data/test/MC/Mips/test_bit.s.cs +0 -49
  271. data/test/MC/Mips/test_cbranch.s.cs +0 -11
  272. data/test/MC/Mips/test_ctrlregs.s.cs +0 -33
  273. data/test/MC/Mips/test_elm.s.cs +0 -16
  274. data/test/MC/Mips/test_elm_insert.s.cs +0 -4
  275. data/test/MC/Mips/test_elm_insve.s.cs +0 -5
  276. data/test/MC/Mips/test_i10.s.cs +0 -5
  277. data/test/MC/Mips/test_i5.s.cs +0 -45
  278. data/test/MC/Mips/test_i8.s.cs +0 -11
  279. data/test/MC/Mips/test_lsa.s.cs +0 -5
  280. data/test/MC/Mips/test_mi10.s.cs +0 -24
  281. data/test/MC/Mips/test_vec.s.cs +0 -8
  282. data/test/MC/PowerPC/ppc64-encoding-bookII.s.cs +0 -25
  283. data/test/MC/PowerPC/ppc64-encoding-bookIII.s.cs +0 -35
  284. data/test/MC/PowerPC/ppc64-encoding-ext.s.cs +0 -535
  285. data/test/MC/PowerPC/ppc64-encoding-fp.s.cs +0 -110
  286. data/test/MC/PowerPC/ppc64-encoding-vmx.s.cs +0 -170
  287. data/test/MC/PowerPC/ppc64-encoding.s.cs +0 -202
  288. data/test/MC/PowerPC/ppc64-operands.s.cs +0 -32
  289. data/test/MC/README +0 -6
  290. data/test/MC/Sparc/sparc-alu-instructions.s.cs +0 -47
  291. data/test/MC/Sparc/sparc-atomic-instructions.s.cs +0 -7
  292. data/test/MC/Sparc/sparc-ctrl-instructions.s.cs +0 -11
  293. data/test/MC/Sparc/sparc-fp-instructions.s.cs +0 -59
  294. data/test/MC/Sparc/sparc-mem-instructions.s.cs +0 -25
  295. data/test/MC/Sparc/sparc-vis.s.cs +0 -2
  296. data/test/MC/Sparc/sparc64-alu-instructions.s.cs +0 -13
  297. data/test/MC/Sparc/sparc64-ctrl-instructions.s.cs +0 -102
  298. data/test/MC/Sparc/sparcv8-instructions.s.cs +0 -7
  299. data/test/MC/Sparc/sparcv9-instructions.s.cs +0 -1
  300. data/test/MC/SystemZ/insn-good-z196.s.cs +0 -589
  301. data/test/MC/SystemZ/insn-good.s.cs +0 -2265
  302. data/test/MC/SystemZ/regs-good.s.cs +0 -45
  303. data/test/MC/X86/3DNow.s.cs +0 -29
  304. data/test/MC/X86/address-size.s.cs +0 -5
  305. data/test/MC/X86/avx512-encodings.s.cs +0 -12
  306. data/test/MC/X86/intel-syntax-encoding.s.cs +0 -30
  307. data/test/MC/X86/x86-32-avx.s.cs +0 -833
  308. data/test/MC/X86/x86-32-fma3.s.cs +0 -169
  309. data/test/MC/X86/x86-32-ms-inline-asm.s.cs +0 -27
  310. data/test/MC/X86/x86_64-avx-clmul-encoding.s.cs +0 -11
  311. data/test/MC/X86/x86_64-avx-encoding.s.cs +0 -1058
  312. data/test/MC/X86/x86_64-bmi-encoding.s.cs +0 -51
  313. data/test/MC/X86/x86_64-encoding.s.cs +0 -59
  314. data/test/MC/X86/x86_64-fma3-encoding.s.cs +0 -169
  315. data/test/MC/X86/x86_64-fma4-encoding.s.cs +0 -98
  316. data/test/MC/X86/x86_64-hle-encoding.s.cs +0 -3
  317. data/test/MC/X86/x86_64-imm-widths.s.cs +0 -27
  318. data/test/MC/X86/x86_64-rand-encoding.s.cs +0 -13
  319. data/test/MC/X86/x86_64-rtm-encoding.s.cs +0 -4
  320. data/test/MC/X86/x86_64-sse4a.s.cs +0 -1
  321. data/test/MC/X86/x86_64-tbm-encoding.s.cs +0 -40
  322. data/test/MC/X86/x86_64-xop-encoding.s.cs +0 -152
  323. data/test/README +0 -6
  324. data/test/test.rb +0 -205
  325. data/test/test.rb.SPEC +0 -235
  326. data/test/test_arm.rb +0 -202
  327. data/test/test_arm.rb.SPEC +0 -275
  328. data/test/test_arm64.rb +0 -150
  329. data/test/test_arm64.rb.SPEC +0 -116
  330. data/test/test_detail.rb +0 -228
  331. data/test/test_detail.rb.SPEC +0 -322
  332. data/test/test_exhaustive.rb +0 -80
  333. data/test/test_mips.rb +0 -118
  334. data/test/test_mips.rb.SPEC +0 -91
  335. data/test/test_ppc.rb +0 -137
  336. data/test/test_ppc.rb.SPEC +0 -84
  337. data/test/test_sanity.rb +0 -83
  338. data/test/test_skipdata.rb +0 -111
  339. data/test/test_skipdata.rb.SPEC +0 -58
  340. data/test/test_sparc.rb +0 -113
  341. data/test/test_sparc.rb.SPEC +0 -116
  342. data/test/test_sysz.rb +0 -111
  343. data/test/test_sysz.rb.SPEC +0 -61
  344. data/test/test_x86.rb +0 -189
  345. data/test/test_x86.rb.SPEC +0 -579
  346. data/test/test_xcore.rb +0 -100
  347. data/test/test_xcore.rb.SPEC +0 -75
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ # THIS FILE WAS AUTO-GENERATED -- DO NOT EDIT!
4
+
5
+ require 'ffi'
6
+
7
+ require 'crabstone/arch/extension'
8
+ require_relative 'evm_const'
9
+
10
+ module Crabstone
11
+ module EVM
12
+ class Instruction < FFI::Struct
13
+ layout(
14
+ :pop, :int8,
15
+ :push, :int8,
16
+ :fee, :uint
17
+ )
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,161 @@
1
+ # frozen_string_literal: true
2
+
3
+ # THIS FILE WAS AUTO-GENERATED -- DO NOT EDIT!
4
+
5
+ require 'crabstone/arch/register'
6
+
7
+ module Crabstone
8
+ module EVM
9
+ INS_STOP = 0
10
+ INS_ADD = 1
11
+ INS_MUL = 2
12
+ INS_SUB = 3
13
+ INS_DIV = 4
14
+ INS_SDIV = 5
15
+ INS_MOD = 6
16
+ INS_SMOD = 7
17
+ INS_ADDMOD = 8
18
+ INS_MULMOD = 9
19
+ INS_EXP = 10
20
+ INS_SIGNEXTEND = 11
21
+ INS_LT = 16
22
+ INS_GT = 17
23
+ INS_SLT = 18
24
+ INS_SGT = 19
25
+ INS_EQ = 20
26
+ INS_ISZERO = 21
27
+ INS_AND = 22
28
+ INS_OR = 23
29
+ INS_XOR = 24
30
+ INS_NOT = 25
31
+ INS_BYTE = 26
32
+ INS_SHA3 = 32
33
+ INS_ADDRESS = 48
34
+ INS_BALANCE = 49
35
+ INS_ORIGIN = 50
36
+ INS_CALLER = 51
37
+ INS_CALLVALUE = 52
38
+ INS_CALLDATALOAD = 53
39
+ INS_CALLDATASIZE = 54
40
+ INS_CALLDATACOPY = 55
41
+ INS_CODESIZE = 56
42
+ INS_CODECOPY = 57
43
+ INS_GASPRICE = 58
44
+ INS_EXTCODESIZE = 59
45
+ INS_EXTCODECOPY = 60
46
+ INS_RETURNDATASIZE = 61
47
+ INS_RETURNDATACOPY = 62
48
+ INS_BLOCKHASH = 64
49
+ INS_COINBASE = 65
50
+ INS_TIMESTAMP = 66
51
+ INS_NUMBER = 67
52
+ INS_DIFFICULTY = 68
53
+ INS_GASLIMIT = 69
54
+ INS_POP = 80
55
+ INS_MLOAD = 81
56
+ INS_MSTORE = 82
57
+ INS_MSTORE8 = 83
58
+ INS_SLOAD = 84
59
+ INS_SSTORE = 85
60
+ INS_JUMP = 86
61
+ INS_JUMPI = 87
62
+ INS_PC = 88
63
+ INS_MSIZE = 89
64
+ INS_GAS = 90
65
+ INS_JUMPDEST = 91
66
+ INS_PUSH1 = 96
67
+ INS_PUSH2 = 97
68
+ INS_PUSH3 = 98
69
+ INS_PUSH4 = 99
70
+ INS_PUSH5 = 100
71
+ INS_PUSH6 = 101
72
+ INS_PUSH7 = 102
73
+ INS_PUSH8 = 103
74
+ INS_PUSH9 = 104
75
+ INS_PUSH10 = 105
76
+ INS_PUSH11 = 106
77
+ INS_PUSH12 = 107
78
+ INS_PUSH13 = 108
79
+ INS_PUSH14 = 109
80
+ INS_PUSH15 = 110
81
+ INS_PUSH16 = 111
82
+ INS_PUSH17 = 112
83
+ INS_PUSH18 = 113
84
+ INS_PUSH19 = 114
85
+ INS_PUSH20 = 115
86
+ INS_PUSH21 = 116
87
+ INS_PUSH22 = 117
88
+ INS_PUSH23 = 118
89
+ INS_PUSH24 = 119
90
+ INS_PUSH25 = 120
91
+ INS_PUSH26 = 121
92
+ INS_PUSH27 = 122
93
+ INS_PUSH28 = 123
94
+ INS_PUSH29 = 124
95
+ INS_PUSH30 = 125
96
+ INS_PUSH31 = 126
97
+ INS_PUSH32 = 127
98
+ INS_DUP1 = 128
99
+ INS_DUP2 = 129
100
+ INS_DUP3 = 130
101
+ INS_DUP4 = 131
102
+ INS_DUP5 = 132
103
+ INS_DUP6 = 133
104
+ INS_DUP7 = 134
105
+ INS_DUP8 = 135
106
+ INS_DUP9 = 136
107
+ INS_DUP10 = 137
108
+ INS_DUP11 = 138
109
+ INS_DUP12 = 139
110
+ INS_DUP13 = 140
111
+ INS_DUP14 = 141
112
+ INS_DUP15 = 142
113
+ INS_DUP16 = 143
114
+ INS_SWAP1 = 144
115
+ INS_SWAP2 = 145
116
+ INS_SWAP3 = 146
117
+ INS_SWAP4 = 147
118
+ INS_SWAP5 = 148
119
+ INS_SWAP6 = 149
120
+ INS_SWAP7 = 150
121
+ INS_SWAP8 = 151
122
+ INS_SWAP9 = 152
123
+ INS_SWAP10 = 153
124
+ INS_SWAP11 = 154
125
+ INS_SWAP12 = 155
126
+ INS_SWAP13 = 156
127
+ INS_SWAP14 = 157
128
+ INS_SWAP15 = 158
129
+ INS_SWAP16 = 159
130
+ INS_LOG0 = 160
131
+ INS_LOG1 = 161
132
+ INS_LOG2 = 162
133
+ INS_LOG3 = 163
134
+ INS_LOG4 = 164
135
+ INS_CREATE = 240
136
+ INS_CALL = 241
137
+ INS_CALLCODE = 242
138
+ INS_RETURN = 243
139
+ INS_DELEGATECALL = 244
140
+ INS_CALLBLACKBOX = 245
141
+ INS_STATICCALL = 250
142
+ INS_REVERT = 253
143
+ INS_SUICIDE = 255
144
+ INS_INVALID = 512
145
+ INS_ENDING = 513
146
+
147
+ GRP_INVALID = 0
148
+ GRP_JUMP = 1
149
+ GRP_MATH = 8
150
+ GRP_STACK_WRITE = 9
151
+ GRP_STACK_READ = 10
152
+ GRP_MEM_WRITE = 11
153
+ GRP_MEM_READ = 12
154
+ GRP_STORE_WRITE = 13
155
+ GRP_STORE_READ = 14
156
+ GRP_HALT = 15
157
+ GRP_ENDING = 16
158
+
159
+ extend Register
160
+ end
161
+ end
@@ -0,0 +1,106 @@
1
+ # frozen_string_literal: true
2
+
3
+ # THIS FILE WAS AUTO-GENERATED -- DO NOT EDIT!
4
+
5
+ require 'ffi'
6
+
7
+ require 'crabstone/arch/extension'
8
+ require_relative 'm680x_const'
9
+
10
+ module Crabstone
11
+ module M680X
12
+ class OperandIdx < FFI::Struct
13
+ layout(
14
+ :base_reg, :uint,
15
+ :offset_reg, :uint,
16
+ :offset, :short,
17
+ :offset_addr, :ushort,
18
+ :offset_bits, :uint8,
19
+ :inc_dec, :int8,
20
+ :flags, :uint8
21
+ )
22
+ end
23
+
24
+ class OperandRel < FFI::Struct
25
+ layout(
26
+ :address, :ushort,
27
+ :offset, :short
28
+ )
29
+ end
30
+
31
+ class OperandExt < FFI::Struct
32
+ layout(
33
+ :address, :ushort,
34
+ :indirect, :bool
35
+ )
36
+ end
37
+
38
+ class OperandValue < FFI::Union
39
+ layout(
40
+ :imm, :int,
41
+ :reg, :uint,
42
+ :idx, OperandIdx,
43
+ :rel, OperandRel,
44
+ :ext, OperandExt,
45
+ :direct_addr, :uint8,
46
+ :const_val, :uint8
47
+ )
48
+ end
49
+
50
+ class Operand < FFI::Struct
51
+ layout(
52
+ :type, :uint,
53
+ :value, OperandValue,
54
+ :size, :uint8,
55
+ :access, :uint8
56
+ )
57
+
58
+ include Crabstone::Extension::Operand
59
+
60
+ def register?
61
+ self[:type] == OP_REGISTER
62
+ end
63
+
64
+ def immediate?
65
+ self[:type] == OP_IMMEDIATE
66
+ end
67
+
68
+ def indexed?
69
+ self[:type] == OP_INDEXED
70
+ end
71
+
72
+ def extended?
73
+ self[:type] == OP_EXTENDED
74
+ end
75
+
76
+ def direct?
77
+ self[:type] == OP_DIRECT
78
+ end
79
+
80
+ def relative?
81
+ self[:type] == OP_RELATIVE
82
+ end
83
+
84
+ def constant?
85
+ self[:type] == OP_CONSTANT
86
+ end
87
+ alias reg? register?
88
+ alias imm? immediate?
89
+ alias idx? indexed?
90
+ alias ext? extended?
91
+ alias direct_addr? direct?
92
+ alias rel? relative?
93
+ alias const_val? constant?
94
+ end
95
+
96
+ class Instruction < FFI::Struct
97
+ layout(
98
+ :flags, :uint8,
99
+ :op_count, :uint8,
100
+ :operands, [Operand, 9]
101
+ )
102
+
103
+ include Crabstone::Extension::Instruction
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,426 @@
1
+ # frozen_string_literal: true
2
+
3
+ # THIS FILE WAS AUTO-GENERATED -- DO NOT EDIT!
4
+
5
+ require 'crabstone/arch/register'
6
+
7
+ module Crabstone
8
+ module M680X
9
+ OPERAND_COUNT = 9
10
+
11
+ REG_INVALID = 0
12
+ REG_A = 1
13
+ REG_B = 2
14
+ REG_E = 3
15
+ REG_F = 4
16
+ REG_0 = 5
17
+ REG_D = 6
18
+ REG_W = 7
19
+ REG_CC = 8
20
+ REG_DP = 9
21
+ REG_MD = 10
22
+ REG_HX = 11
23
+ REG_H = 12
24
+ REG_X = 13
25
+ REG_Y = 14
26
+ REG_S = 15
27
+ REG_U = 16
28
+ REG_V = 17
29
+ REG_Q = 18
30
+ REG_PC = 19
31
+ REG_TMP2 = 20
32
+ REG_TMP3 = 21
33
+ REG_ENDING = 22
34
+
35
+ OP_INVALID = 0
36
+ OP_REGISTER = 1
37
+ OP_IMMEDIATE = 2
38
+ OP_INDEXED = 3
39
+ OP_EXTENDED = 4
40
+ OP_DIRECT = 5
41
+ OP_RELATIVE = 6
42
+ OP_CONSTANT = 7
43
+
44
+ OFFSET_NONE = 0
45
+ OFFSET_BITS_5 = 5
46
+ OFFSET_BITS_8 = 8
47
+ OFFSET_BITS_9 = 9
48
+ OFFSET_BITS_16 = 16
49
+ IDX_INDIRECT = 1
50
+ IDX_NO_COMMA = 2
51
+ IDX_POST_INC_DEC = 4
52
+
53
+ GRP_INVALID = 0
54
+ GRP_JUMP = 1
55
+ GRP_CALL = 2
56
+ GRP_RET = 3
57
+ GRP_INT = 4
58
+ GRP_IRET = 5
59
+ GRP_PRIV = 6
60
+ GRP_BRAREL = 7
61
+ GRP_ENDING = 8
62
+ FIRST_OP_IN_MNEM = 1
63
+ SECOND_OP_IN_MNEM = 2
64
+
65
+ INS_INVLD = 0
66
+ INS_ABA = 1
67
+ INS_ABX = 2
68
+ INS_ABY = 3
69
+ INS_ADC = 4
70
+ INS_ADCA = 5
71
+ INS_ADCB = 6
72
+ INS_ADCD = 7
73
+ INS_ADCR = 8
74
+ INS_ADD = 9
75
+ INS_ADDA = 10
76
+ INS_ADDB = 11
77
+ INS_ADDD = 12
78
+ INS_ADDE = 13
79
+ INS_ADDF = 14
80
+ INS_ADDR = 15
81
+ INS_ADDW = 16
82
+ INS_AIM = 17
83
+ INS_AIS = 18
84
+ INS_AIX = 19
85
+ INS_AND = 20
86
+ INS_ANDA = 21
87
+ INS_ANDB = 22
88
+ INS_ANDCC = 23
89
+ INS_ANDD = 24
90
+ INS_ANDR = 25
91
+ INS_ASL = 26
92
+ INS_ASLA = 27
93
+ INS_ASLB = 28
94
+ INS_ASLD = 29
95
+ INS_ASR = 30
96
+ INS_ASRA = 31
97
+ INS_ASRB = 32
98
+ INS_ASRD = 33
99
+ INS_ASRX = 34
100
+ INS_BAND = 35
101
+ INS_BCC = 36
102
+ INS_BCLR = 37
103
+ INS_BCS = 38
104
+ INS_BEOR = 39
105
+ INS_BEQ = 40
106
+ INS_BGE = 41
107
+ INS_BGND = 42
108
+ INS_BGT = 43
109
+ INS_BHCC = 44
110
+ INS_BHCS = 45
111
+ INS_BHI = 46
112
+ INS_BIAND = 47
113
+ INS_BIEOR = 48
114
+ INS_BIH = 49
115
+ INS_BIL = 50
116
+ INS_BIOR = 51
117
+ INS_BIT = 52
118
+ INS_BITA = 53
119
+ INS_BITB = 54
120
+ INS_BITD = 55
121
+ INS_BITMD = 56
122
+ INS_BLE = 57
123
+ INS_BLS = 58
124
+ INS_BLT = 59
125
+ INS_BMC = 60
126
+ INS_BMI = 61
127
+ INS_BMS = 62
128
+ INS_BNE = 63
129
+ INS_BOR = 64
130
+ INS_BPL = 65
131
+ INS_BRCLR = 66
132
+ INS_BRSET = 67
133
+ INS_BRA = 68
134
+ INS_BRN = 69
135
+ INS_BSET = 70
136
+ INS_BSR = 71
137
+ INS_BVC = 72
138
+ INS_BVS = 73
139
+ INS_CALL = 74
140
+ INS_CBA = 75
141
+ INS_CBEQ = 76
142
+ INS_CBEQA = 77
143
+ INS_CBEQX = 78
144
+ INS_CLC = 79
145
+ INS_CLI = 80
146
+ INS_CLR = 81
147
+ INS_CLRA = 82
148
+ INS_CLRB = 83
149
+ INS_CLRD = 84
150
+ INS_CLRE = 85
151
+ INS_CLRF = 86
152
+ INS_CLRH = 87
153
+ INS_CLRW = 88
154
+ INS_CLRX = 89
155
+ INS_CLV = 90
156
+ INS_CMP = 91
157
+ INS_CMPA = 92
158
+ INS_CMPB = 93
159
+ INS_CMPD = 94
160
+ INS_CMPE = 95
161
+ INS_CMPF = 96
162
+ INS_CMPR = 97
163
+ INS_CMPS = 98
164
+ INS_CMPU = 99
165
+ INS_CMPW = 100
166
+ INS_CMPX = 101
167
+ INS_CMPY = 102
168
+ INS_COM = 103
169
+ INS_COMA = 104
170
+ INS_COMB = 105
171
+ INS_COMD = 106
172
+ INS_COME = 107
173
+ INS_COMF = 108
174
+ INS_COMW = 109
175
+ INS_COMX = 110
176
+ INS_CPD = 111
177
+ INS_CPHX = 112
178
+ INS_CPS = 113
179
+ INS_CPX = 114
180
+ INS_CPY = 115
181
+ INS_CWAI = 116
182
+ INS_DAA = 117
183
+ INS_DBEQ = 118
184
+ INS_DBNE = 119
185
+ INS_DBNZ = 120
186
+ INS_DBNZA = 121
187
+ INS_DBNZX = 122
188
+ INS_DEC = 123
189
+ INS_DECA = 124
190
+ INS_DECB = 125
191
+ INS_DECD = 126
192
+ INS_DECE = 127
193
+ INS_DECF = 128
194
+ INS_DECW = 129
195
+ INS_DECX = 130
196
+ INS_DES = 131
197
+ INS_DEX = 132
198
+ INS_DEY = 133
199
+ INS_DIV = 134
200
+ INS_DIVD = 135
201
+ INS_DIVQ = 136
202
+ INS_EDIV = 137
203
+ INS_EDIVS = 138
204
+ INS_EIM = 139
205
+ INS_EMACS = 140
206
+ INS_EMAXD = 141
207
+ INS_EMAXM = 142
208
+ INS_EMIND = 143
209
+ INS_EMINM = 144
210
+ INS_EMUL = 145
211
+ INS_EMULS = 146
212
+ INS_EOR = 147
213
+ INS_EORA = 148
214
+ INS_EORB = 149
215
+ INS_EORD = 150
216
+ INS_EORR = 151
217
+ INS_ETBL = 152
218
+ INS_EXG = 153
219
+ INS_FDIV = 154
220
+ INS_IBEQ = 155
221
+ INS_IBNE = 156
222
+ INS_IDIV = 157
223
+ INS_IDIVS = 158
224
+ INS_ILLGL = 159
225
+ INS_INC = 160
226
+ INS_INCA = 161
227
+ INS_INCB = 162
228
+ INS_INCD = 163
229
+ INS_INCE = 164
230
+ INS_INCF = 165
231
+ INS_INCW = 166
232
+ INS_INCX = 167
233
+ INS_INS = 168
234
+ INS_INX = 169
235
+ INS_INY = 170
236
+ INS_JMP = 171
237
+ INS_JSR = 172
238
+ INS_LBCC = 173
239
+ INS_LBCS = 174
240
+ INS_LBEQ = 175
241
+ INS_LBGE = 176
242
+ INS_LBGT = 177
243
+ INS_LBHI = 178
244
+ INS_LBLE = 179
245
+ INS_LBLS = 180
246
+ INS_LBLT = 181
247
+ INS_LBMI = 182
248
+ INS_LBNE = 183
249
+ INS_LBPL = 184
250
+ INS_LBRA = 185
251
+ INS_LBRN = 186
252
+ INS_LBSR = 187
253
+ INS_LBVC = 188
254
+ INS_LBVS = 189
255
+ INS_LDA = 190
256
+ INS_LDAA = 191
257
+ INS_LDAB = 192
258
+ INS_LDB = 193
259
+ INS_LDBT = 194
260
+ INS_LDD = 195
261
+ INS_LDE = 196
262
+ INS_LDF = 197
263
+ INS_LDHX = 198
264
+ INS_LDMD = 199
265
+ INS_LDQ = 200
266
+ INS_LDS = 201
267
+ INS_LDU = 202
268
+ INS_LDW = 203
269
+ INS_LDX = 204
270
+ INS_LDY = 205
271
+ INS_LEAS = 206
272
+ INS_LEAU = 207
273
+ INS_LEAX = 208
274
+ INS_LEAY = 209
275
+ INS_LSL = 210
276
+ INS_LSLA = 211
277
+ INS_LSLB = 212
278
+ INS_LSLD = 213
279
+ INS_LSLX = 214
280
+ INS_LSR = 215
281
+ INS_LSRA = 216
282
+ INS_LSRB = 217
283
+ INS_LSRD = 218
284
+ INS_LSRW = 219
285
+ INS_LSRX = 220
286
+ INS_MAXA = 221
287
+ INS_MAXM = 222
288
+ INS_MEM = 223
289
+ INS_MINA = 224
290
+ INS_MINM = 225
291
+ INS_MOV = 226
292
+ INS_MOVB = 227
293
+ INS_MOVW = 228
294
+ INS_MUL = 229
295
+ INS_MULD = 230
296
+ INS_NEG = 231
297
+ INS_NEGA = 232
298
+ INS_NEGB = 233
299
+ INS_NEGD = 234
300
+ INS_NEGX = 235
301
+ INS_NOP = 236
302
+ INS_NSA = 237
303
+ INS_OIM = 238
304
+ INS_ORA = 239
305
+ INS_ORAA = 240
306
+ INS_ORAB = 241
307
+ INS_ORB = 242
308
+ INS_ORCC = 243
309
+ INS_ORD = 244
310
+ INS_ORR = 245
311
+ INS_PSHA = 246
312
+ INS_PSHB = 247
313
+ INS_PSHC = 248
314
+ INS_PSHD = 249
315
+ INS_PSHH = 250
316
+ INS_PSHS = 251
317
+ INS_PSHSW = 252
318
+ INS_PSHU = 253
319
+ INS_PSHUW = 254
320
+ INS_PSHX = 255
321
+ INS_PSHY = 256
322
+ INS_PULA = 257
323
+ INS_PULB = 258
324
+ INS_PULC = 259
325
+ INS_PULD = 260
326
+ INS_PULH = 261
327
+ INS_PULS = 262
328
+ INS_PULSW = 263
329
+ INS_PULU = 264
330
+ INS_PULUW = 265
331
+ INS_PULX = 266
332
+ INS_PULY = 267
333
+ INS_REV = 268
334
+ INS_REVW = 269
335
+ INS_ROL = 270
336
+ INS_ROLA = 271
337
+ INS_ROLB = 272
338
+ INS_ROLD = 273
339
+ INS_ROLW = 274
340
+ INS_ROLX = 275
341
+ INS_ROR = 276
342
+ INS_RORA = 277
343
+ INS_RORB = 278
344
+ INS_RORD = 279
345
+ INS_RORW = 280
346
+ INS_RORX = 281
347
+ INS_RSP = 282
348
+ INS_RTC = 283
349
+ INS_RTI = 284
350
+ INS_RTS = 285
351
+ INS_SBA = 286
352
+ INS_SBC = 287
353
+ INS_SBCA = 288
354
+ INS_SBCB = 289
355
+ INS_SBCD = 290
356
+ INS_SBCR = 291
357
+ INS_SEC = 292
358
+ INS_SEI = 293
359
+ INS_SEV = 294
360
+ INS_SEX = 295
361
+ INS_SEXW = 296
362
+ INS_SLP = 297
363
+ INS_STA = 298
364
+ INS_STAA = 299
365
+ INS_STAB = 300
366
+ INS_STB = 301
367
+ INS_STBT = 302
368
+ INS_STD = 303
369
+ INS_STE = 304
370
+ INS_STF = 305
371
+ INS_STOP = 306
372
+ INS_STHX = 307
373
+ INS_STQ = 308
374
+ INS_STS = 309
375
+ INS_STU = 310
376
+ INS_STW = 311
377
+ INS_STX = 312
378
+ INS_STY = 313
379
+ INS_SUB = 314
380
+ INS_SUBA = 315
381
+ INS_SUBB = 316
382
+ INS_SUBD = 317
383
+ INS_SUBE = 318
384
+ INS_SUBF = 319
385
+ INS_SUBR = 320
386
+ INS_SUBW = 321
387
+ INS_SWI = 322
388
+ INS_SWI2 = 323
389
+ INS_SWI3 = 324
390
+ INS_SYNC = 325
391
+ INS_TAB = 326
392
+ INS_TAP = 327
393
+ INS_TAX = 328
394
+ INS_TBA = 329
395
+ INS_TBEQ = 330
396
+ INS_TBL = 331
397
+ INS_TBNE = 332
398
+ INS_TEST = 333
399
+ INS_TFM = 334
400
+ INS_TFR = 335
401
+ INS_TIM = 336
402
+ INS_TPA = 337
403
+ INS_TST = 338
404
+ INS_TSTA = 339
405
+ INS_TSTB = 340
406
+ INS_TSTD = 341
407
+ INS_TSTE = 342
408
+ INS_TSTF = 343
409
+ INS_TSTW = 344
410
+ INS_TSTX = 345
411
+ INS_TSX = 346
412
+ INS_TSY = 347
413
+ INS_TXA = 348
414
+ INS_TXS = 349
415
+ INS_TYS = 350
416
+ INS_WAI = 351
417
+ INS_WAIT = 352
418
+ INS_WAV = 353
419
+ INS_WAVR = 354
420
+ INS_XGDX = 355
421
+ INS_XGDY = 356
422
+ INS_ENDING = 357
423
+
424
+ extend Register
425
+ end
426
+ end