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
@@ -1,3 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_ARM, None
2
- 0x02,0x10,0xb2,0xf3 = vswp d1, d2
3
- 0x44,0x20,0xb2,0xf3 = vswp q1, q2
@@ -1,15 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xf1,0xff,0x20,0x03 = vabs.s8 d16, d16
3
- 0xf5,0xff,0x20,0x03 = vabs.s16 d16, d16
4
- 0xf9,0xff,0x20,0x03 = vabs.s32 d16, d16
5
- 0xf9,0xff,0x20,0x07 = vabs.f32 d16, d16
6
- 0xf1,0xff,0x60,0x03 = vabs.s8 q8, q8
7
- 0xf5,0xff,0x60,0x03 = vabs.s16 q8, q8
8
- 0xf9,0xff,0x60,0x03 = vabs.s32 q8, q8
9
- 0xf9,0xff,0x60,0x07 = vabs.f32 q8, q8
10
- 0xf0,0xff,0x20,0x07 = vqabs.s8 d16, d16
11
- 0xf4,0xff,0x20,0x07 = vqabs.s16 d16, d16
12
- 0xf8,0xff,0x20,0x07 = vqabs.s32 d16, d16
13
- 0xf0,0xff,0x60,0x07 = vqabs.s8 q8, q8
14
- 0xf4,0xff,0x60,0x07 = vqabs.s16 q8, q8
15
- 0xf8,0xff,0x60,0x07 = vqabs.s32 q8, q8
@@ -1,39 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x40,0xef,0xa1,0x07 = vabd.s8 d16, d16, d17
3
- 0x50,0xef,0xa1,0x07 = vabd.s16 d16, d16, d17
4
- 0x60,0xef,0xa1,0x07 = vabd.s32 d16, d16, d17
5
- 0x40,0xff,0xa1,0x07 = vabd.u8 d16, d16, d17
6
- 0x50,0xff,0xa1,0x07 = vabd.u16 d16, d16, d17
7
- 0x60,0xff,0xa1,0x07 = vabd.u32 d16, d16, d17
8
- 0x60,0xff,0xa1,0x0d = vabd.f32 d16, d16, d17
9
- 0x40,0xef,0xe2,0x07 = vabd.s8 q8, q8, q9
10
- 0x50,0xef,0xe2,0x07 = vabd.s16 q8, q8, q9
11
- 0x60,0xef,0xe2,0x07 = vabd.s32 q8, q8, q9
12
- 0x40,0xff,0xe2,0x07 = vabd.u8 q8, q8, q9
13
- 0x50,0xff,0xe2,0x07 = vabd.u16 q8, q8, q9
14
- 0x60,0xff,0xe2,0x07 = vabd.u32 q8, q8, q9
15
- 0x60,0xff,0xe2,0x0d = vabd.f32 q8, q8, q9
16
- 0xc0,0xef,0xa1,0x07 = vabdl.s8 q8, d16, d17
17
- 0xd0,0xef,0xa1,0x07 = vabdl.s16 q8, d16, d17
18
- 0xe0,0xef,0xa1,0x07 = vabdl.s32 q8, d16, d17
19
- 0xc0,0xff,0xa1,0x07 = vabdl.u8 q8, d16, d17
20
- 0xd0,0xff,0xa1,0x07 = vabdl.u16 q8, d16, d17
21
- 0xe0,0xff,0xa1,0x07 = vabdl.u32 q8, d16, d17
22
- 0x42,0xef,0xb1,0x07 = vaba.s8 d16, d18, d17
23
- 0x52,0xef,0xb1,0x07 = vaba.s16 d16, d18, d17
24
- 0x62,0xef,0xb1,0x07 = vaba.s32 d16, d18, d17
25
- 0x42,0xff,0xb1,0x07 = vaba.u8 d16, d18, d17
26
- 0x52,0xff,0xb1,0x07 = vaba.u16 d16, d18, d17
27
- 0x62,0xff,0xb1,0x07 = vaba.u32 d16, d18, d17
28
- 0x40,0xef,0xf4,0x27 = vaba.s8 q9, q8, q10
29
- 0x50,0xef,0xf4,0x27 = vaba.s16 q9, q8, q10
30
- 0x60,0xef,0xf4,0x27 = vaba.s32 q9, q8, q10
31
- 0x40,0xff,0xf4,0x27 = vaba.u8 q9, q8, q10
32
- 0x50,0xff,0xf4,0x27 = vaba.u16 q9, q8, q10
33
- 0x60,0xff,0xf4,0x27 = vaba.u32 q9, q8, q10
34
- 0xc3,0xef,0xa2,0x05 = vabal.s8 q8, d19, d18
35
- 0xd3,0xef,0xa2,0x05 = vabal.s16 q8, d19, d18
36
- 0xe3,0xef,0xa2,0x05 = vabal.s32 q8, d19, d18
37
- 0xc3,0xff,0xa2,0x05 = vabal.u8 q8, d19, d18
38
- 0xd3,0xff,0xa2,0x05 = vabal.u16 q8, d19, d18
39
- 0xe3,0xff,0xa2,0x05 = vabal.u32 q8, d19, d18
@@ -1,65 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x41,0xef,0xa0,0x08 = vadd.i8 d16, d17, d16
3
- 0x51,0xef,0xa0,0x08 = vadd.i16 d16, d17, d16
4
- 0x71,0xef,0xa0,0x08 = vadd.i64 d16, d17, d16
5
- 0x61,0xef,0xa0,0x08 = vadd.i32 d16, d17, d16
6
- 0x40,0xef,0xa1,0x0d = vadd.f32 d16, d16, d17
7
- 0x40,0xef,0xe2,0x0d = vadd.f32 q8, q8, q9
8
- 0xc1,0xef,0xa0,0x00 = vaddl.s8 q8, d17, d16
9
- 0xd1,0xef,0xa0,0x00 = vaddl.s16 q8, d17, d16
10
- 0xe1,0xef,0xa0,0x00 = vaddl.s32 q8, d17, d16
11
- 0xc1,0xff,0xa0,0x00 = vaddl.u8 q8, d17, d16
12
- 0xd1,0xff,0xa0,0x00 = vaddl.u16 q8, d17, d16
13
- 0xe1,0xff,0xa0,0x00 = vaddl.u32 q8, d17, d16
14
- 0xc0,0xef,0xa2,0x01 = vaddw.s8 q8, q8, d18
15
- 0xd0,0xef,0xa2,0x01 = vaddw.s16 q8, q8, d18
16
- 0xe0,0xef,0xa2,0x01 = vaddw.s32 q8, q8, d18
17
- 0xc0,0xff,0xa2,0x01 = vaddw.u8 q8, q8, d18
18
- 0xd0,0xff,0xa2,0x01 = vaddw.u16 q8, q8, d18
19
- 0xe0,0xff,0xa2,0x01 = vaddw.u32 q8, q8, d18
20
- 0x40,0xef,0xa1,0x00 = vhadd.s8 d16, d16, d17
21
- 0x50,0xef,0xa1,0x00 = vhadd.s16 d16, d16, d17
22
- 0x60,0xef,0xa1,0x00 = vhadd.s32 d16, d16, d17
23
- 0x40,0xff,0xa1,0x00 = vhadd.u8 d16, d16, d17
24
- 0x50,0xff,0xa1,0x00 = vhadd.u16 d16, d16, d17
25
- 0x60,0xff,0xa1,0x00 = vhadd.u32 d16, d16, d17
26
- 0x40,0xef,0xe2,0x00 = vhadd.s8 q8, q8, q9
27
- 0x50,0xef,0xe2,0x00 = vhadd.s16 q8, q8, q9
28
- 0x60,0xef,0xe2,0x00 = vhadd.s32 q8, q8, q9
29
- 0x40,0xff,0xe2,0x00 = vhadd.u8 q8, q8, q9
30
- 0x50,0xff,0xe2,0x00 = vhadd.u16 q8, q8, q9
31
- 0x60,0xff,0xe2,0x00 = vhadd.u32 q8, q8, q9
32
- 0x40,0xef,0xa1,0x01 = vrhadd.s8 d16, d16, d17
33
- 0x50,0xef,0xa1,0x01 = vrhadd.s16 d16, d16, d17
34
- 0x60,0xef,0xa1,0x01 = vrhadd.s32 d16, d16, d17
35
- 0x40,0xff,0xa1,0x01 = vrhadd.u8 d16, d16, d17
36
- 0x50,0xff,0xa1,0x01 = vrhadd.u16 d16, d16, d17
37
- 0x60,0xff,0xa1,0x01 = vrhadd.u32 d16, d16, d17
38
- 0x40,0xef,0xe2,0x01 = vrhadd.s8 q8, q8, q9
39
- 0x50,0xef,0xe2,0x01 = vrhadd.s16 q8, q8, q9
40
- 0x60,0xef,0xe2,0x01 = vrhadd.s32 q8, q8, q9
41
- 0x40,0xff,0xe2,0x01 = vrhadd.u8 q8, q8, q9
42
- 0x50,0xff,0xe2,0x01 = vrhadd.u16 q8, q8, q9
43
- 0x60,0xff,0xe2,0x01 = vrhadd.u32 q8, q8, q9
44
- 0x40,0xef,0xb1,0x00 = vqadd.s8 d16, d16, d17
45
- 0x50,0xef,0xb1,0x00 = vqadd.s16 d16, d16, d17
46
- 0x60,0xef,0xb1,0x00 = vqadd.s32 d16, d16, d17
47
- 0x70,0xef,0xb1,0x00 = vqadd.s64 d16, d16, d17
48
- 0x40,0xff,0xb1,0x00 = vqadd.u8 d16, d16, d17
49
- 0x50,0xff,0xb1,0x00 = vqadd.u16 d16, d16, d17
50
- 0x60,0xff,0xb1,0x00 = vqadd.u32 d16, d16, d17
51
- 0x70,0xff,0xb1,0x00 = vqadd.u64 d16, d16, d17
52
- 0x40,0xef,0xf2,0x00 = vqadd.s8 q8, q8, q9
53
- 0x50,0xef,0xf2,0x00 = vqadd.s16 q8, q8, q9
54
- 0x60,0xef,0xf2,0x00 = vqadd.s32 q8, q8, q9
55
- 0x70,0xef,0xf2,0x00 = vqadd.s64 q8, q8, q9
56
- 0x40,0xff,0xf2,0x00 = vqadd.u8 q8, q8, q9
57
- 0x50,0xff,0xf2,0x00 = vqadd.u16 q8, q8, q9
58
- 0x60,0xff,0xf2,0x00 = vqadd.u32 q8, q8, q9
59
- 0x70,0xff,0xf2,0x00 = vqadd.u64 q8, q8, q9
60
- 0xc0,0xef,0xa2,0x04 = vaddhn.i16 d16, q8, q9
61
- 0xd0,0xef,0xa2,0x04 = vaddhn.i32 d16, q8, q9
62
- 0xe0,0xef,0xa2,0x04 = vaddhn.i64 d16, q8, q9
63
- 0xc0,0xff,0xa2,0x04 = vraddhn.i16 d16, q8, q9
64
- 0xd0,0xff,0xa2,0x04 = vraddhn.i32 d16, q8, q9
65
- 0xe0,0xff,0xa2,0x04 = vraddhn.i64 d16, q8, q9
@@ -1,15 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xf0,0xff,0x20,0x05 = vcnt.8 d16, d16
3
- 0xf0,0xff,0x60,0x05 = vcnt.8 q8, q8
4
- 0xf0,0xff,0xa0,0x04 = vclz.i8 d16, d16
5
- 0xf4,0xff,0xa0,0x04 = vclz.i16 d16, d16
6
- 0xf8,0xff,0xa0,0x04 = vclz.i32 d16, d16
7
- 0xf0,0xff,0xe0,0x04 = vclz.i8 q8, q8
8
- 0xf4,0xff,0xe0,0x04 = vclz.i16 q8, q8
9
- 0xf8,0xff,0xe0,0x04 = vclz.i32 q8, q8
10
- 0xf0,0xff,0x20,0x04 = vcls.s8 d16, d16
11
- 0xf4,0xff,0x20,0x04 = vcls.s16 d16, d16
12
- 0xf8,0xff,0x20,0x04 = vcls.s32 d16, d16
13
- 0xf0,0xff,0x60,0x04 = vcls.s8 q8, q8
14
- 0xf4,0xff,0x60,0x04 = vcls.s16 q8, q8
15
- 0xf8,0xff,0x60,0x04 = vcls.s32 q8, q8
@@ -1,15 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x41,0xef,0xb0,0x01 = vand d16, d17, d16
3
- 0x40,0xef,0xf2,0x01 = vand q8, q8, q9
4
- 0x41,0xff,0xb0,0x01 = veor d16, d17, d16
5
- 0x40,0xff,0xf2,0x01 = veor q8, q8, q9
6
- 0x61,0xef,0xb0,0x01 = vorr d16, d17, d16
7
- 0x60,0xef,0xf2,0x01 = vorr q8, q8, q9
8
- 0x51,0xef,0xb0,0x01 = vbic d16, d17, d16
9
- 0x50,0xef,0xf2,0x01 = vbic q8, q8, q9
10
- 0x71,0xef,0xb0,0x01 = vorn d16, d17, d16
11
- 0x70,0xef,0xf2,0x01 = vorn q8, q8, q9
12
- 0xf0,0xff,0xa0,0x05 = vmvn d16, d16
13
- 0xf0,0xff,0xe0,0x05 = vmvn q8, q8
14
- 0x51,0xff,0xb0,0x21 = vbsl d18, d17, d16
15
- 0x54,0xff,0xf2,0x01 = vbsl q8, q10, q9
@@ -1,17 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xfb,0xff,0x20,0x07 = vcvt.s32.f32 d16, d16
3
- 0xfb,0xff,0xa0,0x07 = vcvt.u32.f32 d16, d16
4
- 0xfb,0xff,0x20,0x06 = vcvt.f32.s32 d16, d16
5
- 0xfb,0xff,0xa0,0x06 = vcvt.f32.u32 d16, d16
6
- 0xfb,0xff,0x60,0x07 = vcvt.s32.f32 q8, q8
7
- 0xfb,0xff,0xe0,0x07 = vcvt.u32.f32 q8, q8
8
- 0xfb,0xff,0x60,0x06 = vcvt.f32.s32 q8, q8
9
- 0xfb,0xff,0xe0,0x06 = vcvt.f32.u32 q8, q8
10
- 0xff,0xef,0x30,0x0f = vcvt.s32.f32 d16, d16, #1
11
- 0xff,0xff,0x30,0x0f = vcvt.u32.f32 d16, d16, #1
12
- 0xff,0xef,0x30,0x0e = vcvt.f32.s32 d16, d16, #1
13
- 0xff,0xff,0x30,0x0e = vcvt.f32.u32 d16, d16, #1
14
- 0xff,0xef,0x70,0x0f = vcvt.s32.f32 q8, q8, #1
15
- 0xff,0xff,0x70,0x0f = vcvt.u32.f32 q8, q8, #1
16
- 0xff,0xef,0x70,0x0e = vcvt.f32.s32 q8, q8, #1
17
- 0xff,0xff,0x70,0x0e = vcvt.f32.u32 q8, q8, #1
@@ -1,19 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xfb,0xff,0x20,0x07 = vcvt.s32.f32 d16, d16
3
- 0xfb,0xff,0xa0,0x07 = vcvt.u32.f32 d16, d16
4
- 0xfb,0xff,0x20,0x06 = vcvt.f32.s32 d16, d16
5
- 0xfb,0xff,0xa0,0x06 = vcvt.f32.u32 d16, d16
6
- 0xfb,0xff,0x60,0x07 = vcvt.s32.f32 q8, q8
7
- 0xfb,0xff,0xe0,0x07 = vcvt.u32.f32 q8, q8
8
- 0xfb,0xff,0x60,0x06 = vcvt.f32.s32 q8, q8
9
- 0xfb,0xff,0xe0,0x06 = vcvt.f32.u32 q8, q8
10
- 0xff,0xef,0x30,0x0f = vcvt.s32.f32 d16, d16, #1
11
- 0xff,0xff,0x30,0x0f = vcvt.u32.f32 d16, d16, #1
12
- 0xff,0xef,0x30,0x0e = vcvt.f32.s32 d16, d16, #1
13
- 0xff,0xff,0x30,0x0e = vcvt.f32.u32 d16, d16, #1
14
- 0xff,0xef,0x70,0x0f = vcvt.s32.f32 q8, q8, #1
15
- 0xff,0xff,0x70,0x0f = vcvt.u32.f32 q8, q8, #1
16
- 0xff,0xef,0x70,0x0e = vcvt.f32.s32 q8, q8, #1
17
- 0xff,0xff,0x70,0x0e = vcvt.f32.u32 q8, q8, #1
18
- 0xf6,0xff,0x20,0x07 = vcvt.f32.f16 q8, d16
19
- 0xf6,0xff,0x20,0x06 = vcvt.f16.f32 d16, q8
@@ -1,19 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xc0,0xee,0x90,0x1b = vdup.8 d16, r1
3
- 0x8f,0xee,0x30,0x2b = vdup.16 d15, r2
4
- 0x8e,0xee,0x10,0x3b = vdup.32 d14, r3
5
- 0xe2,0xee,0x90,0x4b = vdup.8 q9, r4
6
- 0xa0,0xee,0xb0,0x5b = vdup.16 q8, r5
7
- 0xae,0xee,0x10,0x6b = vdup.32 q7, r6
8
- 0xf1,0xff,0x0b,0x0c = vdup.8 d16, d11[0]
9
- 0xf2,0xff,0x0c,0x1c = vdup.16 d17, d12[0]
10
- 0xf4,0xff,0x0d,0x2c = vdup.32 d18, d13[0]
11
- 0xb1,0xff,0x4a,0x6c = vdup.8 q3, d10[0]
12
- 0xf2,0xff,0x49,0x2c = vdup.16 q9, d9[0]
13
- 0xf4,0xff,0x48,0x0c = vdup.32 q8, d8[0]
14
- 0xf3,0xff,0x0b,0x0c = vdup.8 d16, d11[1]
15
- 0xf6,0xff,0x0c,0x1c = vdup.16 d17, d12[1]
16
- 0xfc,0xff,0x0d,0x2c = vdup.32 d18, d13[1]
17
- 0xb3,0xff,0x4a,0x6c = vdup.8 q3, d10[1]
18
- 0xf6,0xff,0x49,0x2c = vdup.16 q9, d9[1]
19
- 0xfc,0xff,0x48,0x0c = vdup.32 q8, d8[1]
@@ -1,57 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x02,0xef,0x03,0x16 = vmax.s8 d1, d2, d3
3
- 0x15,0xef,0x06,0x46 = vmax.s16 d4, d5, d6
4
- 0x28,0xef,0x09,0x76 = vmax.s32 d7, d8, d9
5
- 0x0b,0xff,0x0c,0xa6 = vmax.u8 d10, d11, d12
6
- 0x1e,0xff,0x0f,0xd6 = vmax.u16 d13, d14, d15
7
- 0x61,0xff,0xa2,0x06 = vmax.u32 d16, d17, d18
8
- 0x44,0xef,0xa5,0x3f = vmax.f32 d19, d20, d21
9
- 0x02,0xef,0x03,0x26 = vmax.s8 d2, d2, d3
10
- 0x15,0xef,0x06,0x56 = vmax.s16 d5, d5, d6
11
- 0x28,0xef,0x09,0x86 = vmax.s32 d8, d8, d9
12
- 0x0b,0xff,0x0c,0xb6 = vmax.u8 d11, d11, d12
13
- 0x1e,0xff,0x0f,0xe6 = vmax.u16 d14, d14, d15
14
- 0x61,0xff,0xa2,0x16 = vmax.u32 d17, d17, d18
15
- 0x44,0xef,0xa5,0x4f = vmax.f32 d20, d20, d21
16
- 0x04,0xef,0x46,0x26 = vmax.s8 q1, q2, q3
17
- 0x1a,0xef,0x4c,0x86 = vmax.s16 q4, q5, q6
18
- 0x20,0xef,0xe2,0xe6 = vmax.s32 q7, q8, q9
19
- 0x46,0xff,0xe8,0x46 = vmax.u8 q10, q11, q12
20
- 0x5c,0xff,0xee,0xa6 = vmax.u16 q13, q14, q15
21
- 0x2e,0xff,0x60,0xc6 = vmax.u32 q6, q7, q8
22
- 0x4a,0xef,0x42,0x2f = vmax.f32 q9, q5, q1
23
- 0x04,0xef,0x46,0x46 = vmax.s8 q2, q2, q3
24
- 0x1a,0xef,0x4c,0xa6 = vmax.s16 q5, q5, q6
25
- 0x60,0xef,0xe2,0x06 = vmax.s32 q8, q8, q9
26
- 0x46,0xff,0xc4,0x66 = vmax.u8 q11, q11, q2
27
- 0x18,0xff,0x4a,0x86 = vmax.u16 q4, q4, q5
28
- 0x2e,0xff,0x60,0xe6 = vmax.u32 q7, q7, q8
29
- 0x04,0xef,0x42,0x4f = vmax.f32 q2, q2, q1
30
- 0x02,0xef,0x13,0x16 = vmin.s8 d1, d2, d3
31
- 0x15,0xef,0x16,0x46 = vmin.s16 d4, d5, d6
32
- 0x28,0xef,0x19,0x76 = vmin.s32 d7, d8, d9
33
- 0x0b,0xff,0x1c,0xa6 = vmin.u8 d10, d11, d12
34
- 0x1e,0xff,0x1f,0xd6 = vmin.u16 d13, d14, d15
35
- 0x61,0xff,0xb2,0x06 = vmin.u32 d16, d17, d18
36
- 0x64,0xef,0xa5,0x3f = vmin.f32 d19, d20, d21
37
- 0x02,0xef,0x13,0x26 = vmin.s8 d2, d2, d3
38
- 0x15,0xef,0x16,0x56 = vmin.s16 d5, d5, d6
39
- 0x28,0xef,0x19,0x86 = vmin.s32 d8, d8, d9
40
- 0x0b,0xff,0x1c,0xb6 = vmin.u8 d11, d11, d12
41
- 0x1e,0xff,0x1f,0xe6 = vmin.u16 d14, d14, d15
42
- 0x61,0xff,0xb2,0x16 = vmin.u32 d17, d17, d18
43
- 0x64,0xef,0xa5,0x4f = vmin.f32 d20, d20, d21
44
- 0x04,0xef,0x56,0x26 = vmin.s8 q1, q2, q3
45
- 0x1a,0xef,0x5c,0x86 = vmin.s16 q4, q5, q6
46
- 0x20,0xef,0xf2,0xe6 = vmin.s32 q7, q8, q9
47
- 0x46,0xff,0xf8,0x46 = vmin.u8 q10, q11, q12
48
- 0x5c,0xff,0xfe,0xa6 = vmin.u16 q13, q14, q15
49
- 0x2e,0xff,0x70,0xc6 = vmin.u32 q6, q7, q8
50
- 0x6a,0xef,0x42,0x2f = vmin.f32 q9, q5, q1
51
- 0x04,0xef,0x56,0x46 = vmin.s8 q2, q2, q3
52
- 0x1a,0xef,0x5c,0xa6 = vmin.s16 q5, q5, q6
53
- 0x60,0xef,0xf2,0x06 = vmin.s32 q8, q8, q9
54
- 0x46,0xff,0xd4,0x66 = vmin.u8 q11, q11, q2
55
- 0x18,0xff,0x5a,0x86 = vmin.u16 q4, q4, q5
56
- 0x2e,0xff,0x70,0xe6 = vmin.u32 q7, q7, q8
57
- 0x24,0xef,0x42,0x4f = vmin.f32 q2, q2, q1
@@ -1,58 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xc0,0xef,0x18,0x0e = vmov.i8 d16, #0x8
3
- 0xc1,0xef,0x10,0x08 = vmov.i16 d16, #0x10
4
- 0xc1,0xef,0x10,0x0a = vmov.i16 d16, #0x1000
5
- 0xc2,0xef,0x10,0x00 = vmov.i32 d16, #0x20
6
- 0xc2,0xef,0x10,0x02 = vmov.i32 d16, #0x2000
7
- 0xc2,0xef,0x10,0x04 = vmov.i32 d16, #0x200000
8
- 0xc2,0xef,0x10,0x06 = vmov.i32 d16, #0x20000000
9
- 0xc2,0xef,0x10,0x0c = vmov.i32 d16, #0x20ff
10
- 0xc2,0xef,0x10,0x0d = vmov.i32 d16, #0x20ffff
11
- 0xc1,0xff,0x33,0x0e = vmov.i64 d16, #0xff0000ff0000ffff
12
- 0xc0,0xef,0x58,0x0e = vmov.i8 q8, #0x8
13
- 0xc1,0xef,0x50,0x08 = vmov.i16 q8, #0x10
14
- 0xc1,0xef,0x50,0x0a = vmov.i16 q8, #0x1000
15
- 0xc2,0xef,0x50,0x00 = vmov.i32 q8, #0x20
16
- 0xc2,0xef,0x50,0x02 = vmov.i32 q8, #0x2000
17
- 0xc2,0xef,0x50,0x04 = vmov.i32 q8, #0x200000
18
- 0xc2,0xef,0x50,0x06 = vmov.i32 q8, #0x20000000
19
- 0xc2,0xef,0x50,0x0c = vmov.i32 q8, #0x20ff
20
- 0xc2,0xef,0x50,0x0d = vmov.i32 q8, #0x20ffff
21
- 0xc1,0xff,0x73,0x0e = vmov.i64 q8, #0xff0000ff0000ffff
22
- 0xc1,0xef,0x30,0x08 = vmvn.i16 d16, #0x10
23
- 0xc1,0xef,0x30,0x0a = vmvn.i16 d16, #0x1000
24
- 0xc2,0xef,0x30,0x00 = vmvn.i32 d16, #0x20
25
- 0xc2,0xef,0x30,0x02 = vmvn.i32 d16, #0x2000
26
- 0xc2,0xef,0x30,0x04 = vmvn.i32 d16, #0x200000
27
- 0xc2,0xef,0x30,0x06 = vmvn.i32 d16, #0x20000000
28
- 0xc2,0xef,0x30,0x0c = vmvn.i32 d16, #0x20ff
29
- 0xc2,0xef,0x30,0x0d = vmvn.i32 d16, #0x20ffff
30
- 0xc8,0xef,0x30,0x0a = vmovl.s8 q8, d16
31
- 0xd0,0xef,0x30,0x0a = vmovl.s16 q8, d16
32
- 0xe0,0xef,0x30,0x0a = vmovl.s32 q8, d16
33
- 0xc8,0xff,0x30,0x0a = vmovl.u8 q8, d16
34
- 0xd0,0xff,0x30,0x0a = vmovl.u16 q8, d16
35
- 0xe0,0xff,0x30,0x0a = vmovl.u32 q8, d16
36
- 0xf2,0xff,0x20,0x02 = vmovn.i16 d16, q8
37
- 0xf6,0xff,0x20,0x02 = vmovn.i32 d16, q8
38
- 0xfa,0xff,0x20,0x02 = vmovn.i64 d16, q8
39
- 0xf2,0xff,0xa0,0x02 = vqmovn.s16 d16, q8
40
- 0xf6,0xff,0xa0,0x02 = vqmovn.s32 d16, q8
41
- 0xfa,0xff,0xa0,0x02 = vqmovn.s64 d16, q8
42
- 0xf2,0xff,0xe0,0x02 = vqmovn.u16 d16, q8
43
- 0xf6,0xff,0xe0,0x02 = vqmovn.u32 d16, q8
44
- 0xfa,0xff,0xe0,0x02 = vqmovn.u64 d16, q8
45
- 0xf2,0xff,0x60,0x02 = vqmovun.s16 d16, q8
46
- 0xf6,0xff,0x60,0x02 = vqmovun.s32 d16, q8
47
- 0xfa,0xff,0x60,0x02 = vqmovun.s64 d16, q8
48
- 0x50,0xee,0xb0,0x0b = vmov.s8 r0, d16[1]
49
- 0x10,0xee,0xf0,0x0b = vmov.s16 r0, d16[1]
50
- 0xd0,0xee,0xb0,0x0b = vmov.u8 r0, d16[1]
51
- 0x90,0xee,0xf0,0x0b = vmov.u16 r0, d16[1]
52
- 0x30,0xee,0x90,0x0b = vmov.32 r0, d16[1]
53
- 0x40,0xee,0xb0,0x1b = vmov.8 d16[1], r1
54
- 0x00,0xee,0xf0,0x1b = vmov.16 d16[1], r1
55
- 0x20,0xee,0x90,0x1b = vmov.32 d16[1], r1
56
- 0x42,0xee,0xb0,0x1b = vmov.8 d18[1], r1
57
- 0x02,0xee,0xf0,0x1b = vmov.16 d18[1], r1
58
- 0x22,0xee,0x90,0x1b = vmov.32 d18[1], r1
@@ -1,41 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x42,0xef,0xa1,0x09 = vmla.i8 d16, d18, d17
3
- 0x52,0xef,0xa1,0x09 = vmla.i16 d16, d18, d17
4
- 0x62,0xef,0xa1,0x09 = vmla.i32 d16, d18, d17
5
- 0x42,0xef,0xb1,0x0d = vmla.f32 d16, d18, d17
6
- 0x40,0xef,0xe4,0x29 = vmla.i8 q9, q8, q10
7
- 0x50,0xef,0xe4,0x29 = vmla.i16 q9, q8, q10
8
- 0x60,0xef,0xe4,0x29 = vmla.i32 q9, q8, q10
9
- 0x40,0xef,0xf4,0x2d = vmla.f32 q9, q8, q10
10
- 0xe0,0xff,0xc3,0x80 = vmla.i32 q12, q8, d3[0]
11
- 0xc3,0xef,0xa2,0x08 = vmlal.s8 q8, d19, d18
12
- 0xd3,0xef,0xa2,0x08 = vmlal.s16 q8, d19, d18
13
- 0xe3,0xef,0xa2,0x08 = vmlal.s32 q8, d19, d18
14
- 0xc3,0xff,0xa2,0x08 = vmlal.u8 q8, d19, d18
15
- 0xd3,0xff,0xa2,0x08 = vmlal.u16 q8, d19, d18
16
- 0xe3,0xff,0xa2,0x08 = vmlal.u32 q8, d19, d18
17
- 0xa5,0xef,0x4a,0x02 = vmlal.s32 q0, d5, d10[0]
18
- 0xd3,0xef,0xa2,0x09 = vqdmlal.s16 q8, d19, d18
19
- 0xe3,0xef,0xa2,0x09 = vqdmlal.s32 q8, d19, d18
20
- 0xdb,0xef,0x47,0x63 = vqdmlal.s16 q11, d11, d7[0]
21
- 0xdb,0xef,0x4f,0x63 = vqdmlal.s16 q11, d11, d7[1]
22
- 0xdb,0xef,0x67,0x63 = vqdmlal.s16 q11, d11, d7[2]
23
- 0xdb,0xef,0x6f,0x63 = vqdmlal.s16 q11, d11, d7[3]
24
- 0x42,0xff,0xa1,0x09 = vmls.i8 d16, d18, d17
25
- 0x52,0xff,0xa1,0x09 = vmls.i16 d16, d18, d17
26
- 0x62,0xff,0xa1,0x09 = vmls.i32 d16, d18, d17
27
- 0x62,0xef,0xb1,0x0d = vmls.f32 d16, d18, d17
28
- 0x40,0xff,0xe4,0x29 = vmls.i8 q9, q8, q10
29
- 0x50,0xff,0xe4,0x29 = vmls.i16 q9, q8, q10
30
- 0x60,0xff,0xe4,0x29 = vmls.i32 q9, q8, q10
31
- 0x60,0xef,0xf4,0x2d = vmls.f32 q9, q8, q10
32
- 0x98,0xff,0xe6,0x84 = vmls.i16 q4, q12, d6[2]
33
- 0xc3,0xef,0xa2,0x0a = vmlsl.s8 q8, d19, d18
34
- 0xd3,0xef,0xa2,0x0a = vmlsl.s16 q8, d19, d18
35
- 0xe3,0xef,0xa2,0x0a = vmlsl.s32 q8, d19, d18
36
- 0xc3,0xff,0xa2,0x0a = vmlsl.u8 q8, d19, d18
37
- 0xd3,0xff,0xa2,0x0a = vmlsl.u16 q8, d19, d18
38
- 0xe3,0xff,0xa2,0x0a = vmlsl.u32 q8, d19, d18
39
- 0xd9,0xff,0xe9,0x66 = vmlsl.u16 q11, d25, d1[3]
40
- 0xd3,0xef,0xa2,0x0b = vqdmlsl.s16 q8, d19, d18
41
- 0xe3,0xef,0xa2,0x0b = vqdmlsl.s32 q8, d19, d18
@@ -1,31 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x40,0xef,0xb1,0x09 = vmul.i8 d16, d16, d17
3
- 0x50,0xef,0xb1,0x09 = vmul.i16 d16, d16, d17
4
- 0x60,0xef,0xb1,0x09 = vmul.i32 d16, d16, d17
5
- 0x40,0xff,0xb1,0x0d = vmul.f32 d16, d16, d17
6
- 0x40,0xef,0xf2,0x09 = vmul.i8 q8, q8, q9
7
- 0x50,0xef,0xf2,0x09 = vmul.i16 q8, q8, q9
8
- 0x60,0xef,0xf2,0x09 = vmul.i32 q8, q8, q9
9
- 0x40,0xff,0xf2,0x0d = vmul.f32 q8, q8, q9
10
- 0x40,0xff,0xb1,0x09 = vmul.p8 d16, d16, d17
11
- 0x40,0xff,0xf2,0x09 = vmul.p8 q8, q8, q9
12
- 0xd8,0xef,0x68,0x28 = vmul.i16 d18, d8, d0[3]
13
- 0x50,0xef,0xa1,0x0b = vqdmulh.s16 d16, d16, d17
14
- 0x60,0xef,0xa1,0x0b = vqdmulh.s32 d16, d16, d17
15
- 0x50,0xef,0xe2,0x0b = vqdmulh.s16 q8, q8, q9
16
- 0x60,0xef,0xe2,0x0b = vqdmulh.s32 q8, q8, q9
17
- 0x92,0xef,0x43,0xbc = vqdmulh.s16 d11, d2, d3[0]
18
- 0x50,0xff,0xa1,0x0b = vqrdmulh.s16 d16, d16, d17
19
- 0x60,0xff,0xa1,0x0b = vqrdmulh.s32 d16, d16, d17
20
- 0x50,0xff,0xe2,0x0b = vqrdmulh.s16 q8, q8, q9
21
- 0x60,0xff,0xe2,0x0b = vqrdmulh.s32 q8, q8, q9
22
- 0xc0,0xef,0xa1,0x0c = vmull.s8 q8, d16, d17
23
- 0xd0,0xef,0xa1,0x0c = vmull.s16 q8, d16, d17
24
- 0xe0,0xef,0xa1,0x0c = vmull.s32 q8, d16, d17
25
- 0xc0,0xff,0xa1,0x0c = vmull.u8 q8, d16, d17
26
- 0xd0,0xff,0xa1,0x0c = vmull.u16 q8, d16, d17
27
- 0xe0,0xff,0xa1,0x0c = vmull.u32 q8, d16, d17
28
- 0xc0,0xef,0xa1,0x0e = vmull.p8 q8, d16, d17
29
- 0xd0,0xef,0xa1,0x0d = vqdmull.s16 q8, d16, d17
30
- 0xe0,0xef,0xa1,0x0d = vqdmull.s32 q8, d16, d17
31
- 0x97,0xef,0x49,0x2b = vqdmull.s16 q1, d7, d1[1]
@@ -1,15 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0xf1,0xff,0xa0,0x03 = vneg.s8 d16, d16
3
- 0xf5,0xff,0xa0,0x03 = vneg.s16 d16, d16
4
- 0xf9,0xff,0xa0,0x03 = vneg.s32 d16, d16
5
- 0xf9,0xff,0xa0,0x07 = vneg.f32 d16, d16
6
- 0xf1,0xff,0xe0,0x03 = vneg.s8 q8, q8
7
- 0xf5,0xff,0xe0,0x03 = vneg.s16 q8, q8
8
- 0xf9,0xff,0xe0,0x03 = vneg.s32 q8, q8
9
- 0xf9,0xff,0xe0,0x07 = vneg.f32 q8, q8
10
- 0xf0,0xff,0xa0,0x07 = vqneg.s8 d16, d16
11
- 0xf4,0xff,0xa0,0x07 = vqneg.s16 d16, d16
12
- 0xf8,0xff,0xa0,0x07 = vqneg.s32 d16, d16
13
- 0xf0,0xff,0xe0,0x07 = vqneg.s8 q8, q8
14
- 0xf4,0xff,0xe0,0x07 = vqneg.s16 q8, q8
15
- 0xf8,0xff,0xe0,0x07 = vqneg.s32 q8, q8
@@ -1,43 +0,0 @@
1
- # CS_ARCH_ARM, CS_MODE_THUMB, None
2
- 0x05,0xef,0x1b,0x1b = vpadd.i8 d1, d5, d11
3
- 0x12,0xef,0x1c,0xdb = vpadd.i16 d13, d2, d12
4
- 0x21,0xef,0x1d,0xeb = vpadd.i32 d14, d1, d13
5
- 0x40,0xff,0x8e,0x3d = vpadd.f32 d19, d16, d14
6
- 0xb0,0xff,0x0a,0x72 = vpaddl.s8 d7, d10
7
- 0xb4,0xff,0x0b,0x82 = vpaddl.s16 d8, d11
8
- 0xb8,0xff,0x0c,0x92 = vpaddl.s32 d9, d12
9
- 0xb0,0xff,0x8d,0x02 = vpaddl.u8 d0, d13
10
- 0xb4,0xff,0x8e,0x52 = vpaddl.u16 d5, d14
11
- 0xb8,0xff,0x8f,0x62 = vpaddl.u32 d6, d15
12
- 0xb0,0xff,0x4e,0x82 = vpaddl.s8 q4, q7
13
- 0xb4,0xff,0x4c,0xa2 = vpaddl.s16 q5, q6
14
- 0xb8,0xff,0x4a,0xc2 = vpaddl.s32 q6, q5
15
- 0xb0,0xff,0xc8,0xe2 = vpaddl.u8 q7, q4
16
- 0xf4,0xff,0xc6,0x02 = vpaddl.u16 q8, q3
17
- 0xf8,0xff,0xc4,0x22 = vpaddl.u32 q9, q2
18
- 0xf0,0xff,0x04,0x06 = vpadal.s8 d16, d4
19
- 0xf4,0xff,0x09,0x46 = vpadal.s16 d20, d9
20
- 0xf8,0xff,0x01,0x26 = vpadal.s32 d18, d1
21
- 0xb0,0xff,0xa9,0xe6 = vpadal.u8 d14, d25
22
- 0xb4,0xff,0x86,0xc6 = vpadal.u16 d12, d6
23
- 0xb8,0xff,0x87,0xb6 = vpadal.u32 d11, d7
24
- 0xb0,0xff,0x64,0x86 = vpadal.s8 q4, q10
25
- 0xb4,0xff,0x66,0xa6 = vpadal.s16 q5, q11
26
- 0xb8,0xff,0x68,0xc6 = vpadal.s32 q6, q12
27
- 0xb0,0xff,0xea,0xe6 = vpadal.u8 q7, q13
28
- 0xf4,0xff,0xec,0x06 = vpadal.u16 q8, q14
29
- 0xf8,0xff,0xee,0x26 = vpadal.u32 q9, q15
30
- 0x4d,0xef,0x9a,0x0a = vpmin.s8 d16, d29, d10
31
- 0x5c,0xef,0x9b,0x1a = vpmin.s16 d17, d28, d11
32
- 0x6b,0xef,0x9c,0x2a = vpmin.s32 d18, d27, d12
33
- 0x4a,0xff,0x9d,0x3a = vpmin.u8 d19, d26, d13
34
- 0x59,0xff,0x9e,0x4a = vpmin.u16 d20, d25, d14
35
- 0x68,0xff,0x9f,0x5a = vpmin.u32 d21, d24, d15
36
- 0x67,0xff,0xa0,0x6f = vpmin.f32 d22, d23, d16
37
- 0x04,0xef,0xa1,0x3a = vpmax.s8 d3, d20, d17
38
- 0x15,0xef,0xa0,0x4a = vpmax.s16 d4, d21, d16
39
- 0x26,0xef,0x8f,0x5a = vpmax.s32 d5, d22, d15
40
- 0x07,0xff,0x8e,0x6a = vpmax.u8 d6, d23, d14
41
- 0x18,0xff,0x8d,0x7a = vpmax.u16 d7, d24, d13
42
- 0x29,0xff,0x8c,0x8a = vpmax.u32 d8, d25, d12
43
- 0x0a,0xff,0x8b,0x9f = vpmax.f32 d9, d26, d11