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,67 @@
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 'sysz_const'
9
+
10
+ module Crabstone
11
+ module SysZ
12
+ class OperandMemory < FFI::Struct
13
+ layout(
14
+ :base, :uint8,
15
+ :index, :uint8,
16
+ :length, :ulong,
17
+ :disp, :long
18
+ )
19
+ end
20
+
21
+ class OperandValue < FFI::Union
22
+ layout(
23
+ :reg, :uint,
24
+ :imm, :long,
25
+ :mem, OperandMemory
26
+ )
27
+ end
28
+
29
+ class Operand < FFI::Struct
30
+ layout(
31
+ :type, :uint,
32
+ :value, OperandValue
33
+ )
34
+
35
+ include Crabstone::Extension::Operand
36
+
37
+ def reg?
38
+ [
39
+ OP_REG,
40
+ OP_ACREG
41
+ ].include?(self[:type])
42
+ end
43
+
44
+ def imm?
45
+ self[:type] == OP_IMM
46
+ end
47
+
48
+ def mem?
49
+ self[:type] == OP_MEM
50
+ end
51
+
52
+ def acreg?
53
+ self[:type] == OP_ACREG
54
+ end
55
+ end
56
+
57
+ class Instruction < FFI::Struct
58
+ layout(
59
+ :cc, :uint,
60
+ :op_count, :uint8,
61
+ :operands, [Operand, 6]
62
+ )
63
+
64
+ include Crabstone::Extension::Instruction
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,763 @@
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 SysZ
9
+ CC_INVALID = 0
10
+ CC_O = 1
11
+ CC_H = 2
12
+ CC_NLE = 3
13
+ CC_L = 4
14
+ CC_NHE = 5
15
+ CC_LH = 6
16
+ CC_NE = 7
17
+ CC_E = 8
18
+ CC_NLH = 9
19
+ CC_HE = 10
20
+ CC_NL = 11
21
+ CC_LE = 12
22
+ CC_NH = 13
23
+ CC_NO = 14
24
+
25
+ OP_INVALID = 0
26
+ OP_REG = 1
27
+ OP_IMM = 2
28
+ OP_MEM = 3
29
+ OP_ACREG = 64
30
+
31
+ REG_INVALID = 0
32
+ REG_0 = 1
33
+ REG_1 = 2
34
+ REG_2 = 3
35
+ REG_3 = 4
36
+ REG_4 = 5
37
+ REG_5 = 6
38
+ REG_6 = 7
39
+ REG_7 = 8
40
+ REG_8 = 9
41
+ REG_9 = 10
42
+ REG_10 = 11
43
+ REG_11 = 12
44
+ REG_12 = 13
45
+ REG_13 = 14
46
+ REG_14 = 15
47
+ REG_15 = 16
48
+ REG_CC = 17
49
+ REG_F0 = 18
50
+ REG_F1 = 19
51
+ REG_F2 = 20
52
+ REG_F3 = 21
53
+ REG_F4 = 22
54
+ REG_F5 = 23
55
+ REG_F6 = 24
56
+ REG_F7 = 25
57
+ REG_F8 = 26
58
+ REG_F9 = 27
59
+ REG_F10 = 28
60
+ REG_F11 = 29
61
+ REG_F12 = 30
62
+ REG_F13 = 31
63
+ REG_F14 = 32
64
+ REG_F15 = 33
65
+ REG_R0L = 34
66
+ REG_ENDING = 35
67
+
68
+ INS_INVALID = 0
69
+ INS_A = 1
70
+ INS_ADB = 2
71
+ INS_ADBR = 3
72
+ INS_AEB = 4
73
+ INS_AEBR = 5
74
+ INS_AFI = 6
75
+ INS_AG = 7
76
+ INS_AGF = 8
77
+ INS_AGFI = 9
78
+ INS_AGFR = 10
79
+ INS_AGHI = 11
80
+ INS_AGHIK = 12
81
+ INS_AGR = 13
82
+ INS_AGRK = 14
83
+ INS_AGSI = 15
84
+ INS_AH = 16
85
+ INS_AHI = 17
86
+ INS_AHIK = 18
87
+ INS_AHY = 19
88
+ INS_AIH = 20
89
+ INS_AL = 21
90
+ INS_ALC = 22
91
+ INS_ALCG = 23
92
+ INS_ALCGR = 24
93
+ INS_ALCR = 25
94
+ INS_ALFI = 26
95
+ INS_ALG = 27
96
+ INS_ALGF = 28
97
+ INS_ALGFI = 29
98
+ INS_ALGFR = 30
99
+ INS_ALGHSIK = 31
100
+ INS_ALGR = 32
101
+ INS_ALGRK = 33
102
+ INS_ALHSIK = 34
103
+ INS_ALR = 35
104
+ INS_ALRK = 36
105
+ INS_ALY = 37
106
+ INS_AR = 38
107
+ INS_ARK = 39
108
+ INS_ASI = 40
109
+ INS_AXBR = 41
110
+ INS_AY = 42
111
+ INS_BCR = 43
112
+ INS_BRC = 44
113
+ INS_BRCL = 45
114
+ INS_CGIJ = 46
115
+ INS_CGRJ = 47
116
+ INS_CIJ = 48
117
+ INS_CLGIJ = 49
118
+ INS_CLGRJ = 50
119
+ INS_CLIJ = 51
120
+ INS_CLRJ = 52
121
+ INS_CRJ = 53
122
+ INS_BER = 54
123
+ INS_JE = 55
124
+ INS_JGE = 56
125
+ INS_LOCE = 57
126
+ INS_LOCGE = 58
127
+ INS_LOCGRE = 59
128
+ INS_LOCRE = 60
129
+ INS_STOCE = 61
130
+ INS_STOCGE = 62
131
+ INS_BHR = 63
132
+ INS_BHER = 64
133
+ INS_JHE = 65
134
+ INS_JGHE = 66
135
+ INS_LOCHE = 67
136
+ INS_LOCGHE = 68
137
+ INS_LOCGRHE = 69
138
+ INS_LOCRHE = 70
139
+ INS_STOCHE = 71
140
+ INS_STOCGHE = 72
141
+ INS_JH = 73
142
+ INS_JGH = 74
143
+ INS_LOCH = 75
144
+ INS_LOCGH = 76
145
+ INS_LOCGRH = 77
146
+ INS_LOCRH = 78
147
+ INS_STOCH = 79
148
+ INS_STOCGH = 80
149
+ INS_CGIJNLH = 81
150
+ INS_CGRJNLH = 82
151
+ INS_CIJNLH = 83
152
+ INS_CLGIJNLH = 84
153
+ INS_CLGRJNLH = 85
154
+ INS_CLIJNLH = 86
155
+ INS_CLRJNLH = 87
156
+ INS_CRJNLH = 88
157
+ INS_CGIJE = 89
158
+ INS_CGRJE = 90
159
+ INS_CIJE = 91
160
+ INS_CLGIJE = 92
161
+ INS_CLGRJE = 93
162
+ INS_CLIJE = 94
163
+ INS_CLRJE = 95
164
+ INS_CRJE = 96
165
+ INS_CGIJNLE = 97
166
+ INS_CGRJNLE = 98
167
+ INS_CIJNLE = 99
168
+ INS_CLGIJNLE = 100
169
+ INS_CLGRJNLE = 101
170
+ INS_CLIJNLE = 102
171
+ INS_CLRJNLE = 103
172
+ INS_CRJNLE = 104
173
+ INS_CGIJH = 105
174
+ INS_CGRJH = 106
175
+ INS_CIJH = 107
176
+ INS_CLGIJH = 108
177
+ INS_CLGRJH = 109
178
+ INS_CLIJH = 110
179
+ INS_CLRJH = 111
180
+ INS_CRJH = 112
181
+ INS_CGIJNL = 113
182
+ INS_CGRJNL = 114
183
+ INS_CIJNL = 115
184
+ INS_CLGIJNL = 116
185
+ INS_CLGRJNL = 117
186
+ INS_CLIJNL = 118
187
+ INS_CLRJNL = 119
188
+ INS_CRJNL = 120
189
+ INS_CGIJHE = 121
190
+ INS_CGRJHE = 122
191
+ INS_CIJHE = 123
192
+ INS_CLGIJHE = 124
193
+ INS_CLGRJHE = 125
194
+ INS_CLIJHE = 126
195
+ INS_CLRJHE = 127
196
+ INS_CRJHE = 128
197
+ INS_CGIJNHE = 129
198
+ INS_CGRJNHE = 130
199
+ INS_CIJNHE = 131
200
+ INS_CLGIJNHE = 132
201
+ INS_CLGRJNHE = 133
202
+ INS_CLIJNHE = 134
203
+ INS_CLRJNHE = 135
204
+ INS_CRJNHE = 136
205
+ INS_CGIJL = 137
206
+ INS_CGRJL = 138
207
+ INS_CIJL = 139
208
+ INS_CLGIJL = 140
209
+ INS_CLGRJL = 141
210
+ INS_CLIJL = 142
211
+ INS_CLRJL = 143
212
+ INS_CRJL = 144
213
+ INS_CGIJNH = 145
214
+ INS_CGRJNH = 146
215
+ INS_CIJNH = 147
216
+ INS_CLGIJNH = 148
217
+ INS_CLGRJNH = 149
218
+ INS_CLIJNH = 150
219
+ INS_CLRJNH = 151
220
+ INS_CRJNH = 152
221
+ INS_CGIJLE = 153
222
+ INS_CGRJLE = 154
223
+ INS_CIJLE = 155
224
+ INS_CLGIJLE = 156
225
+ INS_CLGRJLE = 157
226
+ INS_CLIJLE = 158
227
+ INS_CLRJLE = 159
228
+ INS_CRJLE = 160
229
+ INS_CGIJNE = 161
230
+ INS_CGRJNE = 162
231
+ INS_CIJNE = 163
232
+ INS_CLGIJNE = 164
233
+ INS_CLGRJNE = 165
234
+ INS_CLIJNE = 166
235
+ INS_CLRJNE = 167
236
+ INS_CRJNE = 168
237
+ INS_CGIJLH = 169
238
+ INS_CGRJLH = 170
239
+ INS_CIJLH = 171
240
+ INS_CLGIJLH = 172
241
+ INS_CLGRJLH = 173
242
+ INS_CLIJLH = 174
243
+ INS_CLRJLH = 175
244
+ INS_CRJLH = 176
245
+ INS_BLR = 177
246
+ INS_BLER = 178
247
+ INS_JLE = 179
248
+ INS_JGLE = 180
249
+ INS_LOCLE = 181
250
+ INS_LOCGLE = 182
251
+ INS_LOCGRLE = 183
252
+ INS_LOCRLE = 184
253
+ INS_STOCLE = 185
254
+ INS_STOCGLE = 186
255
+ INS_BLHR = 187
256
+ INS_JLH = 188
257
+ INS_JGLH = 189
258
+ INS_LOCLH = 190
259
+ INS_LOCGLH = 191
260
+ INS_LOCGRLH = 192
261
+ INS_LOCRLH = 193
262
+ INS_STOCLH = 194
263
+ INS_STOCGLH = 195
264
+ INS_JL = 196
265
+ INS_JGL = 197
266
+ INS_LOCL = 198
267
+ INS_LOCGL = 199
268
+ INS_LOCGRL = 200
269
+ INS_LOCRL = 201
270
+ INS_LOC = 202
271
+ INS_LOCG = 203
272
+ INS_LOCGR = 204
273
+ INS_LOCR = 205
274
+ INS_STOCL = 206
275
+ INS_STOCGL = 207
276
+ INS_BNER = 208
277
+ INS_JNE = 209
278
+ INS_JGNE = 210
279
+ INS_LOCNE = 211
280
+ INS_LOCGNE = 212
281
+ INS_LOCGRNE = 213
282
+ INS_LOCRNE = 214
283
+ INS_STOCNE = 215
284
+ INS_STOCGNE = 216
285
+ INS_BNHR = 217
286
+ INS_BNHER = 218
287
+ INS_JNHE = 219
288
+ INS_JGNHE = 220
289
+ INS_LOCNHE = 221
290
+ INS_LOCGNHE = 222
291
+ INS_LOCGRNHE = 223
292
+ INS_LOCRNHE = 224
293
+ INS_STOCNHE = 225
294
+ INS_STOCGNHE = 226
295
+ INS_JNH = 227
296
+ INS_JGNH = 228
297
+ INS_LOCNH = 229
298
+ INS_LOCGNH = 230
299
+ INS_LOCGRNH = 231
300
+ INS_LOCRNH = 232
301
+ INS_STOCNH = 233
302
+ INS_STOCGNH = 234
303
+ INS_BNLR = 235
304
+ INS_BNLER = 236
305
+ INS_JNLE = 237
306
+ INS_JGNLE = 238
307
+ INS_LOCNLE = 239
308
+ INS_LOCGNLE = 240
309
+ INS_LOCGRNLE = 241
310
+ INS_LOCRNLE = 242
311
+ INS_STOCNLE = 243
312
+ INS_STOCGNLE = 244
313
+ INS_BNLHR = 245
314
+ INS_JNLH = 246
315
+ INS_JGNLH = 247
316
+ INS_LOCNLH = 248
317
+ INS_LOCGNLH = 249
318
+ INS_LOCGRNLH = 250
319
+ INS_LOCRNLH = 251
320
+ INS_STOCNLH = 252
321
+ INS_STOCGNLH = 253
322
+ INS_JNL = 254
323
+ INS_JGNL = 255
324
+ INS_LOCNL = 256
325
+ INS_LOCGNL = 257
326
+ INS_LOCGRNL = 258
327
+ INS_LOCRNL = 259
328
+ INS_STOCNL = 260
329
+ INS_STOCGNL = 261
330
+ INS_BNOR = 262
331
+ INS_JNO = 263
332
+ INS_JGNO = 264
333
+ INS_LOCNO = 265
334
+ INS_LOCGNO = 266
335
+ INS_LOCGRNO = 267
336
+ INS_LOCRNO = 268
337
+ INS_STOCNO = 269
338
+ INS_STOCGNO = 270
339
+ INS_BOR = 271
340
+ INS_JO = 272
341
+ INS_JGO = 273
342
+ INS_LOCO = 274
343
+ INS_LOCGO = 275
344
+ INS_LOCGRO = 276
345
+ INS_LOCRO = 277
346
+ INS_STOCO = 278
347
+ INS_STOCGO = 279
348
+ INS_STOC = 280
349
+ INS_STOCG = 281
350
+ INS_BASR = 282
351
+ INS_BR = 283
352
+ INS_BRAS = 284
353
+ INS_BRASL = 285
354
+ INS_J = 286
355
+ INS_JG = 287
356
+ INS_BRCT = 288
357
+ INS_BRCTG = 289
358
+ INS_C = 290
359
+ INS_CDB = 291
360
+ INS_CDBR = 292
361
+ INS_CDFBR = 293
362
+ INS_CDGBR = 294
363
+ INS_CDLFBR = 295
364
+ INS_CDLGBR = 296
365
+ INS_CEB = 297
366
+ INS_CEBR = 298
367
+ INS_CEFBR = 299
368
+ INS_CEGBR = 300
369
+ INS_CELFBR = 301
370
+ INS_CELGBR = 302
371
+ INS_CFDBR = 303
372
+ INS_CFEBR = 304
373
+ INS_CFI = 305
374
+ INS_CFXBR = 306
375
+ INS_CG = 307
376
+ INS_CGDBR = 308
377
+ INS_CGEBR = 309
378
+ INS_CGF = 310
379
+ INS_CGFI = 311
380
+ INS_CGFR = 312
381
+ INS_CGFRL = 313
382
+ INS_CGH = 314
383
+ INS_CGHI = 315
384
+ INS_CGHRL = 316
385
+ INS_CGHSI = 317
386
+ INS_CGR = 318
387
+ INS_CGRL = 319
388
+ INS_CGXBR = 320
389
+ INS_CH = 321
390
+ INS_CHF = 322
391
+ INS_CHHSI = 323
392
+ INS_CHI = 324
393
+ INS_CHRL = 325
394
+ INS_CHSI = 326
395
+ INS_CHY = 327
396
+ INS_CIH = 328
397
+ INS_CL = 329
398
+ INS_CLC = 330
399
+ INS_CLFDBR = 331
400
+ INS_CLFEBR = 332
401
+ INS_CLFHSI = 333
402
+ INS_CLFI = 334
403
+ INS_CLFXBR = 335
404
+ INS_CLG = 336
405
+ INS_CLGDBR = 337
406
+ INS_CLGEBR = 338
407
+ INS_CLGF = 339
408
+ INS_CLGFI = 340
409
+ INS_CLGFR = 341
410
+ INS_CLGFRL = 342
411
+ INS_CLGHRL = 343
412
+ INS_CLGHSI = 344
413
+ INS_CLGR = 345
414
+ INS_CLGRL = 346
415
+ INS_CLGXBR = 347
416
+ INS_CLHF = 348
417
+ INS_CLHHSI = 349
418
+ INS_CLHRL = 350
419
+ INS_CLI = 351
420
+ INS_CLIH = 352
421
+ INS_CLIY = 353
422
+ INS_CLR = 354
423
+ INS_CLRL = 355
424
+ INS_CLST = 356
425
+ INS_CLY = 357
426
+ INS_CPSDR = 358
427
+ INS_CR = 359
428
+ INS_CRL = 360
429
+ INS_CS = 361
430
+ INS_CSG = 362
431
+ INS_CSY = 363
432
+ INS_CXBR = 364
433
+ INS_CXFBR = 365
434
+ INS_CXGBR = 366
435
+ INS_CXLFBR = 367
436
+ INS_CXLGBR = 368
437
+ INS_CY = 369
438
+ INS_DDB = 370
439
+ INS_DDBR = 371
440
+ INS_DEB = 372
441
+ INS_DEBR = 373
442
+ INS_DL = 374
443
+ INS_DLG = 375
444
+ INS_DLGR = 376
445
+ INS_DLR = 377
446
+ INS_DSG = 378
447
+ INS_DSGF = 379
448
+ INS_DSGFR = 380
449
+ INS_DSGR = 381
450
+ INS_DXBR = 382
451
+ INS_EAR = 383
452
+ INS_FIDBR = 384
453
+ INS_FIDBRA = 385
454
+ INS_FIEBR = 386
455
+ INS_FIEBRA = 387
456
+ INS_FIXBR = 388
457
+ INS_FIXBRA = 389
458
+ INS_FLOGR = 390
459
+ INS_IC = 391
460
+ INS_ICY = 392
461
+ INS_IIHF = 393
462
+ INS_IIHH = 394
463
+ INS_IIHL = 395
464
+ INS_IILF = 396
465
+ INS_IILH = 397
466
+ INS_IILL = 398
467
+ INS_IPM = 399
468
+ INS_L = 400
469
+ INS_LA = 401
470
+ INS_LAA = 402
471
+ INS_LAAG = 403
472
+ INS_LAAL = 404
473
+ INS_LAALG = 405
474
+ INS_LAN = 406
475
+ INS_LANG = 407
476
+ INS_LAO = 408
477
+ INS_LAOG = 409
478
+ INS_LARL = 410
479
+ INS_LAX = 411
480
+ INS_LAXG = 412
481
+ INS_LAY = 413
482
+ INS_LB = 414
483
+ INS_LBH = 415
484
+ INS_LBR = 416
485
+ INS_LCDBR = 417
486
+ INS_LCEBR = 418
487
+ INS_LCGFR = 419
488
+ INS_LCGR = 420
489
+ INS_LCR = 421
490
+ INS_LCXBR = 422
491
+ INS_LD = 423
492
+ INS_LDEB = 424
493
+ INS_LDEBR = 425
494
+ INS_LDGR = 426
495
+ INS_LDR = 427
496
+ INS_LDXBR = 428
497
+ INS_LDXBRA = 429
498
+ INS_LDY = 430
499
+ INS_LE = 431
500
+ INS_LEDBR = 432
501
+ INS_LEDBRA = 433
502
+ INS_LER = 434
503
+ INS_LEXBR = 435
504
+ INS_LEXBRA = 436
505
+ INS_LEY = 437
506
+ INS_LFH = 438
507
+ INS_LG = 439
508
+ INS_LGB = 440
509
+ INS_LGBR = 441
510
+ INS_LGDR = 442
511
+ INS_LGF = 443
512
+ INS_LGFI = 444
513
+ INS_LGFR = 445
514
+ INS_LGFRL = 446
515
+ INS_LGH = 447
516
+ INS_LGHI = 448
517
+ INS_LGHR = 449
518
+ INS_LGHRL = 450
519
+ INS_LGR = 451
520
+ INS_LGRL = 452
521
+ INS_LH = 453
522
+ INS_LHH = 454
523
+ INS_LHI = 455
524
+ INS_LHR = 456
525
+ INS_LHRL = 457
526
+ INS_LHY = 458
527
+ INS_LLC = 459
528
+ INS_LLCH = 460
529
+ INS_LLCR = 461
530
+ INS_LLGC = 462
531
+ INS_LLGCR = 463
532
+ INS_LLGF = 464
533
+ INS_LLGFR = 465
534
+ INS_LLGFRL = 466
535
+ INS_LLGH = 467
536
+ INS_LLGHR = 468
537
+ INS_LLGHRL = 469
538
+ INS_LLH = 470
539
+ INS_LLHH = 471
540
+ INS_LLHR = 472
541
+ INS_LLHRL = 473
542
+ INS_LLIHF = 474
543
+ INS_LLIHH = 475
544
+ INS_LLIHL = 476
545
+ INS_LLILF = 477
546
+ INS_LLILH = 478
547
+ INS_LLILL = 479
548
+ INS_LMG = 480
549
+ INS_LNDBR = 481
550
+ INS_LNEBR = 482
551
+ INS_LNGFR = 483
552
+ INS_LNGR = 484
553
+ INS_LNR = 485
554
+ INS_LNXBR = 486
555
+ INS_LPDBR = 487
556
+ INS_LPEBR = 488
557
+ INS_LPGFR = 489
558
+ INS_LPGR = 490
559
+ INS_LPR = 491
560
+ INS_LPXBR = 492
561
+ INS_LR = 493
562
+ INS_LRL = 494
563
+ INS_LRV = 495
564
+ INS_LRVG = 496
565
+ INS_LRVGR = 497
566
+ INS_LRVR = 498
567
+ INS_LT = 499
568
+ INS_LTDBR = 500
569
+ INS_LTEBR = 501
570
+ INS_LTG = 502
571
+ INS_LTGF = 503
572
+ INS_LTGFR = 504
573
+ INS_LTGR = 505
574
+ INS_LTR = 506
575
+ INS_LTXBR = 507
576
+ INS_LXDB = 508
577
+ INS_LXDBR = 509
578
+ INS_LXEB = 510
579
+ INS_LXEBR = 511
580
+ INS_LXR = 512
581
+ INS_LY = 513
582
+ INS_LZDR = 514
583
+ INS_LZER = 515
584
+ INS_LZXR = 516
585
+ INS_MADB = 517
586
+ INS_MADBR = 518
587
+ INS_MAEB = 519
588
+ INS_MAEBR = 520
589
+ INS_MDB = 521
590
+ INS_MDBR = 522
591
+ INS_MDEB = 523
592
+ INS_MDEBR = 524
593
+ INS_MEEB = 525
594
+ INS_MEEBR = 526
595
+ INS_MGHI = 527
596
+ INS_MH = 528
597
+ INS_MHI = 529
598
+ INS_MHY = 530
599
+ INS_MLG = 531
600
+ INS_MLGR = 532
601
+ INS_MS = 533
602
+ INS_MSDB = 534
603
+ INS_MSDBR = 535
604
+ INS_MSEB = 536
605
+ INS_MSEBR = 537
606
+ INS_MSFI = 538
607
+ INS_MSG = 539
608
+ INS_MSGF = 540
609
+ INS_MSGFI = 541
610
+ INS_MSGFR = 542
611
+ INS_MSGR = 543
612
+ INS_MSR = 544
613
+ INS_MSY = 545
614
+ INS_MVC = 546
615
+ INS_MVGHI = 547
616
+ INS_MVHHI = 548
617
+ INS_MVHI = 549
618
+ INS_MVI = 550
619
+ INS_MVIY = 551
620
+ INS_MVST = 552
621
+ INS_MXBR = 553
622
+ INS_MXDB = 554
623
+ INS_MXDBR = 555
624
+ INS_N = 556
625
+ INS_NC = 557
626
+ INS_NG = 558
627
+ INS_NGR = 559
628
+ INS_NGRK = 560
629
+ INS_NI = 561
630
+ INS_NIHF = 562
631
+ INS_NIHH = 563
632
+ INS_NIHL = 564
633
+ INS_NILF = 565
634
+ INS_NILH = 566
635
+ INS_NILL = 567
636
+ INS_NIY = 568
637
+ INS_NR = 569
638
+ INS_NRK = 570
639
+ INS_NY = 571
640
+ INS_O = 572
641
+ INS_OC = 573
642
+ INS_OG = 574
643
+ INS_OGR = 575
644
+ INS_OGRK = 576
645
+ INS_OI = 577
646
+ INS_OIHF = 578
647
+ INS_OIHH = 579
648
+ INS_OIHL = 580
649
+ INS_OILF = 581
650
+ INS_OILH = 582
651
+ INS_OILL = 583
652
+ INS_OIY = 584
653
+ INS_OR = 585
654
+ INS_ORK = 586
655
+ INS_OY = 587
656
+ INS_PFD = 588
657
+ INS_PFDRL = 589
658
+ INS_RISBG = 590
659
+ INS_RISBHG = 591
660
+ INS_RISBLG = 592
661
+ INS_RLL = 593
662
+ INS_RLLG = 594
663
+ INS_RNSBG = 595
664
+ INS_ROSBG = 596
665
+ INS_RXSBG = 597
666
+ INS_S = 598
667
+ INS_SDB = 599
668
+ INS_SDBR = 600
669
+ INS_SEB = 601
670
+ INS_SEBR = 602
671
+ INS_SG = 603
672
+ INS_SGF = 604
673
+ INS_SGFR = 605
674
+ INS_SGR = 606
675
+ INS_SGRK = 607
676
+ INS_SH = 608
677
+ INS_SHY = 609
678
+ INS_SL = 610
679
+ INS_SLB = 611
680
+ INS_SLBG = 612
681
+ INS_SLBR = 613
682
+ INS_SLFI = 614
683
+ INS_SLG = 615
684
+ INS_SLBGR = 616
685
+ INS_SLGF = 617
686
+ INS_SLGFI = 618
687
+ INS_SLGFR = 619
688
+ INS_SLGR = 620
689
+ INS_SLGRK = 621
690
+ INS_SLL = 622
691
+ INS_SLLG = 623
692
+ INS_SLLK = 624
693
+ INS_SLR = 625
694
+ INS_SLRK = 626
695
+ INS_SLY = 627
696
+ INS_SQDB = 628
697
+ INS_SQDBR = 629
698
+ INS_SQEB = 630
699
+ INS_SQEBR = 631
700
+ INS_SQXBR = 632
701
+ INS_SR = 633
702
+ INS_SRA = 634
703
+ INS_SRAG = 635
704
+ INS_SRAK = 636
705
+ INS_SRK = 637
706
+ INS_SRL = 638
707
+ INS_SRLG = 639
708
+ INS_SRLK = 640
709
+ INS_SRST = 641
710
+ INS_ST = 642
711
+ INS_STC = 643
712
+ INS_STCH = 644
713
+ INS_STCY = 645
714
+ INS_STD = 646
715
+ INS_STDY = 647
716
+ INS_STE = 648
717
+ INS_STEY = 649
718
+ INS_STFH = 650
719
+ INS_STG = 651
720
+ INS_STGRL = 652
721
+ INS_STH = 653
722
+ INS_STHH = 654
723
+ INS_STHRL = 655
724
+ INS_STHY = 656
725
+ INS_STMG = 657
726
+ INS_STRL = 658
727
+ INS_STRV = 659
728
+ INS_STRVG = 660
729
+ INS_STY = 661
730
+ INS_SXBR = 662
731
+ INS_SY = 663
732
+ INS_TM = 664
733
+ INS_TMHH = 665
734
+ INS_TMHL = 666
735
+ INS_TMLH = 667
736
+ INS_TMLL = 668
737
+ INS_TMY = 669
738
+ INS_X = 670
739
+ INS_XC = 671
740
+ INS_XG = 672
741
+ INS_XGR = 673
742
+ INS_XGRK = 674
743
+ INS_XI = 675
744
+ INS_XIHF = 676
745
+ INS_XILF = 677
746
+ INS_XIY = 678
747
+ INS_XR = 679
748
+ INS_XRK = 680
749
+ INS_XY = 681
750
+ INS_ENDING = 682
751
+
752
+ GRP_INVALID = 0
753
+ GRP_JUMP = 1
754
+ GRP_DISTINCTOPS = 128
755
+ GRP_FPEXTENSION = 129
756
+ GRP_HIGHWORD = 130
757
+ GRP_INTERLOCKEDACCESS1 = 131
758
+ GRP_LOADSTOREONCOND = 132
759
+ GRP_ENDING = 133
760
+
761
+ extend Register
762
+ end
763
+ end