InstName.cs 10 KB

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