crabstone 3.0.3 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
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