26 #define REG_SPEC(UPPER_NAME, LOWER_NAME, AARCH64_UPPER, AARCH64_LOWER, AARCH64_PARENT, MUTABLE) \
27 id2reg.emplace(ID_REG_AARCH64_##UPPER_NAME, \
28 triton::arch::Register(triton::arch::ID_REG_AARCH64_##UPPER_NAME, \
30 triton::arch::ID_REG_AARCH64_##AARCH64_PARENT, \
35 name2id.emplace(#LOWER_NAME, ID_REG_AARCH64_##UPPER_NAME);
37 #define REG_SPEC_NO_CAPSTONE REG_SPEC
38 #define SYS_REG_SPEC REG_SPEC
39 #include "triton/aarch64.spec"
48 #define REG_SPEC(UPPER_NAME, _1, _2, _3, _4, _5) \
49 case triton::extlibs::capstone::ARM64_REG_##UPPER_NAME: \
50 tritonId = triton::arch::ID_REG_AARCH64_##UPPER_NAME; \
53 #define SYS_REG_SPEC(UPPER_NAME, _1, _2, _3, _4, _5) \
54 case triton::extlibs::capstone::ARM64_SYSREG_##UPPER_NAME: \
55 tritonId = triton::arch::ID_REG_AARCH64_##UPPER_NAME; \
58 #define SYS_REG_SPEC(_1, _2, _3, _4, _5, _6)
61 #define REG_SPEC_NO_CAPSTONE(_1, _2, _3, _4, _5, _6)
62 #include "triton/aarch64.spec"
77 case triton::extlibs::capstone::ARM64_SFT_INVALID:
81 case triton::extlibs::capstone::ARM64_SFT_ASR:
85 case triton::extlibs::capstone::ARM64_SFT_LSL:
89 case triton::extlibs::capstone::ARM64_SFT_LSR:
93 case triton::extlibs::capstone::ARM64_SFT_ROR:
110 case triton::extlibs::capstone::ARM64_EXT_INVALID:
114 case triton::extlibs::capstone::ARM64_EXT_UXTB:
118 case triton::extlibs::capstone::ARM64_EXT_UXTH:
122 case triton::extlibs::capstone::ARM64_EXT_UXTW:
126 case triton::extlibs::capstone::ARM64_EXT_UXTX:
130 case triton::extlibs::capstone::ARM64_EXT_SXTB:
134 case triton::extlibs::capstone::ARM64_EXT_SXTH:
138 case triton::extlibs::capstone::ARM64_EXT_SXTW:
142 case triton::extlibs::capstone::ARM64_EXT_SXTX:
159 case triton::extlibs::capstone::ARM64_VAS_INVALID:
163 case triton::extlibs::capstone::ARM64_VAS_16B:
167 case triton::extlibs::capstone::ARM64_VAS_8B:
171 case triton::extlibs::capstone::ARM64_VAS_8H:
175 case triton::extlibs::capstone::ARM64_VAS_4H:
179 case triton::extlibs::capstone::ARM64_VAS_4S:
183 case triton::extlibs::capstone::ARM64_VAS_2S:
187 case triton::extlibs::capstone::ARM64_VAS_2D:
191 case triton::extlibs::capstone::ARM64_VAS_1D:
208 case triton::extlibs::capstone::ARM64_CC_INVALID:
212 case triton::extlibs::capstone::ARM64_CC_AL:
216 case triton::extlibs::capstone::ARM64_CC_EQ:
220 case triton::extlibs::capstone::ARM64_CC_GE:
224 case triton::extlibs::capstone::ARM64_CC_GT:
228 case triton::extlibs::capstone::ARM64_CC_HI:
232 case triton::extlibs::capstone::ARM64_CC_HS:
236 case triton::extlibs::capstone::ARM64_CC_LE:
240 case triton::extlibs::capstone::ARM64_CC_LO:
244 case triton::extlibs::capstone::ARM64_CC_LS:
248 case triton::extlibs::capstone::ARM64_CC_LT:
252 case triton::extlibs::capstone::ARM64_CC_MI:
256 case triton::extlibs::capstone::ARM64_CC_NE:
260 case triton::extlibs::capstone::ARM64_CC_PL:
264 case triton::extlibs::capstone::ARM64_CC_VC:
268 case triton::extlibs::capstone::ARM64_CC_VS:
285 case triton::extlibs::capstone::ARM64_INS_INVALID:
289 case triton::extlibs::capstone::ARM64_INS_ABS:
293 case triton::extlibs::capstone::ARM64_INS_ADC:
297 #if CS_API_MAJOR >= 5
298 case triton::extlibs::capstone::ARM64_INS_ADCS:
303 case triton::extlibs::capstone::ARM64_INS_ADDHN:
307 case triton::extlibs::capstone::ARM64_INS_ADDHN2:
311 case triton::extlibs::capstone::ARM64_INS_ADDP:
315 case triton::extlibs::capstone::ARM64_INS_ADD:
319 #if CS_API_MAJOR >= 5
320 case triton::extlibs::capstone::ARM64_INS_ADDS:
325 case triton::extlibs::capstone::ARM64_INS_ADDV:
329 case triton::extlibs::capstone::ARM64_INS_ADR:
333 case triton::extlibs::capstone::ARM64_INS_ADRP:
337 case triton::extlibs::capstone::ARM64_INS_AESD:
341 case triton::extlibs::capstone::ARM64_INS_AESE:
345 case triton::extlibs::capstone::ARM64_INS_AESIMC:
349 case triton::extlibs::capstone::ARM64_INS_AESMC:
353 case triton::extlibs::capstone::ARM64_INS_AND:
357 #if CS_API_MAJOR >= 5
358 case triton::extlibs::capstone::ARM64_INS_ANDS:
363 case triton::extlibs::capstone::ARM64_INS_ASR:
367 case triton::extlibs::capstone::ARM64_INS_B:
371 case triton::extlibs::capstone::ARM64_INS_BFM:
375 case triton::extlibs::capstone::ARM64_INS_BIC:
379 case triton::extlibs::capstone::ARM64_INS_BIF:
383 case triton::extlibs::capstone::ARM64_INS_BIT:
387 case triton::extlibs::capstone::ARM64_INS_BL:
391 case triton::extlibs::capstone::ARM64_INS_BLR:
395 case triton::extlibs::capstone::ARM64_INS_BR:
399 case triton::extlibs::capstone::ARM64_INS_BRK:
403 case triton::extlibs::capstone::ARM64_INS_BSL:
407 case triton::extlibs::capstone::ARM64_INS_CBNZ:
411 case triton::extlibs::capstone::ARM64_INS_CBZ:
415 case triton::extlibs::capstone::ARM64_INS_CCMN:
419 case triton::extlibs::capstone::ARM64_INS_CCMP:
423 case triton::extlibs::capstone::ARM64_INS_CLREX:
427 case triton::extlibs::capstone::ARM64_INS_CLS:
431 case triton::extlibs::capstone::ARM64_INS_CLZ:
435 case triton::extlibs::capstone::ARM64_INS_CMEQ:
439 case triton::extlibs::capstone::ARM64_INS_CMGE:
443 case triton::extlibs::capstone::ARM64_INS_CMGT:
447 case triton::extlibs::capstone::ARM64_INS_CMHI:
451 case triton::extlibs::capstone::ARM64_INS_CMHS:
455 case triton::extlibs::capstone::ARM64_INS_CMLE:
459 case triton::extlibs::capstone::ARM64_INS_CMLT:
463 case triton::extlibs::capstone::ARM64_INS_CMTST:
467 case triton::extlibs::capstone::ARM64_INS_CNT:
471 case triton::extlibs::capstone::ARM64_INS_MOV:
475 case triton::extlibs::capstone::ARM64_INS_CRC32B:
479 case triton::extlibs::capstone::ARM64_INS_CRC32CB:
483 case triton::extlibs::capstone::ARM64_INS_CRC32CH:
487 case triton::extlibs::capstone::ARM64_INS_CRC32CW:
491 case triton::extlibs::capstone::ARM64_INS_CRC32CX:
495 case triton::extlibs::capstone::ARM64_INS_CRC32H:
499 case triton::extlibs::capstone::ARM64_INS_CRC32W:
503 case triton::extlibs::capstone::ARM64_INS_CRC32X:
507 case triton::extlibs::capstone::ARM64_INS_CSEL:
511 case triton::extlibs::capstone::ARM64_INS_CSINC:
515 case triton::extlibs::capstone::ARM64_INS_CSINV:
519 case triton::extlibs::capstone::ARM64_INS_CSNEG:
523 case triton::extlibs::capstone::ARM64_INS_DCPS1:
527 case triton::extlibs::capstone::ARM64_INS_DCPS2:
531 case triton::extlibs::capstone::ARM64_INS_DCPS3:
535 case triton::extlibs::capstone::ARM64_INS_DMB:
539 case triton::extlibs::capstone::ARM64_INS_DRPS:
543 case triton::extlibs::capstone::ARM64_INS_DSB:
547 case triton::extlibs::capstone::ARM64_INS_DUP:
551 case triton::extlibs::capstone::ARM64_INS_EON:
555 case triton::extlibs::capstone::ARM64_INS_EOR:
559 case triton::extlibs::capstone::ARM64_INS_ERET:
563 case triton::extlibs::capstone::ARM64_INS_EXTR:
567 case triton::extlibs::capstone::ARM64_INS_EXT:
571 case triton::extlibs::capstone::ARM64_INS_FABD:
575 case triton::extlibs::capstone::ARM64_INS_FABS:
579 case triton::extlibs::capstone::ARM64_INS_FACGE:
583 case triton::extlibs::capstone::ARM64_INS_FACGT:
587 case triton::extlibs::capstone::ARM64_INS_FADD:
591 case triton::extlibs::capstone::ARM64_INS_FADDP:
595 case triton::extlibs::capstone::ARM64_INS_FCCMP:
599 case triton::extlibs::capstone::ARM64_INS_FCCMPE:
603 case triton::extlibs::capstone::ARM64_INS_FCMEQ:
607 case triton::extlibs::capstone::ARM64_INS_FCMGE:
611 case triton::extlibs::capstone::ARM64_INS_FCMGT:
615 case triton::extlibs::capstone::ARM64_INS_FCMLE:
619 case triton::extlibs::capstone::ARM64_INS_FCMLT:
623 case triton::extlibs::capstone::ARM64_INS_FCMP:
627 case triton::extlibs::capstone::ARM64_INS_FCMPE:
631 case triton::extlibs::capstone::ARM64_INS_FCSEL:
635 case triton::extlibs::capstone::ARM64_INS_FCVTAS:
639 case triton::extlibs::capstone::ARM64_INS_FCVTAU:
643 case triton::extlibs::capstone::ARM64_INS_FCVT:
647 case triton::extlibs::capstone::ARM64_INS_FCVTL:
651 case triton::extlibs::capstone::ARM64_INS_FCVTL2:
655 case triton::extlibs::capstone::ARM64_INS_FCVTMS:
659 case triton::extlibs::capstone::ARM64_INS_FCVTMU:
663 case triton::extlibs::capstone::ARM64_INS_FCVTNS:
667 case triton::extlibs::capstone::ARM64_INS_FCVTNU:
671 case triton::extlibs::capstone::ARM64_INS_FCVTN:
675 case triton::extlibs::capstone::ARM64_INS_FCVTN2:
679 case triton::extlibs::capstone::ARM64_INS_FCVTPS:
683 case triton::extlibs::capstone::ARM64_INS_FCVTPU:
687 case triton::extlibs::capstone::ARM64_INS_FCVTXN:
691 case triton::extlibs::capstone::ARM64_INS_FCVTXN2:
695 case triton::extlibs::capstone::ARM64_INS_FCVTZS:
699 case triton::extlibs::capstone::ARM64_INS_FCVTZU:
703 case triton::extlibs::capstone::ARM64_INS_FDIV:
707 case triton::extlibs::capstone::ARM64_INS_FMADD:
711 case triton::extlibs::capstone::ARM64_INS_FMAX:
715 case triton::extlibs::capstone::ARM64_INS_FMAXNM:
719 case triton::extlibs::capstone::ARM64_INS_FMAXNMP:
723 case triton::extlibs::capstone::ARM64_INS_FMAXNMV:
727 case triton::extlibs::capstone::ARM64_INS_FMAXP:
731 case triton::extlibs::capstone::ARM64_INS_FMAXV:
735 case triton::extlibs::capstone::ARM64_INS_FMIN:
739 case triton::extlibs::capstone::ARM64_INS_FMINNM:
743 case triton::extlibs::capstone::ARM64_INS_FMINNMP:
747 case triton::extlibs::capstone::ARM64_INS_FMINNMV:
751 case triton::extlibs::capstone::ARM64_INS_FMINP:
755 case triton::extlibs::capstone::ARM64_INS_FMINV:
759 case triton::extlibs::capstone::ARM64_INS_FMLA:
763 case triton::extlibs::capstone::ARM64_INS_FMLS:
767 case triton::extlibs::capstone::ARM64_INS_FMOV:
771 case triton::extlibs::capstone::ARM64_INS_FMSUB:
775 case triton::extlibs::capstone::ARM64_INS_FMUL:
779 case triton::extlibs::capstone::ARM64_INS_FMULX:
783 case triton::extlibs::capstone::ARM64_INS_FNEG:
787 case triton::extlibs::capstone::ARM64_INS_FNMADD:
791 case triton::extlibs::capstone::ARM64_INS_FNMSUB:
795 case triton::extlibs::capstone::ARM64_INS_FNMUL:
799 case triton::extlibs::capstone::ARM64_INS_FRECPE:
803 case triton::extlibs::capstone::ARM64_INS_FRECPS:
807 case triton::extlibs::capstone::ARM64_INS_FRECPX:
811 case triton::extlibs::capstone::ARM64_INS_FRINTA:
815 case triton::extlibs::capstone::ARM64_INS_FRINTI:
819 case triton::extlibs::capstone::ARM64_INS_FRINTM:
823 case triton::extlibs::capstone::ARM64_INS_FRINTN:
827 case triton::extlibs::capstone::ARM64_INS_FRINTP:
831 case triton::extlibs::capstone::ARM64_INS_FRINTX:
835 case triton::extlibs::capstone::ARM64_INS_FRINTZ:
839 case triton::extlibs::capstone::ARM64_INS_FRSQRTE:
843 case triton::extlibs::capstone::ARM64_INS_FRSQRTS:
847 case triton::extlibs::capstone::ARM64_INS_FSQRT:
851 case triton::extlibs::capstone::ARM64_INS_FSUB:
855 case triton::extlibs::capstone::ARM64_INS_HINT:
859 case triton::extlibs::capstone::ARM64_INS_HLT:
863 case triton::extlibs::capstone::ARM64_INS_HVC:
867 case triton::extlibs::capstone::ARM64_INS_INS:
871 case triton::extlibs::capstone::ARM64_INS_ISB:
875 case triton::extlibs::capstone::ARM64_INS_LD1:
879 case triton::extlibs::capstone::ARM64_INS_LD1R:
883 case triton::extlibs::capstone::ARM64_INS_LD2R:
887 case triton::extlibs::capstone::ARM64_INS_LD2:
891 case triton::extlibs::capstone::ARM64_INS_LD3R:
895 case triton::extlibs::capstone::ARM64_INS_LD3:
899 case triton::extlibs::capstone::ARM64_INS_LD4:
903 case triton::extlibs::capstone::ARM64_INS_LD4R:
907 case triton::extlibs::capstone::ARM64_INS_LDARB:
911 case triton::extlibs::capstone::ARM64_INS_LDARH:
915 case triton::extlibs::capstone::ARM64_INS_LDAR:
919 case triton::extlibs::capstone::ARM64_INS_LDAXP:
923 case triton::extlibs::capstone::ARM64_INS_LDAXRB:
927 case triton::extlibs::capstone::ARM64_INS_LDAXRH:
931 case triton::extlibs::capstone::ARM64_INS_LDAXR:
935 case triton::extlibs::capstone::ARM64_INS_LDNP:
939 case triton::extlibs::capstone::ARM64_INS_LDP:
943 case triton::extlibs::capstone::ARM64_INS_LDPSW:
947 case triton::extlibs::capstone::ARM64_INS_LDRB:
951 case triton::extlibs::capstone::ARM64_INS_LDR:
955 case triton::extlibs::capstone::ARM64_INS_LDRH:
959 case triton::extlibs::capstone::ARM64_INS_LDRSB:
963 case triton::extlibs::capstone::ARM64_INS_LDRSH:
967 case triton::extlibs::capstone::ARM64_INS_LDRSW:
971 case triton::extlibs::capstone::ARM64_INS_LDTRB:
975 case triton::extlibs::capstone::ARM64_INS_LDTRH:
979 case triton::extlibs::capstone::ARM64_INS_LDTRSB:
983 case triton::extlibs::capstone::ARM64_INS_LDTRSH:
987 case triton::extlibs::capstone::ARM64_INS_LDTRSW:
991 case triton::extlibs::capstone::ARM64_INS_LDTR:
995 case triton::extlibs::capstone::ARM64_INS_LDURB:
999 case triton::extlibs::capstone::ARM64_INS_LDUR:
1003 case triton::extlibs::capstone::ARM64_INS_LDURH:
1007 case triton::extlibs::capstone::ARM64_INS_LDURSB:
1011 case triton::extlibs::capstone::ARM64_INS_LDURSH:
1015 case triton::extlibs::capstone::ARM64_INS_LDURSW:
1019 case triton::extlibs::capstone::ARM64_INS_LDXP:
1023 case triton::extlibs::capstone::ARM64_INS_LDXRB:
1027 case triton::extlibs::capstone::ARM64_INS_LDXRH:
1031 case triton::extlibs::capstone::ARM64_INS_LDXR:
1035 case triton::extlibs::capstone::ARM64_INS_LSL:
1039 case triton::extlibs::capstone::ARM64_INS_LSR:
1043 case triton::extlibs::capstone::ARM64_INS_MADD:
1047 case triton::extlibs::capstone::ARM64_INS_MLA:
1051 case triton::extlibs::capstone::ARM64_INS_MLS:
1055 case triton::extlibs::capstone::ARM64_INS_MOVI:
1059 case triton::extlibs::capstone::ARM64_INS_MOVK:
1063 case triton::extlibs::capstone::ARM64_INS_MOVN:
1067 case triton::extlibs::capstone::ARM64_INS_MOVZ:
1071 case triton::extlibs::capstone::ARM64_INS_MRS:
1075 case triton::extlibs::capstone::ARM64_INS_MSR:
1079 case triton::extlibs::capstone::ARM64_INS_MSUB:
1083 case triton::extlibs::capstone::ARM64_INS_MUL:
1087 case triton::extlibs::capstone::ARM64_INS_MVNI:
1091 case triton::extlibs::capstone::ARM64_INS_NEG:
1095 case triton::extlibs::capstone::ARM64_INS_NOT:
1099 case triton::extlibs::capstone::ARM64_INS_ORN:
1103 case triton::extlibs::capstone::ARM64_INS_ORR:
1107 case triton::extlibs::capstone::ARM64_INS_PMULL2:
1111 case triton::extlibs::capstone::ARM64_INS_PMULL:
1115 case triton::extlibs::capstone::ARM64_INS_PMUL:
1119 case triton::extlibs::capstone::ARM64_INS_PRFM:
1123 case triton::extlibs::capstone::ARM64_INS_PRFUM:
1127 case triton::extlibs::capstone::ARM64_INS_RADDHN:
1131 case triton::extlibs::capstone::ARM64_INS_RADDHN2:
1135 case triton::extlibs::capstone::ARM64_INS_RBIT:
1139 case triton::extlibs::capstone::ARM64_INS_RET:
1143 case triton::extlibs::capstone::ARM64_INS_REV16:
1147 case triton::extlibs::capstone::ARM64_INS_REV32:
1151 case triton::extlibs::capstone::ARM64_INS_REV64:
1155 case triton::extlibs::capstone::ARM64_INS_REV:
1159 case triton::extlibs::capstone::ARM64_INS_ROR:
1163 case triton::extlibs::capstone::ARM64_INS_RSHRN2:
1167 case triton::extlibs::capstone::ARM64_INS_RSHRN:
1171 case triton::extlibs::capstone::ARM64_INS_RSUBHN:
1175 case triton::extlibs::capstone::ARM64_INS_RSUBHN2:
1179 case triton::extlibs::capstone::ARM64_INS_SABAL2:
1183 case triton::extlibs::capstone::ARM64_INS_SABAL:
1187 case triton::extlibs::capstone::ARM64_INS_SABA:
1191 case triton::extlibs::capstone::ARM64_INS_SABDL2:
1195 case triton::extlibs::capstone::ARM64_INS_SABDL:
1199 case triton::extlibs::capstone::ARM64_INS_SABD:
1203 case triton::extlibs::capstone::ARM64_INS_SADALP:
1207 case triton::extlibs::capstone::ARM64_INS_SADDLP:
1211 case triton::extlibs::capstone::ARM64_INS_SADDLV:
1215 case triton::extlibs::capstone::ARM64_INS_SADDL2:
1219 case triton::extlibs::capstone::ARM64_INS_SADDL:
1223 case triton::extlibs::capstone::ARM64_INS_SADDW2:
1227 case triton::extlibs::capstone::ARM64_INS_SADDW:
1231 case triton::extlibs::capstone::ARM64_INS_SBC:
1235 #if CS_API_MAJOR >= 5
1236 case triton::extlibs::capstone::ARM64_INS_SBCS:
1241 case triton::extlibs::capstone::ARM64_INS_SBFM:
1245 case triton::extlibs::capstone::ARM64_INS_SCVTF:
1249 case triton::extlibs::capstone::ARM64_INS_SDIV:
1253 case triton::extlibs::capstone::ARM64_INS_SHA1C:
1257 case triton::extlibs::capstone::ARM64_INS_SHA1H:
1261 case triton::extlibs::capstone::ARM64_INS_SHA1M:
1265 case triton::extlibs::capstone::ARM64_INS_SHA1P:
1269 case triton::extlibs::capstone::ARM64_INS_SHA1SU0:
1273 case triton::extlibs::capstone::ARM64_INS_SHA1SU1:
1277 case triton::extlibs::capstone::ARM64_INS_SHA256H2:
1281 case triton::extlibs::capstone::ARM64_INS_SHA256H:
1285 case triton::extlibs::capstone::ARM64_INS_SHA256SU0:
1289 case triton::extlibs::capstone::ARM64_INS_SHA256SU1:
1293 case triton::extlibs::capstone::ARM64_INS_SHADD:
1297 case triton::extlibs::capstone::ARM64_INS_SHLL2:
1301 case triton::extlibs::capstone::ARM64_INS_SHLL:
1305 case triton::extlibs::capstone::ARM64_INS_SHL:
1309 case triton::extlibs::capstone::ARM64_INS_SHRN2:
1313 case triton::extlibs::capstone::ARM64_INS_SHRN:
1317 case triton::extlibs::capstone::ARM64_INS_SHSUB:
1321 case triton::extlibs::capstone::ARM64_INS_SLI:
1325 case triton::extlibs::capstone::ARM64_INS_SMADDL:
1329 case triton::extlibs::capstone::ARM64_INS_SMAXP:
1333 case triton::extlibs::capstone::ARM64_INS_SMAXV:
1337 case triton::extlibs::capstone::ARM64_INS_SMAX:
1341 case triton::extlibs::capstone::ARM64_INS_SMC:
1345 case triton::extlibs::capstone::ARM64_INS_SMINP:
1349 case triton::extlibs::capstone::ARM64_INS_SMINV:
1353 case triton::extlibs::capstone::ARM64_INS_SMIN:
1357 case triton::extlibs::capstone::ARM64_INS_SMLAL2:
1361 case triton::extlibs::capstone::ARM64_INS_SMLAL:
1365 case triton::extlibs::capstone::ARM64_INS_SMLSL2:
1369 case triton::extlibs::capstone::ARM64_INS_SMLSL:
1373 case triton::extlibs::capstone::ARM64_INS_SMOV:
1377 case triton::extlibs::capstone::ARM64_INS_SMSUBL:
1381 case triton::extlibs::capstone::ARM64_INS_SMULH:
1385 case triton::extlibs::capstone::ARM64_INS_SMULL2:
1389 case triton::extlibs::capstone::ARM64_INS_SMULL:
1393 case triton::extlibs::capstone::ARM64_INS_SQABS:
1397 case triton::extlibs::capstone::ARM64_INS_SQADD:
1401 case triton::extlibs::capstone::ARM64_INS_SQDMLAL:
1405 case triton::extlibs::capstone::ARM64_INS_SQDMLAL2:
1409 case triton::extlibs::capstone::ARM64_INS_SQDMLSL:
1413 case triton::extlibs::capstone::ARM64_INS_SQDMLSL2:
1417 case triton::extlibs::capstone::ARM64_INS_SQDMULH:
1421 case triton::extlibs::capstone::ARM64_INS_SQDMULL:
1425 case triton::extlibs::capstone::ARM64_INS_SQDMULL2:
1429 case triton::extlibs::capstone::ARM64_INS_SQNEG:
1433 case triton::extlibs::capstone::ARM64_INS_SQRDMULH:
1437 case triton::extlibs::capstone::ARM64_INS_SQRSHL:
1441 case triton::extlibs::capstone::ARM64_INS_SQRSHRN:
1445 case triton::extlibs::capstone::ARM64_INS_SQRSHRN2:
1449 case triton::extlibs::capstone::ARM64_INS_SQRSHRUN:
1453 case triton::extlibs::capstone::ARM64_INS_SQRSHRUN2:
1457 case triton::extlibs::capstone::ARM64_INS_SQSHLU:
1461 case triton::extlibs::capstone::ARM64_INS_SQSHL:
1465 case triton::extlibs::capstone::ARM64_INS_SQSHRN:
1469 case triton::extlibs::capstone::ARM64_INS_SQSHRN2:
1473 case triton::extlibs::capstone::ARM64_INS_SQSHRUN:
1477 case triton::extlibs::capstone::ARM64_INS_SQSHRUN2:
1481 case triton::extlibs::capstone::ARM64_INS_SQSUB:
1485 case triton::extlibs::capstone::ARM64_INS_SQXTN2:
1489 case triton::extlibs::capstone::ARM64_INS_SQXTN:
1493 case triton::extlibs::capstone::ARM64_INS_SQXTUN2:
1497 case triton::extlibs::capstone::ARM64_INS_SQXTUN:
1501 case triton::extlibs::capstone::ARM64_INS_SRHADD:
1505 case triton::extlibs::capstone::ARM64_INS_SRI:
1509 case triton::extlibs::capstone::ARM64_INS_SRSHL:
1513 case triton::extlibs::capstone::ARM64_INS_SRSHR:
1517 case triton::extlibs::capstone::ARM64_INS_SRSRA:
1521 case triton::extlibs::capstone::ARM64_INS_SSHLL2:
1525 case triton::extlibs::capstone::ARM64_INS_SSHLL:
1529 case triton::extlibs::capstone::ARM64_INS_SSHL:
1533 case triton::extlibs::capstone::ARM64_INS_SSHR:
1537 case triton::extlibs::capstone::ARM64_INS_SSRA:
1541 case triton::extlibs::capstone::ARM64_INS_SSUBL2:
1545 case triton::extlibs::capstone::ARM64_INS_SSUBL:
1549 case triton::extlibs::capstone::ARM64_INS_SSUBW2:
1553 case triton::extlibs::capstone::ARM64_INS_SSUBW:
1557 case triton::extlibs::capstone::ARM64_INS_ST1:
1561 case triton::extlibs::capstone::ARM64_INS_ST2:
1565 case triton::extlibs::capstone::ARM64_INS_ST3:
1569 case triton::extlibs::capstone::ARM64_INS_ST4:
1573 case triton::extlibs::capstone::ARM64_INS_STLRB:
1577 case triton::extlibs::capstone::ARM64_INS_STLRH:
1581 case triton::extlibs::capstone::ARM64_INS_STLR:
1585 case triton::extlibs::capstone::ARM64_INS_STLXP:
1589 case triton::extlibs::capstone::ARM64_INS_STLXRB:
1593 case triton::extlibs::capstone::ARM64_INS_STLXRH:
1597 case triton::extlibs::capstone::ARM64_INS_STLXR:
1601 case triton::extlibs::capstone::ARM64_INS_STNP:
1605 case triton::extlibs::capstone::ARM64_INS_STP:
1609 case triton::extlibs::capstone::ARM64_INS_STRB:
1613 case triton::extlibs::capstone::ARM64_INS_STR:
1617 case triton::extlibs::capstone::ARM64_INS_STRH:
1621 case triton::extlibs::capstone::ARM64_INS_STTRB:
1625 case triton::extlibs::capstone::ARM64_INS_STTRH:
1629 case triton::extlibs::capstone::ARM64_INS_STTR:
1633 case triton::extlibs::capstone::ARM64_INS_STURB:
1637 case triton::extlibs::capstone::ARM64_INS_STUR:
1641 case triton::extlibs::capstone::ARM64_INS_STURH:
1645 case triton::extlibs::capstone::ARM64_INS_STXP:
1649 case triton::extlibs::capstone::ARM64_INS_STXRB:
1653 case triton::extlibs::capstone::ARM64_INS_STXRH:
1657 case triton::extlibs::capstone::ARM64_INS_STXR:
1661 case triton::extlibs::capstone::ARM64_INS_SUBHN:
1665 case triton::extlibs::capstone::ARM64_INS_SUBHN2:
1669 #if CS_API_MAJOR >= 5
1670 case triton::extlibs::capstone::ARM64_INS_SUBS:
1675 case triton::extlibs::capstone::ARM64_INS_SUB:
1679 case triton::extlibs::capstone::ARM64_INS_SUQADD:
1683 case triton::extlibs::capstone::ARM64_INS_SVC:
1687 case triton::extlibs::capstone::ARM64_INS_SYSL:
1691 case triton::extlibs::capstone::ARM64_INS_SYS:
1695 case triton::extlibs::capstone::ARM64_INS_TBL:
1699 case triton::extlibs::capstone::ARM64_INS_TBNZ:
1703 case triton::extlibs::capstone::ARM64_INS_TBX:
1707 case triton::extlibs::capstone::ARM64_INS_TBZ:
1711 case triton::extlibs::capstone::ARM64_INS_TRN1:
1715 case triton::extlibs::capstone::ARM64_INS_TRN2:
1719 case triton::extlibs::capstone::ARM64_INS_UABAL2:
1723 case triton::extlibs::capstone::ARM64_INS_UABAL:
1727 case triton::extlibs::capstone::ARM64_INS_UABA:
1731 case triton::extlibs::capstone::ARM64_INS_UABDL2:
1735 case triton::extlibs::capstone::ARM64_INS_UABDL:
1739 case triton::extlibs::capstone::ARM64_INS_UABD:
1743 case triton::extlibs::capstone::ARM64_INS_UADALP:
1747 case triton::extlibs::capstone::ARM64_INS_UADDLP:
1751 case triton::extlibs::capstone::ARM64_INS_UADDLV:
1755 case triton::extlibs::capstone::ARM64_INS_UADDL2:
1759 case triton::extlibs::capstone::ARM64_INS_UADDL:
1763 case triton::extlibs::capstone::ARM64_INS_UADDW2:
1767 case triton::extlibs::capstone::ARM64_INS_UADDW:
1771 case triton::extlibs::capstone::ARM64_INS_UBFM:
1775 case triton::extlibs::capstone::ARM64_INS_UCVTF:
1779 case triton::extlibs::capstone::ARM64_INS_UDIV:
1783 case triton::extlibs::capstone::ARM64_INS_UHADD:
1787 case triton::extlibs::capstone::ARM64_INS_UHSUB:
1791 case triton::extlibs::capstone::ARM64_INS_UMADDL:
1795 case triton::extlibs::capstone::ARM64_INS_UMAXP:
1799 case triton::extlibs::capstone::ARM64_INS_UMAXV:
1803 case triton::extlibs::capstone::ARM64_INS_UMAX:
1807 case triton::extlibs::capstone::ARM64_INS_UMINP:
1811 case triton::extlibs::capstone::ARM64_INS_UMINV:
1815 case triton::extlibs::capstone::ARM64_INS_UMIN:
1819 case triton::extlibs::capstone::ARM64_INS_UMLAL2:
1823 case triton::extlibs::capstone::ARM64_INS_UMLAL:
1827 case triton::extlibs::capstone::ARM64_INS_UMLSL2:
1831 case triton::extlibs::capstone::ARM64_INS_UMLSL:
1835 case triton::extlibs::capstone::ARM64_INS_UMOV:
1839 case triton::extlibs::capstone::ARM64_INS_UMSUBL:
1843 case triton::extlibs::capstone::ARM64_INS_UMULH:
1847 case triton::extlibs::capstone::ARM64_INS_UMULL2:
1851 case triton::extlibs::capstone::ARM64_INS_UMULL:
1855 case triton::extlibs::capstone::ARM64_INS_UQADD:
1859 case triton::extlibs::capstone::ARM64_INS_UQRSHL:
1863 case triton::extlibs::capstone::ARM64_INS_UQRSHRN:
1867 case triton::extlibs::capstone::ARM64_INS_UQRSHRN2:
1871 case triton::extlibs::capstone::ARM64_INS_UQSHL:
1875 case triton::extlibs::capstone::ARM64_INS_UQSHRN:
1879 case triton::extlibs::capstone::ARM64_INS_UQSHRN2:
1883 case triton::extlibs::capstone::ARM64_INS_UQSUB:
1887 case triton::extlibs::capstone::ARM64_INS_UQXTN2:
1891 case triton::extlibs::capstone::ARM64_INS_UQXTN:
1895 case triton::extlibs::capstone::ARM64_INS_URECPE:
1899 case triton::extlibs::capstone::ARM64_INS_URHADD:
1903 case triton::extlibs::capstone::ARM64_INS_URSHL:
1907 case triton::extlibs::capstone::ARM64_INS_URSHR:
1911 case triton::extlibs::capstone::ARM64_INS_URSQRTE:
1915 case triton::extlibs::capstone::ARM64_INS_URSRA:
1919 case triton::extlibs::capstone::ARM64_INS_USHLL2:
1923 case triton::extlibs::capstone::ARM64_INS_USHLL:
1927 case triton::extlibs::capstone::ARM64_INS_USHL:
1931 case triton::extlibs::capstone::ARM64_INS_USHR:
1935 case triton::extlibs::capstone::ARM64_INS_USQADD:
1939 case triton::extlibs::capstone::ARM64_INS_USRA:
1943 case triton::extlibs::capstone::ARM64_INS_USUBL2:
1947 case triton::extlibs::capstone::ARM64_INS_USUBL:
1951 case triton::extlibs::capstone::ARM64_INS_USUBW2:
1955 case triton::extlibs::capstone::ARM64_INS_USUBW:
1959 case triton::extlibs::capstone::ARM64_INS_UZP1:
1963 case triton::extlibs::capstone::ARM64_INS_UZP2:
1967 case triton::extlibs::capstone::ARM64_INS_XTN2:
1971 case triton::extlibs::capstone::ARM64_INS_XTN:
1975 case triton::extlibs::capstone::ARM64_INS_ZIP1:
1979 case triton::extlibs::capstone::ARM64_INS_ZIP2:
1985 case triton::extlibs::capstone::ARM64_INS_MNEG:
1989 case triton::extlibs::capstone::ARM64_INS_UMNEGL:
1993 case triton::extlibs::capstone::ARM64_INS_SMNEGL:
1997 case triton::extlibs::capstone::ARM64_INS_NOP:
2001 case triton::extlibs::capstone::ARM64_INS_YIELD:
2005 case triton::extlibs::capstone::ARM64_INS_WFE:
2009 case triton::extlibs::capstone::ARM64_INS_WFI:
2013 case triton::extlibs::capstone::ARM64_INS_SEV:
2017 case triton::extlibs::capstone::ARM64_INS_SEVL:
2021 case triton::extlibs::capstone::ARM64_INS_NGC:
2025 case triton::extlibs::capstone::ARM64_INS_SBFIZ:
2029 case triton::extlibs::capstone::ARM64_INS_UBFIZ:
2033 case triton::extlibs::capstone::ARM64_INS_SBFX:
2037 case triton::extlibs::capstone::ARM64_INS_UBFX:
2041 case triton::extlibs::capstone::ARM64_INS_BFI:
2045 case triton::extlibs::capstone::ARM64_INS_BFXIL:
2049 case triton::extlibs::capstone::ARM64_INS_CMN:
2053 case triton::extlibs::capstone::ARM64_INS_MVN:
2057 case triton::extlibs::capstone::ARM64_INS_TST:
2061 case triton::extlibs::capstone::ARM64_INS_CSET:
2065 case triton::extlibs::capstone::ARM64_INS_CINC:
2069 case triton::extlibs::capstone::ARM64_INS_CSETM:
2073 case triton::extlibs::capstone::ARM64_INS_CINV:
2077 case triton::extlibs::capstone::ARM64_INS_CNEG:
2081 case triton::extlibs::capstone::ARM64_INS_SXTB:
2085 case triton::extlibs::capstone::ARM64_INS_SXTH:
2089 case triton::extlibs::capstone::ARM64_INS_SXTW:
2093 case triton::extlibs::capstone::ARM64_INS_CMP:
2097 case triton::extlibs::capstone::ARM64_INS_UXTB:
2101 case triton::extlibs::capstone::ARM64_INS_UXTH:
2105 case triton::extlibs::capstone::ARM64_INS_UXTW:
2109 case triton::extlibs::capstone::ARM64_INS_IC:
2113 case triton::extlibs::capstone::ARM64_INS_DC:
2117 case triton::extlibs::capstone::ARM64_INS_AT:
2121 case triton::extlibs::capstone::ARM64_INS_TLBI:
TRITON_EXPORT triton::uint32 getMemoryOperandSpecialSize(triton::uint32 id) const
Returns memory access size if it is specified by instruction.
TRITON_EXPORT triton::arch::arm::vas_e capstoneVASToTritonVAS(triton::uint32 id) const
Converts a capstone's vas id to a triton's vas id.
TRITON_EXPORT triton::arch::arm::condition_e capstoneConditionToTritonCondition(triton::uint32 id) const
Converts a capstone's condition id to a triton's condition id.
TRITON_EXPORT triton::arch::arm::shift_e capstoneShiftToTritonShift(triton::uint32 id) const
Converts a capstone's shift id to a triton's shift id.
TRITON_EXPORT AArch64Specifications(triton::arch::architecture_e)
Constructor.
TRITON_EXPORT triton::arch::register_e capstoneRegisterToTritonRegister(triton::uint32 id) const
Converts a capstone's register id to a triton's register id.
TRITON_EXPORT triton::arch::arm::extend_e capstoneExtendToTritonExtend(triton::uint32 id) const
Converts a capstone's extend id to a triton's extend id.
TRITON_EXPORT triton::uint32 capstoneInstructionToTritonInstruction(triton::uint32 id) const
Converts a capstone's instruction id to a triton's instruction id.
The exception class used by architectures.
@ ID_INS_SQRSHRN2
sqrshrn2
@ ID_INS_SHA256H2
sha256h2
@ ID_INS_SQSHRUN2
sqshrun2
@ ID_INS_SQRSHRUN2
sqrshrun2
@ ID_INS_SHA256SU1
sha256su1
@ ID_INS_SHA256SU0
sha256su0
@ ID_INS_SQDMLAL2
sqdmlal2
@ ID_INS_SQRDMULH
sqrdmulh
@ ID_INS_SQDMLSL2
sqdmlsl2
@ ID_INS_SQDMULL2
sqdmull2
@ ID_INS_SQRSHRUN
sqrshrun
@ ID_INS_UQRSHRN2
uqrshrn2
register_e
Types of register.
@ ID_REG_INVALID
invalid = 0
vas_e
Vector arrangement specifier.
condition_e
Types of condition.
@ ID_SHIFT_LSR
Logical Shift Right (immediate)
@ ID_SHIFT_ASR
Arithmetic Shift Right (immediate)
@ ID_SHIFT_ROR
Rotate Right (immediate)
@ ID_SHIFT_INVALID
invalid
@ ID_SHIFT_LSL
Logical Shift Left (immediate)
@ ID_VAS_4S
4 lanes, each containing a 32-bit element.
@ ID_VAS_2D
2 lanes, each containing a 64-bit element.
@ ID_VAS_1D
1 lane containing a 64-bit element.
@ ID_VAS_16B
16 lanes, each containing an 8-bit element.
@ ID_VAS_8B
8 lanes, each containing an 8-bit element.
@ ID_VAS_8H
8 lanes, each containing a 16-bit element.
@ ID_VAS_4H
4 lanes, each containing a 16-bit element.
@ ID_VAS_2S
2 lanes, each containing a 32-bit element.
@ ID_EXTEND_SXTW
Extracts a word (32-bit) value from a register and zero extends it to the size of the register.
@ ID_EXTEND_UXTX
Use the whole 64-bit register.
@ ID_EXTEND_SXTX
Use the whole 64-bit register.
@ ID_EXTEND_SXTH
Extracts a halfword (16-bit) value from a register and zero extends it to the size of the register.
@ ID_EXTEND_UXTB
Extracts a byte (8-bit) value from a register and zero extends it to the size of the register.
@ ID_EXTEND_INVALID
invalid
@ ID_EXTEND_UXTW
Extracts a word (32-bit) value from a register and zero extends it to the size of the register.
@ ID_EXTEND_SXTB
Extracts a byte (8-bit) value from a register and zero extends it to the size of the register.
@ ID_EXTEND_UXTH
Extracts a halfword (16-bit) value from a register and zero extends it to the size of the register.
@ ID_CONDITION_HS
Higher or same (unsigned >=). C set.
@ ID_CONDITION_PL
Positive or zero. N clear.
@ ID_CONDITION_VC
No overflow. V clear.
@ ID_CONDITION_LE
Signed <=. Z set, N and V differ.
@ ID_CONDITION_VS
Overflow. V set.
@ ID_CONDITION_MI
Negative. N set.
@ ID_CONDITION_GE
Signed >=. N and V the same.
@ ID_CONDITION_GT
Signed >. Z clear, N and V the same.
@ ID_CONDITION_HI
Higher (unsigned >). C set and Z clear.
@ ID_CONDITION_NE
Not equal. Z clear.
@ ID_CONDITION_AL
Always. Any flags. This suffix is normally omitted.
@ ID_CONDITION_LO
Lower (unsigned <). C clear.
@ ID_CONDITION_LT
Signed <. N and V differ.
@ ID_CONDITION_LS
Lower or same (unsigned <=). C clear or Z set.
@ ID_CONDITION_INVALID
invalid
@ ID_CONDITION_EQ
Equal. Z set.
std::uint32_t uint32
unisgned 32-bits