Loading [MathJax]/extensions/tex2jax.js
libTriton version 1.0 build 1599
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
aarch64Specifications.cpp
Go to the documentation of this file.
1
2/*
3** Copyright (C) - Triton
4**
5** This program is under the terms of the Apache License 2.0.
6*/
7
10#include <triton/cpuSize.hpp>
11#include <triton/exceptions.hpp>
13
14
15
16namespace triton {
17 namespace arch {
18 namespace arm {
19 namespace aarch64 {
20
23 throw triton::exceptions::Architecture("AArch64Specifications::AArch64Specifications(): Invalid architecture.");
24
25 // Fill id2reg and name2id with those available in AArch64 from spec
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, \
29 #LOWER_NAME, \
30 triton::arch::ID_REG_AARCH64_##AARCH64_PARENT, \
31 AARCH64_UPPER, \
32 AARCH64_LOWER, \
33 MUTABLE) \
34 ); \
35 name2id.emplace(#LOWER_NAME, ID_REG_AARCH64_##UPPER_NAME);
36 // Handle register not available in capstone as normal registers
37 #define REG_SPEC_NO_CAPSTONE REG_SPEC
38 #define SYS_REG_SPEC REG_SPEC
39 #include "triton/aarch64.spec"
40 }
41
42
45
46 switch (id) {
47 // Convert registers from capstone value to triton value
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; \
51 break;
52 #if CS_API_MAJOR >= 5
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; \
56 break;
57 #else
58 #define SYS_REG_SPEC(_1, _2, _3, _4, _5, _6)
59 #endif
60 // Ignore registers not available in capstone
61 #define REG_SPEC_NO_CAPSTONE(_1, _2, _3, _4, _5, _6)
62 #include "triton/aarch64.spec"
63
64 default:
66 break;
67 }
68
69 return tritonId;
70 }
71
72
75
76 switch (id) {
77 case triton::extlibs::capstone::ARM64_SFT_INVALID:
79 break;
80
81 case triton::extlibs::capstone::ARM64_SFT_ASR:
83 break;
84
85 case triton::extlibs::capstone::ARM64_SFT_LSL:
87 break;
88
89 case triton::extlibs::capstone::ARM64_SFT_LSR:
91 break;
92
93 case triton::extlibs::capstone::ARM64_SFT_ROR:
95 break;
96
97 default:
99 break;
100 }
101
102 return tritonId;
103 }
104
105
108
109 switch (id) {
110 case triton::extlibs::capstone::ARM64_EXT_INVALID:
112 break;
113
114 case triton::extlibs::capstone::ARM64_EXT_UXTB:
116 break;
117
118 case triton::extlibs::capstone::ARM64_EXT_UXTH:
120 break;
121
122 case triton::extlibs::capstone::ARM64_EXT_UXTW:
124 break;
125
126 case triton::extlibs::capstone::ARM64_EXT_UXTX:
128 break;
129
130 case triton::extlibs::capstone::ARM64_EXT_SXTB:
132 break;
133
134 case triton::extlibs::capstone::ARM64_EXT_SXTH:
136 break;
137
138 case triton::extlibs::capstone::ARM64_EXT_SXTW:
140 break;
141
142 case triton::extlibs::capstone::ARM64_EXT_SXTX:
144 break;
145
146 default:
148 break;
149 }
150
151 return tritonId;
152 }
153
154
157
158 switch (id) {
159 case triton::extlibs::capstone::ARM64_VAS_INVALID:
161 break;
162
163 case triton::extlibs::capstone::ARM64_VAS_16B:
165 break;
166
167 case triton::extlibs::capstone::ARM64_VAS_8B:
169 break;
170
171 #if CS_API_MAJOR >= 5
172 case triton::extlibs::capstone::ARM64_VAS_4B:
174 break;
175
176 case triton::extlibs::capstone::ARM64_VAS_1B:
178 break;
179 #endif
180
181 case triton::extlibs::capstone::ARM64_VAS_8H:
183 break;
184
185 case triton::extlibs::capstone::ARM64_VAS_4H:
187 break;
188
189 #if CS_API_MAJOR >= 5
190 case triton::extlibs::capstone::ARM64_VAS_2H:
192 break;
193
194 case triton::extlibs::capstone::ARM64_VAS_1H:
196 break;
197 #endif
198
199 case triton::extlibs::capstone::ARM64_VAS_4S:
201 break;
202
203 case triton::extlibs::capstone::ARM64_VAS_2S:
205 break;
206
207 #if CS_API_MAJOR >= 5
208 case triton::extlibs::capstone::ARM64_VAS_1S:
210 break;
211 #endif
212
213 case triton::extlibs::capstone::ARM64_VAS_2D:
215 break;
216
217 case triton::extlibs::capstone::ARM64_VAS_1D:
219 break;
220
221 #if CS_API_MAJOR >= 5
222 case triton::extlibs::capstone::ARM64_VAS_1Q:
224 break;
225 #endif
226
227 default:
229 break;
230 }
231
232 return tritonId;
233 }
234
235
238
239 switch (id) {
240 case triton::extlibs::capstone::ARM64_CC_INVALID:
242 break;
243
244 case triton::extlibs::capstone::ARM64_CC_AL:
246 break;
247
248 case triton::extlibs::capstone::ARM64_CC_EQ:
250 break;
251
252 case triton::extlibs::capstone::ARM64_CC_GE:
254 break;
255
256 case triton::extlibs::capstone::ARM64_CC_GT:
258 break;
259
260 case triton::extlibs::capstone::ARM64_CC_HI:
262 break;
263
264 case triton::extlibs::capstone::ARM64_CC_HS:
266 break;
267
268 case triton::extlibs::capstone::ARM64_CC_LE:
270 break;
271
272 case triton::extlibs::capstone::ARM64_CC_LO:
274 break;
275
276 case triton::extlibs::capstone::ARM64_CC_LS:
278 break;
279
280 case triton::extlibs::capstone::ARM64_CC_LT:
282 break;
283
284 case triton::extlibs::capstone::ARM64_CC_MI:
286 break;
287
288 case triton::extlibs::capstone::ARM64_CC_NE:
290 break;
291
292 case triton::extlibs::capstone::ARM64_CC_PL:
294 break;
295
296 case triton::extlibs::capstone::ARM64_CC_VC:
298 break;
299
300 case triton::extlibs::capstone::ARM64_CC_VS:
302 break;
303
304 default:
306 break;
307 }
308
309 return tritonId;
310 }
311
312
315
316 switch (id) {
317 case triton::extlibs::capstone::ARM64_INS_INVALID:
319 break;
320
321 case triton::extlibs::capstone::ARM64_INS_ABS:
323 break;
324
325 case triton::extlibs::capstone::ARM64_INS_ADC:
327 break;
328
329 #if CS_API_MAJOR >= 5
330 case triton::extlibs::capstone::ARM64_INS_ADCS:
332 break;
333 #endif
334
335 case triton::extlibs::capstone::ARM64_INS_ADDHN:
337 break;
338
339 case triton::extlibs::capstone::ARM64_INS_ADDHN2:
341 break;
342
343 case triton::extlibs::capstone::ARM64_INS_ADDP:
345 break;
346
347 case triton::extlibs::capstone::ARM64_INS_ADD:
349 break;
350
351 #if CS_API_MAJOR >= 5
352 case triton::extlibs::capstone::ARM64_INS_ADDS:
354 break;
355 #endif
356
357 case triton::extlibs::capstone::ARM64_INS_ADDV:
359 break;
360
361 case triton::extlibs::capstone::ARM64_INS_ADR:
363 break;
364
365 case triton::extlibs::capstone::ARM64_INS_ADRP:
367 break;
368
369 case triton::extlibs::capstone::ARM64_INS_AESD:
371 break;
372
373 case triton::extlibs::capstone::ARM64_INS_AESE:
375 break;
376
377 case triton::extlibs::capstone::ARM64_INS_AESIMC:
379 break;
380
381 case triton::extlibs::capstone::ARM64_INS_AESMC:
383 break;
384
385 case triton::extlibs::capstone::ARM64_INS_AND:
387 break;
388
389 #if CS_API_MAJOR >= 5
390 case triton::extlibs::capstone::ARM64_INS_ANDS:
392 break;
393 #endif
394
395 case triton::extlibs::capstone::ARM64_INS_ASR:
397 break;
398
399 case triton::extlibs::capstone::ARM64_INS_B:
401 break;
402
403 case triton::extlibs::capstone::ARM64_INS_BFM:
405 break;
406
407 case triton::extlibs::capstone::ARM64_INS_BIC:
408 case triton::extlibs::capstone::ARM64_INS_BICS:
410 break;
411
412 case triton::extlibs::capstone::ARM64_INS_BIF:
414 break;
415
416 case triton::extlibs::capstone::ARM64_INS_BIT:
418 break;
419
420 case triton::extlibs::capstone::ARM64_INS_BL:
422 break;
423
424 case triton::extlibs::capstone::ARM64_INS_BLR:
426 break;
427
428 case triton::extlibs::capstone::ARM64_INS_BR:
430 break;
431
432 case triton::extlibs::capstone::ARM64_INS_BRK:
434 break;
435
436 case triton::extlibs::capstone::ARM64_INS_BSL:
438 break;
439
440 case triton::extlibs::capstone::ARM64_INS_CBNZ:
442 break;
443
444 case triton::extlibs::capstone::ARM64_INS_CBZ:
446 break;
447
448 case triton::extlibs::capstone::ARM64_INS_CCMN:
450 break;
451
452 case triton::extlibs::capstone::ARM64_INS_CCMP:
454 break;
455
456 case triton::extlibs::capstone::ARM64_INS_CLREX:
458 break;
459
460 case triton::extlibs::capstone::ARM64_INS_CLS:
462 break;
463
464 case triton::extlibs::capstone::ARM64_INS_CLZ:
466 break;
467
468 case triton::extlibs::capstone::ARM64_INS_CMEQ:
470 break;
471
472 case triton::extlibs::capstone::ARM64_INS_CMGE:
474 break;
475
476 case triton::extlibs::capstone::ARM64_INS_CMGT:
478 break;
479
480 case triton::extlibs::capstone::ARM64_INS_CMHI:
482 break;
483
484 case triton::extlibs::capstone::ARM64_INS_CMHS:
486 break;
487
488 case triton::extlibs::capstone::ARM64_INS_CMLE:
490 break;
491
492 case triton::extlibs::capstone::ARM64_INS_CMLT:
494 break;
495
496 case triton::extlibs::capstone::ARM64_INS_CMTST:
498 break;
499
500 case triton::extlibs::capstone::ARM64_INS_CNT:
502 break;
503
504 case triton::extlibs::capstone::ARM64_INS_MOV:
506 break;
507
508 case triton::extlibs::capstone::ARM64_INS_CRC32B:
510 break;
511
512 case triton::extlibs::capstone::ARM64_INS_CRC32CB:
514 break;
515
516 case triton::extlibs::capstone::ARM64_INS_CRC32CH:
518 break;
519
520 case triton::extlibs::capstone::ARM64_INS_CRC32CW:
522 break;
523
524 case triton::extlibs::capstone::ARM64_INS_CRC32CX:
526 break;
527
528 case triton::extlibs::capstone::ARM64_INS_CRC32H:
530 break;
531
532 case triton::extlibs::capstone::ARM64_INS_CRC32W:
534 break;
535
536 case triton::extlibs::capstone::ARM64_INS_CRC32X:
538 break;
539
540 case triton::extlibs::capstone::ARM64_INS_CSEL:
542 break;
543
544 case triton::extlibs::capstone::ARM64_INS_CSINC:
546 break;
547
548 case triton::extlibs::capstone::ARM64_INS_CSINV:
550 break;
551
552 case triton::extlibs::capstone::ARM64_INS_CSNEG:
554 break;
555
556 case triton::extlibs::capstone::ARM64_INS_DCPS1:
558 break;
559
560 case triton::extlibs::capstone::ARM64_INS_DCPS2:
562 break;
563
564 case triton::extlibs::capstone::ARM64_INS_DCPS3:
566 break;
567
568 case triton::extlibs::capstone::ARM64_INS_DMB:
570 break;
571
572 case triton::extlibs::capstone::ARM64_INS_DRPS:
574 break;
575
576 case triton::extlibs::capstone::ARM64_INS_DSB:
578 break;
579
580 case triton::extlibs::capstone::ARM64_INS_DUP:
582 break;
583
584 case triton::extlibs::capstone::ARM64_INS_EON:
586 break;
587
588 case triton::extlibs::capstone::ARM64_INS_EOR:
590 break;
591
592 case triton::extlibs::capstone::ARM64_INS_ERET:
594 break;
595
596 case triton::extlibs::capstone::ARM64_INS_EXTR:
598 break;
599
600 case triton::extlibs::capstone::ARM64_INS_EXT:
602 break;
603
604 case triton::extlibs::capstone::ARM64_INS_FABD:
606 break;
607
608 case triton::extlibs::capstone::ARM64_INS_FABS:
610 break;
611
612 case triton::extlibs::capstone::ARM64_INS_FACGE:
614 break;
615
616 case triton::extlibs::capstone::ARM64_INS_FACGT:
618 break;
619
620 case triton::extlibs::capstone::ARM64_INS_FADD:
622 break;
623
624 case triton::extlibs::capstone::ARM64_INS_FADDP:
626 break;
627
628 case triton::extlibs::capstone::ARM64_INS_FCCMP:
630 break;
631
632 case triton::extlibs::capstone::ARM64_INS_FCCMPE:
634 break;
635
636 case triton::extlibs::capstone::ARM64_INS_FCMEQ:
638 break;
639
640 case triton::extlibs::capstone::ARM64_INS_FCMGE:
642 break;
643
644 case triton::extlibs::capstone::ARM64_INS_FCMGT:
646 break;
647
648 case triton::extlibs::capstone::ARM64_INS_FCMLE:
650 break;
651
652 case triton::extlibs::capstone::ARM64_INS_FCMLT:
654 break;
655
656 case triton::extlibs::capstone::ARM64_INS_FCMP:
658 break;
659
660 case triton::extlibs::capstone::ARM64_INS_FCMPE:
662 break;
663
664 case triton::extlibs::capstone::ARM64_INS_FCSEL:
666 break;
667
668 case triton::extlibs::capstone::ARM64_INS_FCVTAS:
670 break;
671
672 case triton::extlibs::capstone::ARM64_INS_FCVTAU:
674 break;
675
676 case triton::extlibs::capstone::ARM64_INS_FCVT:
678 break;
679
680 case triton::extlibs::capstone::ARM64_INS_FCVTL:
682 break;
683
684 case triton::extlibs::capstone::ARM64_INS_FCVTL2:
686 break;
687
688 case triton::extlibs::capstone::ARM64_INS_FCVTMS:
690 break;
691
692 case triton::extlibs::capstone::ARM64_INS_FCVTMU:
694 break;
695
696 case triton::extlibs::capstone::ARM64_INS_FCVTNS:
698 break;
699
700 case triton::extlibs::capstone::ARM64_INS_FCVTNU:
702 break;
703
704 case triton::extlibs::capstone::ARM64_INS_FCVTN:
706 break;
707
708 case triton::extlibs::capstone::ARM64_INS_FCVTN2:
710 break;
711
712 case triton::extlibs::capstone::ARM64_INS_FCVTPS:
714 break;
715
716 case triton::extlibs::capstone::ARM64_INS_FCVTPU:
718 break;
719
720 case triton::extlibs::capstone::ARM64_INS_FCVTXN:
722 break;
723
724 case triton::extlibs::capstone::ARM64_INS_FCVTXN2:
726 break;
727
728 case triton::extlibs::capstone::ARM64_INS_FCVTZS:
730 break;
731
732 case triton::extlibs::capstone::ARM64_INS_FCVTZU:
734 break;
735
736 case triton::extlibs::capstone::ARM64_INS_FDIV:
738 break;
739
740 case triton::extlibs::capstone::ARM64_INS_FMADD:
742 break;
743
744 case triton::extlibs::capstone::ARM64_INS_FMAX:
746 break;
747
748 case triton::extlibs::capstone::ARM64_INS_FMAXNM:
750 break;
751
752 case triton::extlibs::capstone::ARM64_INS_FMAXNMP:
754 break;
755
756 case triton::extlibs::capstone::ARM64_INS_FMAXNMV:
758 break;
759
760 case triton::extlibs::capstone::ARM64_INS_FMAXP:
762 break;
763
764 case triton::extlibs::capstone::ARM64_INS_FMAXV:
766 break;
767
768 case triton::extlibs::capstone::ARM64_INS_FMIN:
770 break;
771
772 case triton::extlibs::capstone::ARM64_INS_FMINNM:
774 break;
775
776 case triton::extlibs::capstone::ARM64_INS_FMINNMP:
778 break;
779
780 case triton::extlibs::capstone::ARM64_INS_FMINNMV:
782 break;
783
784 case triton::extlibs::capstone::ARM64_INS_FMINP:
786 break;
787
788 case triton::extlibs::capstone::ARM64_INS_FMINV:
790 break;
791
792 case triton::extlibs::capstone::ARM64_INS_FMLA:
794 break;
795
796 case triton::extlibs::capstone::ARM64_INS_FMLS:
798 break;
799
800 case triton::extlibs::capstone::ARM64_INS_FMOV:
802 break;
803
804 case triton::extlibs::capstone::ARM64_INS_FMSUB:
806 break;
807
808 case triton::extlibs::capstone::ARM64_INS_FMUL:
810 break;
811
812 case triton::extlibs::capstone::ARM64_INS_FMULX:
814 break;
815
816 case triton::extlibs::capstone::ARM64_INS_FNEG:
818 break;
819
820 case triton::extlibs::capstone::ARM64_INS_FNMADD:
822 break;
823
824 case triton::extlibs::capstone::ARM64_INS_FNMSUB:
826 break;
827
828 case triton::extlibs::capstone::ARM64_INS_FNMUL:
830 break;
831
832 case triton::extlibs::capstone::ARM64_INS_FRECPE:
834 break;
835
836 case triton::extlibs::capstone::ARM64_INS_FRECPS:
838 break;
839
840 case triton::extlibs::capstone::ARM64_INS_FRECPX:
842 break;
843
844 case triton::extlibs::capstone::ARM64_INS_FRINTA:
846 break;
847
848 case triton::extlibs::capstone::ARM64_INS_FRINTI:
850 break;
851
852 case triton::extlibs::capstone::ARM64_INS_FRINTM:
854 break;
855
856 case triton::extlibs::capstone::ARM64_INS_FRINTN:
858 break;
859
860 case triton::extlibs::capstone::ARM64_INS_FRINTP:
862 break;
863
864 case triton::extlibs::capstone::ARM64_INS_FRINTX:
866 break;
867
868 case triton::extlibs::capstone::ARM64_INS_FRINTZ:
870 break;
871
872 case triton::extlibs::capstone::ARM64_INS_FRSQRTE:
874 break;
875
876 case triton::extlibs::capstone::ARM64_INS_FRSQRTS:
878 break;
879
880 case triton::extlibs::capstone::ARM64_INS_FSQRT:
882 break;
883
884 case triton::extlibs::capstone::ARM64_INS_FSUB:
886 break;
887
888 case triton::extlibs::capstone::ARM64_INS_HINT:
890 break;
891
892 case triton::extlibs::capstone::ARM64_INS_HLT:
894 break;
895
896 case triton::extlibs::capstone::ARM64_INS_HVC:
898 break;
899
900 case triton::extlibs::capstone::ARM64_INS_INS:
902 break;
903
904 case triton::extlibs::capstone::ARM64_INS_ISB:
906 break;
907
908 case triton::extlibs::capstone::ARM64_INS_LD1:
910 break;
911
912 case triton::extlibs::capstone::ARM64_INS_LD1R:
914 break;
915
916 case triton::extlibs::capstone::ARM64_INS_LD2R:
918 break;
919
920 case triton::extlibs::capstone::ARM64_INS_LD2:
922 break;
923
924 case triton::extlibs::capstone::ARM64_INS_LD3R:
926 break;
927
928 case triton::extlibs::capstone::ARM64_INS_LD3:
930 break;
931
932 case triton::extlibs::capstone::ARM64_INS_LD4:
934 break;
935
936 case triton::extlibs::capstone::ARM64_INS_LD4R:
938 break;
939
940 case triton::extlibs::capstone::ARM64_INS_LDARB:
942 break;
943
944 case triton::extlibs::capstone::ARM64_INS_LDARH:
946 break;
947
948 case triton::extlibs::capstone::ARM64_INS_LDAR:
950 break;
951
952 case triton::extlibs::capstone::ARM64_INS_LDAXP:
954 break;
955
956 case triton::extlibs::capstone::ARM64_INS_LDAXRB:
958 break;
959
960 case triton::extlibs::capstone::ARM64_INS_LDAXRH:
962 break;
963
964 case triton::extlibs::capstone::ARM64_INS_LDAXR:
966 break;
967
968 case triton::extlibs::capstone::ARM64_INS_LDNP:
970 break;
971
972 case triton::extlibs::capstone::ARM64_INS_LDP:
974 break;
975
976 case triton::extlibs::capstone::ARM64_INS_LDPSW:
978 break;
979
980 case triton::extlibs::capstone::ARM64_INS_LDRB:
982 break;
983
984 case triton::extlibs::capstone::ARM64_INS_LDR:
986 break;
987
988 case triton::extlibs::capstone::ARM64_INS_LDRH:
990 break;
991
992 case triton::extlibs::capstone::ARM64_INS_LDRSB:
994 break;
995
996 case triton::extlibs::capstone::ARM64_INS_LDRSH:
998 break;
999
1000 case triton::extlibs::capstone::ARM64_INS_LDRSW:
1002 break;
1003
1004 case triton::extlibs::capstone::ARM64_INS_LDTRB:
1006 break;
1007
1008 case triton::extlibs::capstone::ARM64_INS_LDTRH:
1010 break;
1011
1012 case triton::extlibs::capstone::ARM64_INS_LDTRSB:
1014 break;
1015
1016 case triton::extlibs::capstone::ARM64_INS_LDTRSH:
1018 break;
1019
1020 case triton::extlibs::capstone::ARM64_INS_LDTRSW:
1022 break;
1023
1024 case triton::extlibs::capstone::ARM64_INS_LDTR:
1026 break;
1027
1028 case triton::extlibs::capstone::ARM64_INS_LDURB:
1030 break;
1031
1032 case triton::extlibs::capstone::ARM64_INS_LDUR:
1034 break;
1035
1036 case triton::extlibs::capstone::ARM64_INS_LDURH:
1038 break;
1039
1040 case triton::extlibs::capstone::ARM64_INS_LDURSB:
1042 break;
1043
1044 case triton::extlibs::capstone::ARM64_INS_LDURSH:
1046 break;
1047
1048 case triton::extlibs::capstone::ARM64_INS_LDURSW:
1050 break;
1051
1052 case triton::extlibs::capstone::ARM64_INS_LDXP:
1054 break;
1055
1056 case triton::extlibs::capstone::ARM64_INS_LDXRB:
1058 break;
1059
1060 case triton::extlibs::capstone::ARM64_INS_LDXRH:
1062 break;
1063
1064 case triton::extlibs::capstone::ARM64_INS_LDXR:
1066 break;
1067
1068 case triton::extlibs::capstone::ARM64_INS_LSL:
1070 break;
1071
1072 case triton::extlibs::capstone::ARM64_INS_LSR:
1074 break;
1075
1076 case triton::extlibs::capstone::ARM64_INS_MADD:
1078 break;
1079
1080 case triton::extlibs::capstone::ARM64_INS_MLA:
1082 break;
1083
1084 case triton::extlibs::capstone::ARM64_INS_MLS:
1086 break;
1087
1088 case triton::extlibs::capstone::ARM64_INS_MOVI:
1090 break;
1091
1092 case triton::extlibs::capstone::ARM64_INS_MOVK:
1094 break;
1095
1096 case triton::extlibs::capstone::ARM64_INS_MOVN:
1098 break;
1099
1100 case triton::extlibs::capstone::ARM64_INS_MOVZ:
1102 break;
1103
1104 case triton::extlibs::capstone::ARM64_INS_MRS:
1106 break;
1107
1108 case triton::extlibs::capstone::ARM64_INS_MSR:
1110 break;
1111
1112 case triton::extlibs::capstone::ARM64_INS_MSUB:
1114 break;
1115
1116 case triton::extlibs::capstone::ARM64_INS_MUL:
1118 break;
1119
1120 case triton::extlibs::capstone::ARM64_INS_MVNI:
1122 break;
1123
1124 case triton::extlibs::capstone::ARM64_INS_NEG:
1126 break;
1127
1128 case triton::extlibs::capstone::ARM64_INS_NOT:
1130 break;
1131
1132 case triton::extlibs::capstone::ARM64_INS_ORN:
1134 break;
1135
1136 case triton::extlibs::capstone::ARM64_INS_ORR:
1138 break;
1139
1140 case triton::extlibs::capstone::ARM64_INS_PMULL2:
1142 break;
1143
1144 case triton::extlibs::capstone::ARM64_INS_PMULL:
1146 break;
1147
1148 case triton::extlibs::capstone::ARM64_INS_PMUL:
1150 break;
1151
1152 case triton::extlibs::capstone::ARM64_INS_PRFM:
1154 break;
1155
1156 case triton::extlibs::capstone::ARM64_INS_PRFUM:
1158 break;
1159
1160 case triton::extlibs::capstone::ARM64_INS_RADDHN:
1162 break;
1163
1164 case triton::extlibs::capstone::ARM64_INS_RADDHN2:
1166 break;
1167
1168 case triton::extlibs::capstone::ARM64_INS_RBIT:
1170 break;
1171
1172 case triton::extlibs::capstone::ARM64_INS_RET:
1174 break;
1175
1176 case triton::extlibs::capstone::ARM64_INS_REV16:
1178 break;
1179
1180 case triton::extlibs::capstone::ARM64_INS_REV32:
1182 break;
1183
1184 case triton::extlibs::capstone::ARM64_INS_REV64:
1186 break;
1187
1188 case triton::extlibs::capstone::ARM64_INS_REV:
1190 break;
1191
1192 case triton::extlibs::capstone::ARM64_INS_ROR:
1194 break;
1195
1196 case triton::extlibs::capstone::ARM64_INS_RSHRN2:
1198 break;
1199
1200 case triton::extlibs::capstone::ARM64_INS_RSHRN:
1202 break;
1203
1204 case triton::extlibs::capstone::ARM64_INS_RSUBHN:
1206 break;
1207
1208 case triton::extlibs::capstone::ARM64_INS_RSUBHN2:
1210 break;
1211
1212 case triton::extlibs::capstone::ARM64_INS_SABAL2:
1214 break;
1215
1216 case triton::extlibs::capstone::ARM64_INS_SABAL:
1218 break;
1219
1220 case triton::extlibs::capstone::ARM64_INS_SABA:
1222 break;
1223
1224 case triton::extlibs::capstone::ARM64_INS_SABDL2:
1226 break;
1227
1228 case triton::extlibs::capstone::ARM64_INS_SABDL:
1230 break;
1231
1232 case triton::extlibs::capstone::ARM64_INS_SABD:
1234 break;
1235
1236 case triton::extlibs::capstone::ARM64_INS_SADALP:
1238 break;
1239
1240 case triton::extlibs::capstone::ARM64_INS_SADDLP:
1242 break;
1243
1244 case triton::extlibs::capstone::ARM64_INS_SADDLV:
1246 break;
1247
1248 case triton::extlibs::capstone::ARM64_INS_SADDL2:
1250 break;
1251
1252 case triton::extlibs::capstone::ARM64_INS_SADDL:
1254 break;
1255
1256 case triton::extlibs::capstone::ARM64_INS_SADDW2:
1258 break;
1259
1260 case triton::extlibs::capstone::ARM64_INS_SADDW:
1262 break;
1263
1264 case triton::extlibs::capstone::ARM64_INS_SBC:
1266 break;
1267
1268 #if CS_API_MAJOR >= 5
1269 case triton::extlibs::capstone::ARM64_INS_SBCS:
1271 break;
1272 #endif
1273
1274 case triton::extlibs::capstone::ARM64_INS_SBFM:
1276 break;
1277
1278 case triton::extlibs::capstone::ARM64_INS_SCVTF:
1280 break;
1281
1282 case triton::extlibs::capstone::ARM64_INS_SDIV:
1284 break;
1285
1286 case triton::extlibs::capstone::ARM64_INS_SHA1C:
1288 break;
1289
1290 case triton::extlibs::capstone::ARM64_INS_SHA1H:
1292 break;
1293
1294 case triton::extlibs::capstone::ARM64_INS_SHA1M:
1296 break;
1297
1298 case triton::extlibs::capstone::ARM64_INS_SHA1P:
1300 break;
1301
1302 case triton::extlibs::capstone::ARM64_INS_SHA1SU0:
1304 break;
1305
1306 case triton::extlibs::capstone::ARM64_INS_SHA1SU1:
1308 break;
1309
1310 case triton::extlibs::capstone::ARM64_INS_SHA256H2:
1312 break;
1313
1314 case triton::extlibs::capstone::ARM64_INS_SHA256H:
1316 break;
1317
1318 case triton::extlibs::capstone::ARM64_INS_SHA256SU0:
1320 break;
1321
1322 case triton::extlibs::capstone::ARM64_INS_SHA256SU1:
1324 break;
1325
1326 case triton::extlibs::capstone::ARM64_INS_SHADD:
1328 break;
1329
1330 case triton::extlibs::capstone::ARM64_INS_SHLL2:
1332 break;
1333
1334 case triton::extlibs::capstone::ARM64_INS_SHLL:
1336 break;
1337
1338 case triton::extlibs::capstone::ARM64_INS_SHL:
1340 break;
1341
1342 case triton::extlibs::capstone::ARM64_INS_SHRN2:
1344 break;
1345
1346 case triton::extlibs::capstone::ARM64_INS_SHRN:
1348 break;
1349
1350 case triton::extlibs::capstone::ARM64_INS_SHSUB:
1352 break;
1353
1354 case triton::extlibs::capstone::ARM64_INS_SLI:
1356 break;
1357
1358 case triton::extlibs::capstone::ARM64_INS_SMADDL:
1360 break;
1361
1362 case triton::extlibs::capstone::ARM64_INS_SMAXP:
1364 break;
1365
1366 case triton::extlibs::capstone::ARM64_INS_SMAXV:
1368 break;
1369
1370 case triton::extlibs::capstone::ARM64_INS_SMAX:
1372 break;
1373
1374 case triton::extlibs::capstone::ARM64_INS_SMC:
1376 break;
1377
1378 case triton::extlibs::capstone::ARM64_INS_SMINP:
1380 break;
1381
1382 case triton::extlibs::capstone::ARM64_INS_SMINV:
1384 break;
1385
1386 case triton::extlibs::capstone::ARM64_INS_SMIN:
1388 break;
1389
1390 case triton::extlibs::capstone::ARM64_INS_SMLAL2:
1392 break;
1393
1394 case triton::extlibs::capstone::ARM64_INS_SMLAL:
1396 break;
1397
1398 case triton::extlibs::capstone::ARM64_INS_SMLSL2:
1400 break;
1401
1402 case triton::extlibs::capstone::ARM64_INS_SMLSL:
1404 break;
1405
1406 case triton::extlibs::capstone::ARM64_INS_SMOV:
1408 break;
1409
1410 case triton::extlibs::capstone::ARM64_INS_SMSUBL:
1412 break;
1413
1414 case triton::extlibs::capstone::ARM64_INS_SMULH:
1416 break;
1417
1418 case triton::extlibs::capstone::ARM64_INS_SMULL2:
1420 break;
1421
1422 case triton::extlibs::capstone::ARM64_INS_SMULL:
1424 break;
1425
1426 case triton::extlibs::capstone::ARM64_INS_SQABS:
1428 break;
1429
1430 case triton::extlibs::capstone::ARM64_INS_SQADD:
1432 break;
1433
1434 case triton::extlibs::capstone::ARM64_INS_SQDMLAL:
1436 break;
1437
1438 case triton::extlibs::capstone::ARM64_INS_SQDMLAL2:
1440 break;
1441
1442 case triton::extlibs::capstone::ARM64_INS_SQDMLSL:
1444 break;
1445
1446 case triton::extlibs::capstone::ARM64_INS_SQDMLSL2:
1448 break;
1449
1450 case triton::extlibs::capstone::ARM64_INS_SQDMULH:
1452 break;
1453
1454 case triton::extlibs::capstone::ARM64_INS_SQDMULL:
1456 break;
1457
1458 case triton::extlibs::capstone::ARM64_INS_SQDMULL2:
1460 break;
1461
1462 case triton::extlibs::capstone::ARM64_INS_SQNEG:
1464 break;
1465
1466 case triton::extlibs::capstone::ARM64_INS_SQRDMULH:
1468 break;
1469
1470 case triton::extlibs::capstone::ARM64_INS_SQRSHL:
1472 break;
1473
1474 case triton::extlibs::capstone::ARM64_INS_SQRSHRN:
1476 break;
1477
1478 case triton::extlibs::capstone::ARM64_INS_SQRSHRN2:
1480 break;
1481
1482 case triton::extlibs::capstone::ARM64_INS_SQRSHRUN:
1484 break;
1485
1486 case triton::extlibs::capstone::ARM64_INS_SQRSHRUN2:
1488 break;
1489
1490 case triton::extlibs::capstone::ARM64_INS_SQSHLU:
1492 break;
1493
1494 case triton::extlibs::capstone::ARM64_INS_SQSHL:
1496 break;
1497
1498 case triton::extlibs::capstone::ARM64_INS_SQSHRN:
1500 break;
1501
1502 case triton::extlibs::capstone::ARM64_INS_SQSHRN2:
1504 break;
1505
1506 case triton::extlibs::capstone::ARM64_INS_SQSHRUN:
1508 break;
1509
1510 case triton::extlibs::capstone::ARM64_INS_SQSHRUN2:
1512 break;
1513
1514 case triton::extlibs::capstone::ARM64_INS_SQSUB:
1516 break;
1517
1518 case triton::extlibs::capstone::ARM64_INS_SQXTN2:
1520 break;
1521
1522 case triton::extlibs::capstone::ARM64_INS_SQXTN:
1524 break;
1525
1526 case triton::extlibs::capstone::ARM64_INS_SQXTUN2:
1528 break;
1529
1530 case triton::extlibs::capstone::ARM64_INS_SQXTUN:
1532 break;
1533
1534 case triton::extlibs::capstone::ARM64_INS_SRHADD:
1536 break;
1537
1538 case triton::extlibs::capstone::ARM64_INS_SRI:
1540 break;
1541
1542 case triton::extlibs::capstone::ARM64_INS_SRSHL:
1544 break;
1545
1546 case triton::extlibs::capstone::ARM64_INS_SRSHR:
1548 break;
1549
1550 case triton::extlibs::capstone::ARM64_INS_SRSRA:
1552 break;
1553
1554 case triton::extlibs::capstone::ARM64_INS_SSHLL2:
1556 break;
1557
1558 case triton::extlibs::capstone::ARM64_INS_SSHLL:
1560 break;
1561
1562 case triton::extlibs::capstone::ARM64_INS_SSHL:
1564 break;
1565
1566 case triton::extlibs::capstone::ARM64_INS_SSHR:
1568 break;
1569
1570 case triton::extlibs::capstone::ARM64_INS_SSRA:
1572 break;
1573
1574 case triton::extlibs::capstone::ARM64_INS_SSUBL2:
1576 break;
1577
1578 case triton::extlibs::capstone::ARM64_INS_SSUBL:
1580 break;
1581
1582 case triton::extlibs::capstone::ARM64_INS_SSUBW2:
1584 break;
1585
1586 case triton::extlibs::capstone::ARM64_INS_SSUBW:
1588 break;
1589
1590 case triton::extlibs::capstone::ARM64_INS_ST1:
1592 break;
1593
1594 case triton::extlibs::capstone::ARM64_INS_ST2:
1596 break;
1597
1598 case triton::extlibs::capstone::ARM64_INS_ST3:
1600 break;
1601
1602 case triton::extlibs::capstone::ARM64_INS_ST4:
1604 break;
1605
1606 case triton::extlibs::capstone::ARM64_INS_STLRB:
1608 break;
1609
1610 case triton::extlibs::capstone::ARM64_INS_STLRH:
1612 break;
1613
1614 case triton::extlibs::capstone::ARM64_INS_STLR:
1616 break;
1617
1618 case triton::extlibs::capstone::ARM64_INS_STLXP:
1620 break;
1621
1622 case triton::extlibs::capstone::ARM64_INS_STLXRB:
1624 break;
1625
1626 case triton::extlibs::capstone::ARM64_INS_STLXRH:
1628 break;
1629
1630 case triton::extlibs::capstone::ARM64_INS_STLXR:
1632 break;
1633
1634 case triton::extlibs::capstone::ARM64_INS_STNP:
1636 break;
1637
1638 case triton::extlibs::capstone::ARM64_INS_STP:
1640 break;
1641
1642 case triton::extlibs::capstone::ARM64_INS_STRB:
1644 break;
1645
1646 case triton::extlibs::capstone::ARM64_INS_STR:
1648 break;
1649
1650 case triton::extlibs::capstone::ARM64_INS_STRH:
1652 break;
1653
1654 case triton::extlibs::capstone::ARM64_INS_STTRB:
1656 break;
1657
1658 case triton::extlibs::capstone::ARM64_INS_STTRH:
1660 break;
1661
1662 case triton::extlibs::capstone::ARM64_INS_STTR:
1664 break;
1665
1666 case triton::extlibs::capstone::ARM64_INS_STURB:
1668 break;
1669
1670 case triton::extlibs::capstone::ARM64_INS_STUR:
1672 break;
1673
1674 case triton::extlibs::capstone::ARM64_INS_STURH:
1676 break;
1677
1678 case triton::extlibs::capstone::ARM64_INS_STXP:
1680 break;
1681
1682 case triton::extlibs::capstone::ARM64_INS_STXRB:
1684 break;
1685
1686 case triton::extlibs::capstone::ARM64_INS_STXRH:
1688 break;
1689
1690 case triton::extlibs::capstone::ARM64_INS_STXR:
1692 break;
1693
1694 case triton::extlibs::capstone::ARM64_INS_SUBHN:
1696 break;
1697
1698 case triton::extlibs::capstone::ARM64_INS_SUBHN2:
1700 break;
1701
1702 #if CS_API_MAJOR >= 5
1703 case triton::extlibs::capstone::ARM64_INS_SUBS:
1705 break;
1706 #endif
1707
1708 case triton::extlibs::capstone::ARM64_INS_SUB:
1710 break;
1711
1712 case triton::extlibs::capstone::ARM64_INS_SUQADD:
1714 break;
1715
1716 case triton::extlibs::capstone::ARM64_INS_SVC:
1718 break;
1719
1720 case triton::extlibs::capstone::ARM64_INS_SYSL:
1722 break;
1723
1724 case triton::extlibs::capstone::ARM64_INS_SYS:
1726 break;
1727
1728 case triton::extlibs::capstone::ARM64_INS_TBL:
1730 break;
1731
1732 case triton::extlibs::capstone::ARM64_INS_TBNZ:
1734 break;
1735
1736 case triton::extlibs::capstone::ARM64_INS_TBX:
1738 break;
1739
1740 case triton::extlibs::capstone::ARM64_INS_TBZ:
1742 break;
1743
1744 case triton::extlibs::capstone::ARM64_INS_TRN1:
1746 break;
1747
1748 case triton::extlibs::capstone::ARM64_INS_TRN2:
1750 break;
1751
1752 case triton::extlibs::capstone::ARM64_INS_UABAL2:
1754 break;
1755
1756 case triton::extlibs::capstone::ARM64_INS_UABAL:
1758 break;
1759
1760 case triton::extlibs::capstone::ARM64_INS_UABA:
1762 break;
1763
1764 case triton::extlibs::capstone::ARM64_INS_UABDL2:
1766 break;
1767
1768 case triton::extlibs::capstone::ARM64_INS_UABDL:
1770 break;
1771
1772 case triton::extlibs::capstone::ARM64_INS_UABD:
1774 break;
1775
1776 case triton::extlibs::capstone::ARM64_INS_UADALP:
1778 break;
1779
1780 case triton::extlibs::capstone::ARM64_INS_UADDLP:
1782 break;
1783
1784 case triton::extlibs::capstone::ARM64_INS_UADDLV:
1786 break;
1787
1788 case triton::extlibs::capstone::ARM64_INS_UADDL2:
1790 break;
1791
1792 case triton::extlibs::capstone::ARM64_INS_UADDL:
1794 break;
1795
1796 case triton::extlibs::capstone::ARM64_INS_UADDW2:
1798 break;
1799
1800 case triton::extlibs::capstone::ARM64_INS_UADDW:
1802 break;
1803
1804 case triton::extlibs::capstone::ARM64_INS_UBFM:
1806 break;
1807
1808 case triton::extlibs::capstone::ARM64_INS_UCVTF:
1810 break;
1811
1812 case triton::extlibs::capstone::ARM64_INS_UDIV:
1814 break;
1815
1816 case triton::extlibs::capstone::ARM64_INS_UHADD:
1818 break;
1819
1820 case triton::extlibs::capstone::ARM64_INS_UHSUB:
1822 break;
1823
1824 case triton::extlibs::capstone::ARM64_INS_UMADDL:
1826 break;
1827
1828 case triton::extlibs::capstone::ARM64_INS_UMAXP:
1830 break;
1831
1832 case triton::extlibs::capstone::ARM64_INS_UMAXV:
1834 break;
1835
1836 case triton::extlibs::capstone::ARM64_INS_UMAX:
1838 break;
1839
1840 case triton::extlibs::capstone::ARM64_INS_UMINP:
1842 break;
1843
1844 case triton::extlibs::capstone::ARM64_INS_UMINV:
1846 break;
1847
1848 case triton::extlibs::capstone::ARM64_INS_UMIN:
1850 break;
1851
1852 case triton::extlibs::capstone::ARM64_INS_UMLAL2:
1854 break;
1855
1856 case triton::extlibs::capstone::ARM64_INS_UMLAL:
1858 break;
1859
1860 case triton::extlibs::capstone::ARM64_INS_UMLSL2:
1862 break;
1863
1864 case triton::extlibs::capstone::ARM64_INS_UMLSL:
1866 break;
1867
1868 case triton::extlibs::capstone::ARM64_INS_UMOV:
1870 break;
1871
1872 case triton::extlibs::capstone::ARM64_INS_UMSUBL:
1874 break;
1875
1876 case triton::extlibs::capstone::ARM64_INS_UMULH:
1878 break;
1879
1880 case triton::extlibs::capstone::ARM64_INS_UMULL2:
1882 break;
1883
1884 case triton::extlibs::capstone::ARM64_INS_UMULL:
1886 break;
1887
1888 case triton::extlibs::capstone::ARM64_INS_UQADD:
1890 break;
1891
1892 case triton::extlibs::capstone::ARM64_INS_UQRSHL:
1894 break;
1895
1896 case triton::extlibs::capstone::ARM64_INS_UQRSHRN:
1898 break;
1899
1900 case triton::extlibs::capstone::ARM64_INS_UQRSHRN2:
1902 break;
1903
1904 case triton::extlibs::capstone::ARM64_INS_UQSHL:
1906 break;
1907
1908 case triton::extlibs::capstone::ARM64_INS_UQSHRN:
1910 break;
1911
1912 case triton::extlibs::capstone::ARM64_INS_UQSHRN2:
1914 break;
1915
1916 case triton::extlibs::capstone::ARM64_INS_UQSUB:
1918 break;
1919
1920 case triton::extlibs::capstone::ARM64_INS_UQXTN2:
1922 break;
1923
1924 case triton::extlibs::capstone::ARM64_INS_UQXTN:
1926 break;
1927
1928 case triton::extlibs::capstone::ARM64_INS_URECPE:
1930 break;
1931
1932 case triton::extlibs::capstone::ARM64_INS_URHADD:
1934 break;
1935
1936 case triton::extlibs::capstone::ARM64_INS_URSHL:
1938 break;
1939
1940 case triton::extlibs::capstone::ARM64_INS_URSHR:
1942 break;
1943
1944 case triton::extlibs::capstone::ARM64_INS_URSQRTE:
1946 break;
1947
1948 case triton::extlibs::capstone::ARM64_INS_URSRA:
1950 break;
1951
1952 case triton::extlibs::capstone::ARM64_INS_USHLL2:
1954 break;
1955
1956 case triton::extlibs::capstone::ARM64_INS_USHLL:
1958 break;
1959
1960 case triton::extlibs::capstone::ARM64_INS_USHL:
1962 break;
1963
1964 case triton::extlibs::capstone::ARM64_INS_USHR:
1966 break;
1967
1968 case triton::extlibs::capstone::ARM64_INS_USQADD:
1970 break;
1971
1972 case triton::extlibs::capstone::ARM64_INS_USRA:
1974 break;
1975
1976 case triton::extlibs::capstone::ARM64_INS_USUBL2:
1978 break;
1979
1980 case triton::extlibs::capstone::ARM64_INS_USUBL:
1982 break;
1983
1984 case triton::extlibs::capstone::ARM64_INS_USUBW2:
1986 break;
1987
1988 case triton::extlibs::capstone::ARM64_INS_USUBW:
1990 break;
1991
1992 case triton::extlibs::capstone::ARM64_INS_UZP1:
1994 break;
1995
1996 case triton::extlibs::capstone::ARM64_INS_UZP2:
1998 break;
1999
2000 case triton::extlibs::capstone::ARM64_INS_XTN2:
2002 break;
2003
2004 case triton::extlibs::capstone::ARM64_INS_XTN:
2006 break;
2007
2008 case triton::extlibs::capstone::ARM64_INS_ZIP1:
2010 break;
2011
2012 case triton::extlibs::capstone::ARM64_INS_ZIP2:
2014 break;
2015
2016 /* From here there are alias but considered as instruction */
2017
2018 case triton::extlibs::capstone::ARM64_INS_MNEG:
2020 break;
2021
2022 case triton::extlibs::capstone::ARM64_INS_UMNEGL:
2024 break;
2025
2026 case triton::extlibs::capstone::ARM64_INS_SMNEGL:
2028 break;
2029
2030 case triton::extlibs::capstone::ARM64_INS_NOP:
2032 break;
2033
2034 case triton::extlibs::capstone::ARM64_INS_YIELD:
2036 break;
2037
2038 case triton::extlibs::capstone::ARM64_INS_WFE:
2040 break;
2041
2042 case triton::extlibs::capstone::ARM64_INS_WFI:
2044 break;
2045
2046 case triton::extlibs::capstone::ARM64_INS_SEV:
2048 break;
2049
2050 case triton::extlibs::capstone::ARM64_INS_SEVL:
2052 break;
2053
2054 case triton::extlibs::capstone::ARM64_INS_NGC:
2056 break;
2057
2058 case triton::extlibs::capstone::ARM64_INS_SBFIZ:
2060 break;
2061
2062 case triton::extlibs::capstone::ARM64_INS_UBFIZ:
2064 break;
2065
2066 case triton::extlibs::capstone::ARM64_INS_SBFX:
2068 break;
2069
2070 case triton::extlibs::capstone::ARM64_INS_UBFX:
2072 break;
2073
2074 case triton::extlibs::capstone::ARM64_INS_BFI:
2076 break;
2077
2078 case triton::extlibs::capstone::ARM64_INS_BFXIL:
2080 break;
2081
2082 case triton::extlibs::capstone::ARM64_INS_CMN:
2084 break;
2085
2086 case triton::extlibs::capstone::ARM64_INS_MVN:
2088 break;
2089
2090 case triton::extlibs::capstone::ARM64_INS_TST:
2092 break;
2093
2094 case triton::extlibs::capstone::ARM64_INS_CSET:
2096 break;
2097
2098 case triton::extlibs::capstone::ARM64_INS_CINC:
2100 break;
2101
2102 case triton::extlibs::capstone::ARM64_INS_CSETM:
2104 break;
2105
2106 case triton::extlibs::capstone::ARM64_INS_CINV:
2108 break;
2109
2110 case triton::extlibs::capstone::ARM64_INS_CNEG:
2112 break;
2113
2114 case triton::extlibs::capstone::ARM64_INS_SXTB:
2116 break;
2117
2118 case triton::extlibs::capstone::ARM64_INS_SXTH:
2120 break;
2121
2122 case triton::extlibs::capstone::ARM64_INS_SXTW:
2124 break;
2125
2126 case triton::extlibs::capstone::ARM64_INS_CMP:
2128 break;
2129
2130 case triton::extlibs::capstone::ARM64_INS_UXTB:
2132 break;
2133
2134 case triton::extlibs::capstone::ARM64_INS_UXTH:
2136 break;
2137
2138 case triton::extlibs::capstone::ARM64_INS_UXTW:
2140 break;
2141
2142 case triton::extlibs::capstone::ARM64_INS_IC:
2144 break;
2145
2146 case triton::extlibs::capstone::ARM64_INS_DC:
2148 break;
2149
2150 case triton::extlibs::capstone::ARM64_INS_AT:
2152 break;
2153
2154 case triton::extlibs::capstone::ARM64_INS_TLBI:
2156 break;
2157
2158 default:
2160 break;
2161 }
2162
2163 return tritonId;
2164 }
2165
2166
2168 switch (id) {
2169 case ID_INS_LDARB:
2170 case ID_INS_LDAXRB:
2171 case ID_INS_LDRB:
2172 case ID_INS_LDRSB:
2173 case ID_INS_LDTRB:
2174 case ID_INS_LDTRSB:
2175 case ID_INS_LDURB:
2176 case ID_INS_LDURSB:
2177 case ID_INS_LDXRB:
2178 case ID_INS_STLRB:
2179 case ID_INS_STLXRB:
2180 case ID_INS_STRB:
2181 case ID_INS_STTRB:
2182 case ID_INS_STURB:
2183 case ID_INS_STXRB:
2184 return 1;
2185 case ID_INS_LDARH:
2186 case ID_INS_LDAXRH:
2187 case ID_INS_LDRH:
2188 case ID_INS_LDRSH:
2189 case ID_INS_LDTRH:
2190 case ID_INS_LDTRSH:
2191 case ID_INS_LDURH:
2192 case ID_INS_LDURSH:
2193 case ID_INS_LDXRH:
2194 case ID_INS_STLRH:
2195 case ID_INS_STLXRH:
2196 case ID_INS_STRH:
2197 case ID_INS_STTRH:
2198 case ID_INS_STURH:
2199 case ID_INS_STXRH:
2200 return 2;
2201 case ID_INS_LDRSW:
2202 case ID_INS_LDTRSW:
2203 case ID_INS_LDURSW:
2204 return 4;
2205 default:
2206 return 0;
2207 }
2208 }
2209
2210 }; /* aarch64 namespace */
2211 }; /* arm namespace */
2212 }; /* arch namespace */
2213}; /* triton namespace */
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.
register_e
Types of register.
Definition archEnums.hpp:66
@ ID_REG_INVALID
invalid = 0
Definition archEnums.hpp:67
shift_e
Types of shift.
vas_e
Vector arrangement specifier.
extend_e
Types of extend.
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_4B
4 lane, containing an 8-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_1S
1 lane, containing an 32-bit element.
@ ID_VAS_1Q
1 lane containing a 128-bit element.
@ ID_VAS_INVALID
invalid
@ ID_VAS_1B
1 lane, containing an 8-bit element.
@ ID_VAS_8H
8 lanes, each containing a 16-bit element.
@ ID_VAS_1H
1 lane, containing an 16-bit element.
@ ID_VAS_4H
4 lanes, each containing a 16-bit element.
@ ID_VAS_2H
2 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
The Triton namespace.