InstName.cs 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605
  1. namespace ARMeilleure.Instructions
  2. {
  3. enum InstName
  4. {
  5. // Base (AArch64)
  6. Adc,
  7. Adcs,
  8. Add,
  9. Adds,
  10. Adr,
  11. Adrp,
  12. And,
  13. Ands,
  14. Asrv,
  15. B,
  16. B_Cond,
  17. Bfm,
  18. Bic,
  19. Bics,
  20. Bl,
  21. Blr,
  22. Br,
  23. Brk,
  24. Cbnz,
  25. Cbz,
  26. Ccmn,
  27. Ccmp,
  28. Clrex,
  29. Cls,
  30. Clz,
  31. Crc32b,
  32. Crc32h,
  33. Crc32w,
  34. Crc32x,
  35. Crc32cb,
  36. Crc32ch,
  37. Crc32cw,
  38. Crc32cx,
  39. Csel,
  40. Csinc,
  41. Csinv,
  42. Csneg,
  43. Dmb,
  44. Dsb,
  45. Eon,
  46. Eor,
  47. Extr,
  48. Hint,
  49. Isb,
  50. Ldar,
  51. Ldaxp,
  52. Ldaxr,
  53. Ldp,
  54. Ldr,
  55. Ldr_Literal,
  56. Ldrs,
  57. Ldxr,
  58. Ldxp,
  59. Lslv,
  60. Lsrv,
  61. Madd,
  62. Movk,
  63. Movn,
  64. Movz,
  65. Mrs,
  66. Msr,
  67. Msub,
  68. Nop,
  69. Orn,
  70. Orr,
  71. Pfrm,
  72. Rbit,
  73. Ret,
  74. Rev16,
  75. Rev32,
  76. Rev64,
  77. Rorv,
  78. Sbc,
  79. Sbcs,
  80. Sbfm,
  81. Sdiv,
  82. Smaddl,
  83. Smsubl,
  84. Smulh,
  85. Smull,
  86. Smulw_,
  87. Ssat,
  88. Ssat16,
  89. Stlr,
  90. Stlxp,
  91. Stlxr,
  92. Stp,
  93. Str,
  94. Stxp,
  95. Stxr,
  96. Sub,
  97. Subs,
  98. Svc,
  99. Sxtb,
  100. Sxth,
  101. Sys,
  102. Tbnz,
  103. Tbz,
  104. Ubfm,
  105. Udiv,
  106. Umaddl,
  107. Umsubl,
  108. Umulh,
  109. Und,
  110. // FP & SIMD (AArch64)
  111. Abs_S,
  112. Abs_V,
  113. Add_S,
  114. Add_V,
  115. Addhn_V,
  116. Addp_S,
  117. Addp_V,
  118. Addv_V,
  119. Aesd_V,
  120. Aese_V,
  121. Aesimc_V,
  122. Aesmc_V,
  123. And_V,
  124. Bic_V,
  125. Bic_Vi,
  126. Bif_V,
  127. Bit_V,
  128. Bsl_V,
  129. Cls_V,
  130. Clz_V,
  131. Cmeq_S,
  132. Cmeq_V,
  133. Cmge_S,
  134. Cmge_V,
  135. Cmgt_S,
  136. Cmgt_V,
  137. Cmhi_S,
  138. Cmhi_V,
  139. Cmhs_S,
  140. Cmhs_V,
  141. Cmle_S,
  142. Cmle_V,
  143. Cmlt_S,
  144. Cmlt_V,
  145. Cmtst_S,
  146. Cmtst_V,
  147. Cnt_V,
  148. Dup_Gp,
  149. Dup_S,
  150. Dup_V,
  151. Eor_V,
  152. Ext_V,
  153. Fabd_S,
  154. Fabd_V,
  155. Fabs_S,
  156. Fabs_V,
  157. Facge_S,
  158. Facge_V,
  159. Facgt_S,
  160. Facgt_V,
  161. Fadd_S,
  162. Fadd_V,
  163. Faddp_S,
  164. Faddp_V,
  165. Fccmp_S,
  166. Fccmpe_S,
  167. Fcmeq_S,
  168. Fcmeq_V,
  169. Fcmge_S,
  170. Fcmge_V,
  171. Fcmgt_S,
  172. Fcmgt_V,
  173. Fcmle_S,
  174. Fcmle_V,
  175. Fcmlt_S,
  176. Fcmlt_V,
  177. Fcmp_S,
  178. Fcmpe_S,
  179. Fcsel_S,
  180. Fcvt_S,
  181. Fcvtas_Gp,
  182. Fcvtau_Gp,
  183. Fcvtl_V,
  184. Fcvtms_Gp,
  185. Fcvtmu_Gp,
  186. Fcvtn_V,
  187. Fcvtns_S,
  188. Fcvtns_V,
  189. Fcvtnu_S,
  190. Fcvtnu_V,
  191. Fcvtps_Gp,
  192. Fcvtpu_Gp,
  193. Fcvtzs_Gp,
  194. Fcvtzs_Gp_Fixed,
  195. Fcvtzs_S,
  196. Fcvtzs_V,
  197. Fcvtzs_V_Fixed,
  198. Fcvtzu_Gp,
  199. Fcvtzu_Gp_Fixed,
  200. Fcvtzu_S,
  201. Fcvtzu_V,
  202. Fcvtzu_V_Fixed,
  203. Fdiv_S,
  204. Fdiv_V,
  205. Fmadd_S,
  206. Fmax_S,
  207. Fmax_V,
  208. Fmaxnm_S,
  209. Fmaxnm_V,
  210. Fmaxp_V,
  211. Fmin_S,
  212. Fmin_V,
  213. Fminnm_S,
  214. Fminnm_V,
  215. Fminp_V,
  216. Fmla_Se,
  217. Fmla_V,
  218. Fmla_Ve,
  219. Fmls_Se,
  220. Fmls_V,
  221. Fmls_Ve,
  222. Fmov_S,
  223. Fmov_Si,
  224. Fmov_Vi,
  225. Fmov_Ftoi,
  226. Fmov_Itof,
  227. Fmov_Ftoi1,
  228. Fmov_Itof1,
  229. Fmsub_S,
  230. Fmul_S,
  231. Fmul_Se,
  232. Fmul_V,
  233. Fmul_Ve,
  234. Fmulx_S,
  235. Fmulx_Se,
  236. Fmulx_V,
  237. Fmulx_Ve,
  238. Fneg_S,
  239. Fneg_V,
  240. Fnmadd_S,
  241. Fnmsub_S,
  242. Fnmul_S,
  243. Frecpe_S,
  244. Frecpe_V,
  245. Frecps_S,
  246. Frecps_V,
  247. Frecpx_S,
  248. Frinta_S,
  249. Frinta_V,
  250. Frinti_S,
  251. Frinti_V,
  252. Frintm_S,
  253. Frintm_V,
  254. Frintn_S,
  255. Frintn_V,
  256. Frintp_S,
  257. Frintp_V,
  258. Frintx_S,
  259. Frintx_V,
  260. Frintz_S,
  261. Frintz_V,
  262. Frsqrte_S,
  263. Frsqrte_V,
  264. Frsqrts_S,
  265. Frsqrts_V,
  266. Fsqrt_S,
  267. Fsqrt_V,
  268. Fsub_S,
  269. Fsub_V,
  270. Ins_Gp,
  271. Ins_V,
  272. Ld__Vms,
  273. Ld__Vss,
  274. Mla_V,
  275. Mla_Ve,
  276. Mls_V,
  277. Mls_Ve,
  278. Movi_V,
  279. Mul_V,
  280. Mul_Ve,
  281. Mvni_V,
  282. Neg_S,
  283. Neg_V,
  284. Not_V,
  285. Orn_V,
  286. Orr_V,
  287. Orr_Vi,
  288. Raddhn_V,
  289. Rbit_V,
  290. Rev16_V,
  291. Rev32_V,
  292. Rev64_V,
  293. Rshrn_V,
  294. Rsubhn_V,
  295. Saba_V,
  296. Sabal_V,
  297. Sabd_V,
  298. Sabdl_V,
  299. Sadalp_V,
  300. Saddl_V,
  301. Saddlp_V,
  302. Saddlv_V,
  303. Saddw_V,
  304. Scvtf_Gp,
  305. Scvtf_Gp_Fixed,
  306. Scvtf_S,
  307. Scvtf_V,
  308. Scvtf_V_Fixed,
  309. Sha1c_V,
  310. Sha1h_V,
  311. Sha1m_V,
  312. Sha1p_V,
  313. Sha1su0_V,
  314. Sha1su1_V,
  315. Sha256h_V,
  316. Sha256h2_V,
  317. Sha256su0_V,
  318. Sha256su1_V,
  319. Shadd_V,
  320. Shl_S,
  321. Shl_V,
  322. Shll_V,
  323. Shrn_V,
  324. Shsub_V,
  325. Sli_S,
  326. Sli_V,
  327. Smax_V,
  328. Smaxp_V,
  329. Smaxv_V,
  330. Smin_V,
  331. Sminp_V,
  332. Sminv_V,
  333. Smlal_V,
  334. Smlal_Ve,
  335. Smlsl_V,
  336. Smlsl_Ve,
  337. Smov_S,
  338. Smull_V,
  339. Smull_Ve,
  340. Sqabs_S,
  341. Sqabs_V,
  342. Sqadd_S,
  343. Sqadd_V,
  344. Sqdmulh_S,
  345. Sqdmulh_V,
  346. Sqneg_S,
  347. Sqneg_V,
  348. Sqrdmulh_S,
  349. Sqrdmulh_V,
  350. Sqrshl_V,
  351. Sqrshrn_S,
  352. Sqrshrn_V,
  353. Sqrshrun_S,
  354. Sqrshrun_V,
  355. Sqshl_V,
  356. Sqshrn_S,
  357. Sqshrn_V,
  358. Sqshrun_S,
  359. Sqshrun_V,
  360. Sqsub_S,
  361. Sqsub_V,
  362. Sqxtn_S,
  363. Sqxtn_V,
  364. Sqxtun_S,
  365. Sqxtun_V,
  366. Srhadd_V,
  367. Sri_S,
  368. Sri_V,
  369. Srshl_V,
  370. Srshr_S,
  371. Srshr_V,
  372. Srsra_S,
  373. Srsra_V,
  374. Sshl_V,
  375. Sshll_V,
  376. Sshr_S,
  377. Sshr_V,
  378. Ssra_S,
  379. Ssra_V,
  380. Ssubl_V,
  381. Ssubw_V,
  382. St__Vms,
  383. St__Vss,
  384. Sub_S,
  385. Sub_V,
  386. Subhn_V,
  387. Suqadd_S,
  388. Suqadd_V,
  389. Tbl_V,
  390. Tbx_V,
  391. Trn1_V,
  392. Trn2_V,
  393. Uaba_V,
  394. Uabal_V,
  395. Uabd_V,
  396. Uabdl_V,
  397. Uadalp_V,
  398. Uaddl_V,
  399. Uaddlp_V,
  400. Uaddlv_V,
  401. Uaddw_V,
  402. Ucvtf_Gp,
  403. Ucvtf_Gp_Fixed,
  404. Ucvtf_S,
  405. Ucvtf_V,
  406. Ucvtf_V_Fixed,
  407. Uhadd_V,
  408. Uhsub_V,
  409. Umax_V,
  410. Umaxp_V,
  411. Umaxv_V,
  412. Umin_V,
  413. Uminp_V,
  414. Uminv_V,
  415. Umlal_V,
  416. Umlal_Ve,
  417. Umlsl_V,
  418. Umlsl_Ve,
  419. Umov_S,
  420. Umull_V,
  421. Umull_Ve,
  422. Uqadd_S,
  423. Uqadd_V,
  424. Uqrshl_V,
  425. Uqrshrn_S,
  426. Uqrshrn_V,
  427. Uqshl_V,
  428. Uqshrn_S,
  429. Uqshrn_V,
  430. Uqsub_S,
  431. Uqsub_V,
  432. Uqxtn_S,
  433. Uqxtn_V,
  434. Urhadd_V,
  435. Urshl_V,
  436. Urshr_S,
  437. Urshr_V,
  438. Ursra_S,
  439. Ursra_V,
  440. Ushl_V,
  441. Ushll_V,
  442. Ushr_S,
  443. Ushr_V,
  444. Usqadd_S,
  445. Usqadd_V,
  446. Usra_S,
  447. Usra_V,
  448. Usubl_V,
  449. Usubw_V,
  450. Uzp1_V,
  451. Uzp2_V,
  452. Xtn_V,
  453. Zip1_V,
  454. Zip2_V,
  455. // Base (AArch32)
  456. Bfc,
  457. Bfi,
  458. Blx,
  459. Bx,
  460. Cmp,
  461. Cmn,
  462. Movt,
  463. Mul,
  464. Lda,
  465. Ldab,
  466. Ldaex,
  467. Ldaexb,
  468. Ldaexd,
  469. Ldaexh,
  470. Ldah,
  471. Ldm,
  472. Ldrb,
  473. Ldrd,
  474. Ldrex,
  475. Ldrexb,
  476. Ldrexd,
  477. Ldrexh,
  478. Ldrh,
  479. Ldrsb,
  480. Ldrsh,
  481. Mcr,
  482. Mla,
  483. Mls,
  484. Mov,
  485. Mrc,
  486. Mrrc,
  487. Mvn,
  488. Pkh,
  489. Pld,
  490. Rev,
  491. Revsh,
  492. Rsb,
  493. Rsc,
  494. Sbfx,
  495. Smla__,
  496. Smlal,
  497. Smlal__,
  498. Smlaw_,
  499. Smmla,
  500. Smmls,
  501. Smul__,
  502. Smmul,
  503. Stl,
  504. Stlb,
  505. Stlex,
  506. Stlexb,
  507. Stlexd,
  508. Stlexh,
  509. Stlh,
  510. Stm,
  511. Strb,
  512. Strd,
  513. Strex,
  514. Strexb,
  515. Strexd,
  516. Strexh,
  517. Strh,
  518. Sxtb16,
  519. Teq,
  520. Trap,
  521. Tst,
  522. Ubfx,
  523. Umlal,
  524. Umull,
  525. Usat,
  526. Usat16,
  527. Uxtb,
  528. Uxtb16,
  529. Uxth,
  530. // FP & SIMD (AArch32)
  531. Vabs,
  532. Vadd,
  533. Vand,
  534. Vbif,
  535. Vbit,
  536. Vbsl,
  537. Vceq,
  538. Vcge,
  539. Vcgt,
  540. Vcle,
  541. Vclt,
  542. Vcmp,
  543. Vcmpe,
  544. Vcvt,
  545. Vdiv,
  546. Vdup,
  547. Veor,
  548. Vext,
  549. Vld1,
  550. Vld2,
  551. Vld3,
  552. Vld4,
  553. Vldm,
  554. Vldr,
  555. Vmax,
  556. Vmaxnm,
  557. Vmin,
  558. Vminnm,
  559. Vmla,
  560. Vmls,
  561. Vmlsl,
  562. Vmov,
  563. Vmovl,
  564. Vmovn,
  565. Vmrs,
  566. Vmsr,
  567. Vmul,
  568. Vmull,
  569. Vmvn,
  570. Vneg,
  571. Vnmul,
  572. Vnmla,
  573. Vnmls,
  574. Vorr,
  575. Vpadd,
  576. Vqrshrn,
  577. Vqrshrun,
  578. Vrev,
  579. Vrint,
  580. Vrshr,
  581. Vsel,
  582. Vshl,
  583. Vshr,
  584. Vshrn,
  585. Vst1,
  586. Vst2,
  587. Vst3,
  588. Vst4,
  589. Vstm,
  590. Vstr,
  591. Vsqrt,
  592. Vrecpe,
  593. Vrecps,
  594. Vrsqrte,
  595. Vrsqrts,
  596. Vsub,
  597. Vtbl,
  598. Vtrn,
  599. Vuzp,
  600. Vzip,
  601. }
  602. }