InstName.cs 10 KB

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