This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] [BINUTILS, AARCH64, 3/8] Add Pointer Arithmetic instructions in Memory Tagging Extension
- From: Sudakshina Das <sudi at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 12 Nov 2018 13:31:19 -0000
- Subject: [binutils-gdb] [BINUTILS, AARCH64, 3/8] Add Pointer Arithmetic instructions in Memory Tagging Extension
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b731bc3b1bd122872a6aff68aafba1eda64a98d1
commit b731bc3b1bd122872a6aff68aafba1eda64a98d1
Author: Sudakshina Das <sudi.das@arm.com>
Date: Mon Nov 12 12:58:26 2018 +0000
[BINUTILS, AARCH64, 3/8] Add Pointer Arithmetic instructions in Memory Tagging Extension
This patch is part of the patch series to add support for ARMv8.5-A
Memory Tagging Extensions which is an optional extension to
ARMv8.5-A and is enabled using the +memtag command line option.
This patch add support to the Pointer Arithmetic instructions from
MTE. These are the following instructions added in this patch:
- SUBP <Xd>, <Xn|SP>, <Xm|SP>
- SUBPS <Xd>, <Xn|SP>, <Xm|SP>
- CMPP <Xn|SP>, <Xm|SP>
where CMPP is an alias to SUBPS XZR, <Xn|SP>, <Xm|SP>
where
<Xd> : Is the 64-bit destination GPR.
<Xn|SP> : Is the 64-bit first source GPR or Stack pointer.
<Xm|SP> : Is the 64-bit second source GPR or Stack pointer.
*** opcodes/ChangeLog ***
2018-11-12 Sudakshina Das <sudi.das@arm.com>
* aarch64-tbl.h (aarch64_opcode_table): Add subp, subps and cmpp.
* aarch64-asm-2.c: Regenerated.
* aarch64-dis-2.c: Regenerated.
* aarch64-opc-2.c: Regenerated.
*** gas/ChangeLog ***
2018-11-12 Sudakshina Das <sudi.das@arm.com>
* testsuite/gas/aarch64/armv8_5-a-memtag.s: Add tests for subp,
subps and cmpp.
* testsuite/gas/aarch64/armv8_5-a-memtag.d: Likewise.
* testsuite/gas/aarch64/illegal-memtag.s: Likewise.
* testsuite/gas/aarch64/illegal-memtag.l: Likewise.
Diff:
---
gas/ChangeLog | 8 +
gas/testsuite/gas/aarch64/armv8_5-a-memtag.d | 22 +
gas/testsuite/gas/aarch64/armv8_5-a-memtag.s | 20 +
gas/testsuite/gas/aarch64/illegal-memtag.l | 8 +
gas/testsuite/gas/aarch64/illegal-memtag.s | 8 +
opcodes/ChangeLog | 7 +
opcodes/aarch64-asm-2.c | 716 +++---
opcodes/aarch64-dis-2.c | 3052 +++++++++++++-------------
opcodes/aarch64-opc-2.c | 68 +-
opcodes/aarch64-tbl.h | 3 +
10 files changed, 2008 insertions(+), 1904 deletions(-)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 605fd05..784a638 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,13 @@
2018-11-12 Sudakshina Das <sudi.das@arm.com>
+ * testsuite/gas/aarch64/armv8_5-a-memtag.s: Add tests for subp,
+ subps and cmpp.
+ * testsuite/gas/aarch64/armv8_5-a-memtag.d: Likewise.
+ * testsuite/gas/aarch64/illegal-memtag.s: Likewise.
+ * testsuite/gas/aarch64/illegal-memtag.l: Likewise.
+
+2018-11-12 Sudakshina Das <sudi.das@arm.com>
+
* config/tc-aarch64.c (parse_operands): Add switch case for
AARCH64_OPND_UIMM4_ADDG and AARCH64_OPND_UIMM10.
* testsuite/gas/aarch64/armv8_5-a-memtag.s: New.
diff --git a/gas/testsuite/gas/aarch64/armv8_5-a-memtag.d b/gas/testsuite/gas/aarch64/armv8_5-a-memtag.d
index 4610461..a7cb6c4 100644
--- a/gas/testsuite/gas/aarch64/armv8_5-a-memtag.d
+++ b/gas/testsuite/gas/aarch64/armv8_5-a-memtag.d
@@ -33,3 +33,25 @@ Disassembly of section \.text:
.*: d180037b subg x27, x27, #0x0, #0x0
.*: d1bf3fe0 subg x0, sp, #0x3f0, #0xf
.*: d1bf141f subg sp, x0, #0x3f0, #0x5
+.*: 9ac00000 subp x0, x0, x0
+.*: 9ac0001b subp x27, x0, x0
+.*: 9ac00360 subp x0, x27, x0
+.*: 9adb0000 subp x0, x0, x27
+.*: 9adb037b subp x27, x27, x27
+.*: 9ac003e0 subp x0, sp, x0
+.*: 9adf0000 subp x0, x0, sp
+.*: 9ac0001f subp xzr, x0, x0
+.*: bac00000 subps x0, x0, x0
+.*: bac0001b subps x27, x0, x0
+.*: bac00360 subps x0, x27, x0
+.*: badb0000 subps x0, x0, x27
+.*: badb037b subps x27, x27, x27
+.*: bac003e0 subps x0, sp, x0
+.*: badf0000 subps x0, x0, sp
+.*: bac0001f cmpp x0, x0
+.*: bac0001f cmpp x0, x0
+.*: bac0037f cmpp x27, x0
+.*: badb001f cmpp x0, x27
+.*: badb037f cmpp x27, x27
+.*: bac003ff cmpp sp, x0
+.*: badf001f cmpp x0, sp
diff --git a/gas/testsuite/gas/aarch64/armv8_5-a-memtag.s b/gas/testsuite/gas/aarch64/armv8_5-a-memtag.s
index 96a3f37..f17f87e 100644
--- a/gas/testsuite/gas/aarch64/armv8_5-a-memtag.s
+++ b/gas/testsuite/gas/aarch64/armv8_5-a-memtag.s
@@ -35,3 +35,23 @@ func:
expand_2_reg subg
subg x0, sp, #0x3f0, #0xf
subg sp, x0, #0x3f0, #0x5
+
+ # SUBP
+ expand_3_reg subp
+ subp x0, sp, x0
+ subp x0, x0, sp
+ subp xzr, x0, x0
+
+ # SUBPS
+ expand_3_reg subps
+ subps x0, sp, x0
+ subps x0, x0, sp
+ subps xzr, x0, x0
+
+ # CMPP
+ cmpp x0, x0
+ cmpp x27, x0
+ cmpp x0, x27
+ cmpp x27, x27
+ cmpp sp, x0
+ cmpp x0, sp
diff --git a/gas/testsuite/gas/aarch64/illegal-memtag.l b/gas/testsuite/gas/aarch64/illegal-memtag.l
index 501faa7..4da0c35 100644
--- a/gas/testsuite/gas/aarch64/illegal-memtag.l
+++ b/gas/testsuite/gas/aarch64/illegal-memtag.l
@@ -12,3 +12,11 @@
[^:]*:[0-9]+: Error: operand 2 must be an integer or stack pointer register -- `gmi x1,xzr,x3'
[^:]*:[0-9]+: Error: operand 1 must be an integer or stack pointer register -- `addg xzr,x2,#0,#0'
[^:]*:[0-9]+: Error: operand 2 must be an integer or stack pointer register -- `subg x1,xzr,#0,#0'
+[^:]*:[0-9]+: Error: operand 1 must be an integer register -- `subp sp,x1,x2'
+[^:]*:[0-9]+: Error: operand 2 must be an integer or stack pointer register -- `subp x1,xzr,x2'
+[^:]*:[0-9]+: Error: operand 3 must be an integer or stack pointer register -- `subp x1,x2,xzr'
+[^:]*:[0-9]+: Error: operand 1 must be an integer register -- `subps sp,x1,x2'
+[^:]*:[0-9]+: Error: operand 2 must be an integer or stack pointer register -- `subps x1,xzr,x2'
+[^:]*:[0-9]+: Error: operand 3 must be an integer or stack pointer register -- `subps x1,x2,xzr'
+[^:]*:[0-9]+: Error: operand 1 must be an integer or stack pointer register -- `cmpp xzr,x2'
+[^:]*:[0-9]+: Error: operand 2 must be an integer or stack pointer register -- `cmpp x2,xzr'
diff --git a/gas/testsuite/gas/aarch64/illegal-memtag.s b/gas/testsuite/gas/aarch64/illegal-memtag.s
index 05f3ead..7eab07f 100644
--- a/gas/testsuite/gas/aarch64/illegal-memtag.s
+++ b/gas/testsuite/gas/aarch64/illegal-memtag.s
@@ -17,3 +17,11 @@ func:
gmi x1, xzr, x3
addg xzr, x2, #0, #0
subg x1, xzr, #0, #0
+ subp sp, x1, x2
+ subp x1, xzr, x2
+ subp x1, x2, xzr
+ subps sp, x1, x2
+ subps x1, xzr, x2
+ subps x1, x2, xzr
+ cmpp xzr, x2
+ cmpp x2, xzr
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 66633c7..424368c 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,12 @@
2018-11-12 Sudakshina Das <sudi.das@arm.com>
+ * aarch64-tbl.h (aarch64_opcode_table): Add subp, subps and cmpp.
+ * aarch64-asm-2.c: Regenerated.
+ * aarch64-dis-2.c: Regenerated.
+ * aarch64-opc-2.c: Regenerated.
+
+2018-11-12 Sudakshina Das <sudi.das@arm.com>
+
* aarch64-opc.h (aarch64_field_kind): New FLD_imm4_3.
(OPD_F_SHIFT_BY_4, operand_need_shift_by_four): New.
* aarch64-opc.c (fields): Add entry for imm4_3.
diff --git a/opcodes/aarch64-asm-2.c b/opcodes/aarch64-asm-2.c
index 36dff0b..1310260 100644
--- a/opcodes/aarch64-asm-2.c
+++ b/opcodes/aarch64-asm-2.c
@@ -169,418 +169,422 @@ aarch64_find_real_opcode (const aarch64_opcode *opcode)
case 719: /* rorv */
value = 719; /* --> rorv. */
break;
- case 733: /* mul */
- case 732: /* madd */
- value = 732; /* --> madd. */
- break;
- case 735: /* mneg */
- case 734: /* msub */
- value = 734; /* --> msub. */
- break;
- case 737: /* smull */
- case 736: /* smaddl */
- value = 736; /* --> smaddl. */
- break;
- case 739: /* smnegl */
- case 738: /* smsubl */
- value = 738; /* --> smsubl. */
- break;
- case 742: /* umull */
- case 741: /* umaddl */
- value = 741; /* --> umaddl. */
- break;
- case 744: /* umnegl */
- case 743: /* umsubl */
- value = 743; /* --> umsubl. */
- break;
- case 755: /* ror */
- case 754: /* extr */
- value = 754; /* --> extr. */
- break;
- case 974: /* bic */
- case 973: /* and */
- value = 973; /* --> and. */
- break;
- case 976: /* mov */
- case 975: /* orr */
- value = 975; /* --> orr. */
- break;
- case 979: /* tst */
- case 978: /* ands */
- value = 978; /* --> ands. */
- break;
- case 984: /* uxtw */
- case 983: /* mov */
- case 982: /* orr */
- value = 982; /* --> orr. */
+ case 723: /* cmpp */
+ case 722: /* subps */
+ value = 722; /* --> subps. */
+ break;
+ case 736: /* mul */
+ case 735: /* madd */
+ value = 735; /* --> madd. */
+ break;
+ case 738: /* mneg */
+ case 737: /* msub */
+ value = 737; /* --> msub. */
+ break;
+ case 740: /* smull */
+ case 739: /* smaddl */
+ value = 739; /* --> smaddl. */
+ break;
+ case 742: /* smnegl */
+ case 741: /* smsubl */
+ value = 741; /* --> smsubl. */
+ break;
+ case 745: /* umull */
+ case 744: /* umaddl */
+ value = 744; /* --> umaddl. */
+ break;
+ case 747: /* umnegl */
+ case 746: /* umsubl */
+ value = 746; /* --> umsubl. */
+ break;
+ case 758: /* ror */
+ case 757: /* extr */
+ value = 757; /* --> extr. */
+ break;
+ case 977: /* bic */
+ case 976: /* and */
+ value = 976; /* --> and. */
+ break;
+ case 979: /* mov */
+ case 978: /* orr */
+ value = 978; /* --> orr. */
+ break;
+ case 982: /* tst */
+ case 981: /* ands */
+ value = 981; /* --> ands. */
+ break;
+ case 987: /* uxtw */
+ case 986: /* mov */
+ case 985: /* orr */
+ value = 985; /* --> orr. */
break;
- case 986: /* mvn */
- case 985: /* orn */
- value = 985; /* --> orn. */
+ case 989: /* mvn */
+ case 988: /* orn */
+ value = 988; /* --> orn. */
break;
- case 990: /* tst */
- case 989: /* ands */
- value = 989; /* --> ands. */
+ case 993: /* tst */
+ case 992: /* ands */
+ value = 992; /* --> ands. */
break;
- case 1116: /* staddb */
- case 1020: /* ldaddb */
- value = 1020; /* --> ldaddb. */
+ case 1119: /* staddb */
+ case 1023: /* ldaddb */
+ value = 1023; /* --> ldaddb. */
break;
- case 1117: /* staddh */
- case 1021: /* ldaddh */
- value = 1021; /* --> ldaddh. */
+ case 1120: /* staddh */
+ case 1024: /* ldaddh */
+ value = 1024; /* --> ldaddh. */
break;
- case 1118: /* stadd */
- case 1022: /* ldadd */
- value = 1022; /* --> ldadd. */
+ case 1121: /* stadd */
+ case 1025: /* ldadd */
+ value = 1025; /* --> ldadd. */
break;
- case 1119: /* staddlb */
- case 1024: /* ldaddlb */
- value = 1024; /* --> ldaddlb. */
+ case 1122: /* staddlb */
+ case 1027: /* ldaddlb */
+ value = 1027; /* --> ldaddlb. */
break;
- case 1120: /* staddlh */
- case 1027: /* ldaddlh */
- value = 1027; /* --> ldaddlh. */
+ case 1123: /* staddlh */
+ case 1030: /* ldaddlh */
+ value = 1030; /* --> ldaddlh. */
break;
- case 1121: /* staddl */
- case 1030: /* ldaddl */
- value = 1030; /* --> ldaddl. */
+ case 1124: /* staddl */
+ case 1033: /* ldaddl */
+ value = 1033; /* --> ldaddl. */
break;
- case 1122: /* stclrb */
- case 1032: /* ldclrb */
- value = 1032; /* --> ldclrb. */
+ case 1125: /* stclrb */
+ case 1035: /* ldclrb */
+ value = 1035; /* --> ldclrb. */
break;
- case 1123: /* stclrh */
- case 1033: /* ldclrh */
- value = 1033; /* --> ldclrh. */
+ case 1126: /* stclrh */
+ case 1036: /* ldclrh */
+ value = 1036; /* --> ldclrh. */
break;
- case 1124: /* stclr */
- case 1034: /* ldclr */
- value = 1034; /* --> ldclr. */
+ case 1127: /* stclr */
+ case 1037: /* ldclr */
+ value = 1037; /* --> ldclr. */
break;
- case 1125: /* stclrlb */
- case 1036: /* ldclrlb */
- value = 1036; /* --> ldclrlb. */
+ case 1128: /* stclrlb */
+ case 1039: /* ldclrlb */
+ value = 1039; /* --> ldclrlb. */
break;
- case 1126: /* stclrlh */
- case 1039: /* ldclrlh */
- value = 1039; /* --> ldclrlh. */
+ case 1129: /* stclrlh */
+ case 1042: /* ldclrlh */
+ value = 1042; /* --> ldclrlh. */
break;
- case 1127: /* stclrl */
- case 1042: /* ldclrl */
- value = 1042; /* --> ldclrl. */
+ case 1130: /* stclrl */
+ case 1045: /* ldclrl */
+ value = 1045; /* --> ldclrl. */
break;
- case 1128: /* steorb */
- case 1044: /* ldeorb */
- value = 1044; /* --> ldeorb. */
+ case 1131: /* steorb */
+ case 1047: /* ldeorb */
+ value = 1047; /* --> ldeorb. */
break;
- case 1129: /* steorh */
- case 1045: /* ldeorh */
- value = 1045; /* --> ldeorh. */
+ case 1132: /* steorh */
+ case 1048: /* ldeorh */
+ value = 1048; /* --> ldeorh. */
break;
- case 1130: /* steor */
- case 1046: /* ldeor */
- value = 1046; /* --> ldeor. */
+ case 1133: /* steor */
+ case 1049: /* ldeor */
+ value = 1049; /* --> ldeor. */
break;
- case 1131: /* steorlb */
- case 1048: /* ldeorlb */
- value = 1048; /* --> ldeorlb. */
+ case 1134: /* steorlb */
+ case 1051: /* ldeorlb */
+ value = 1051; /* --> ldeorlb. */
break;
- case 1132: /* steorlh */
- case 1051: /* ldeorlh */
- value = 1051; /* --> ldeorlh. */
+ case 1135: /* steorlh */
+ case 1054: /* ldeorlh */
+ value = 1054; /* --> ldeorlh. */
break;
- case 1133: /* steorl */
- case 1054: /* ldeorl */
- value = 1054; /* --> ldeorl. */
+ case 1136: /* steorl */
+ case 1057: /* ldeorl */
+ value = 1057; /* --> ldeorl. */
break;
- case 1134: /* stsetb */
- case 1056: /* ldsetb */
- value = 1056; /* --> ldsetb. */
+ case 1137: /* stsetb */
+ case 1059: /* ldsetb */
+ value = 1059; /* --> ldsetb. */
break;
- case 1135: /* stseth */
- case 1057: /* ldseth */
- value = 1057; /* --> ldseth. */
+ case 1138: /* stseth */
+ case 1060: /* ldseth */
+ value = 1060; /* --> ldseth. */
break;
- case 1136: /* stset */
- case 1058: /* ldset */
- value = 1058; /* --> ldset. */
+ case 1139: /* stset */
+ case 1061: /* ldset */
+ value = 1061; /* --> ldset. */
break;
- case 1137: /* stsetlb */
- case 1060: /* ldsetlb */
- value = 1060; /* --> ldsetlb. */
+ case 1140: /* stsetlb */
+ case 1063: /* ldsetlb */
+ value = 1063; /* --> ldsetlb. */
break;
- case 1138: /* stsetlh */
- case 1063: /* ldsetlh */
- value = 1063; /* --> ldsetlh. */
+ case 1141: /* stsetlh */
+ case 1066: /* ldsetlh */
+ value = 1066; /* --> ldsetlh. */
break;
- case 1139: /* stsetl */
- case 1066: /* ldsetl */
- value = 1066; /* --> ldsetl. */
+ case 1142: /* stsetl */
+ case 1069: /* ldsetl */
+ value = 1069; /* --> ldsetl. */
break;
- case 1140: /* stsmaxb */
- case 1068: /* ldsmaxb */
- value = 1068; /* --> ldsmaxb. */
+ case 1143: /* stsmaxb */
+ case 1071: /* ldsmaxb */
+ value = 1071; /* --> ldsmaxb. */
break;
- case 1141: /* stsmaxh */
- case 1069: /* ldsmaxh */
- value = 1069; /* --> ldsmaxh. */
+ case 1144: /* stsmaxh */
+ case 1072: /* ldsmaxh */
+ value = 1072; /* --> ldsmaxh. */
break;
- case 1142: /* stsmax */
- case 1070: /* ldsmax */
- value = 1070; /* --> ldsmax. */
- break;
- case 1143: /* stsmaxlb */
- case 1072: /* ldsmaxlb */
- value = 1072; /* --> ldsmaxlb. */
- break;
- case 1144: /* stsmaxlh */
- case 1075: /* ldsmaxlh */
- value = 1075; /* --> ldsmaxlh. */
- break;
- case 1145: /* stsmaxl */
- case 1078: /* ldsmaxl */
- value = 1078; /* --> ldsmaxl. */
- break;
- case 1146: /* stsminb */
- case 1080: /* ldsminb */
- value = 1080; /* --> ldsminb. */
- break;
- case 1147: /* stsminh */
- case 1081: /* ldsminh */
- value = 1081; /* --> ldsminh. */
- break;
- case 1148: /* stsmin */
- case 1082: /* ldsmin */
- value = 1082; /* --> ldsmin. */
- break;
- case 1149: /* stsminlb */
- case 1084: /* ldsminlb */
- value = 1084; /* --> ldsminlb. */
- break;
- case 1150: /* stsminlh */
- case 1087: /* ldsminlh */
- value = 1087; /* --> ldsminlh. */
- break;
- case 1151: /* stsminl */
- case 1090: /* ldsminl */
- value = 1090; /* --> ldsminl. */
- break;
- case 1152: /* stumaxb */
- case 1092: /* ldumaxb */
- value = 1092; /* --> ldumaxb. */
- break;
- case 1153: /* stumaxh */
- case 1093: /* ldumaxh */
- value = 1093; /* --> ldumaxh. */
- break;
- case 1154: /* stumax */
- case 1094: /* ldumax */
- value = 1094; /* --> ldumax. */
- break;
- case 1155: /* stumaxlb */
- case 1096: /* ldumaxlb */
- value = 1096; /* --> ldumaxlb. */
- break;
- case 1156: /* stumaxlh */
- case 1099: /* ldumaxlh */
- value = 1099; /* --> ldumaxlh. */
- break;
- case 1157: /* stumaxl */
- case 1102: /* ldumaxl */
- value = 1102; /* --> ldumaxl. */
- break;
- case 1158: /* stuminb */
- case 1104: /* lduminb */
- value = 1104; /* --> lduminb. */
- break;
- case 1159: /* stuminh */
- case 1105: /* lduminh */
- value = 1105; /* --> lduminh. */
- break;
- case 1160: /* stumin */
- case 1106: /* ldumin */
- value = 1106; /* --> ldumin. */
- break;
- case 1161: /* stuminlb */
- case 1108: /* lduminlb */
- value = 1108; /* --> lduminlb. */
- break;
- case 1162: /* stuminlh */
- case 1111: /* lduminlh */
- value = 1111; /* --> lduminlh. */
- break;
- case 1163: /* stuminl */
- case 1114: /* lduminl */
- value = 1114; /* --> lduminl. */
- break;
- case 1165: /* mov */
- case 1164: /* movn */
- value = 1164; /* --> movn. */
- break;
- case 1167: /* mov */
- case 1166: /* movz */
- value = 1166; /* --> movz. */
- break;
- case 1213: /* autibsp */
- case 1212: /* autibz */
- case 1211: /* autiasp */
- case 1210: /* autiaz */
- case 1209: /* pacibsp */
- case 1208: /* pacibz */
- case 1207: /* paciasp */
- case 1206: /* paciaz */
- case 1187: /* psb */
- case 1186: /* esb */
- case 1185: /* autib1716 */
- case 1184: /* autia1716 */
- case 1183: /* pacib1716 */
- case 1182: /* pacia1716 */
- case 1181: /* xpaclri */
- case 1180: /* sevl */
- case 1179: /* sev */
- case 1178: /* wfi */
- case 1177: /* wfe */
- case 1176: /* yield */
- case 1175: /* bti */
- case 1174: /* csdb */
- case 1173: /* nop */
- case 1172: /* hint */
- value = 1172; /* --> hint. */
- break;
- case 1191: /* pssbb */
- case 1190: /* ssbb */
- case 1189: /* dsb */
- value = 1189; /* --> dsb. */
- break;
- case 1202: /* cpp */
- case 1201: /* dvp */
- case 1200: /* cfp */
- case 1199: /* tlbi */
- case 1198: /* ic */
- case 1197: /* dc */
- case 1196: /* at */
- case 1195: /* sys */
- value = 1195; /* --> sys. */
- break;
- case 2011: /* bic */
- case 1261: /* and */
- value = 1261; /* --> and. */
+ case 1145: /* stsmax */
+ case 1073: /* ldsmax */
+ value = 1073; /* --> ldsmax. */
+ break;
+ case 1146: /* stsmaxlb */
+ case 1075: /* ldsmaxlb */
+ value = 1075; /* --> ldsmaxlb. */
+ break;
+ case 1147: /* stsmaxlh */
+ case 1078: /* ldsmaxlh */
+ value = 1078; /* --> ldsmaxlh. */
+ break;
+ case 1148: /* stsmaxl */
+ case 1081: /* ldsmaxl */
+ value = 1081; /* --> ldsmaxl. */
+ break;
+ case 1149: /* stsminb */
+ case 1083: /* ldsminb */
+ value = 1083; /* --> ldsminb. */
+ break;
+ case 1150: /* stsminh */
+ case 1084: /* ldsminh */
+ value = 1084; /* --> ldsminh. */
+ break;
+ case 1151: /* stsmin */
+ case 1085: /* ldsmin */
+ value = 1085; /* --> ldsmin. */
+ break;
+ case 1152: /* stsminlb */
+ case 1087: /* ldsminlb */
+ value = 1087; /* --> ldsminlb. */
+ break;
+ case 1153: /* stsminlh */
+ case 1090: /* ldsminlh */
+ value = 1090; /* --> ldsminlh. */
+ break;
+ case 1154: /* stsminl */
+ case 1093: /* ldsminl */
+ value = 1093; /* --> ldsminl. */
+ break;
+ case 1155: /* stumaxb */
+ case 1095: /* ldumaxb */
+ value = 1095; /* --> ldumaxb. */
+ break;
+ case 1156: /* stumaxh */
+ case 1096: /* ldumaxh */
+ value = 1096; /* --> ldumaxh. */
+ break;
+ case 1157: /* stumax */
+ case 1097: /* ldumax */
+ value = 1097; /* --> ldumax. */
+ break;
+ case 1158: /* stumaxlb */
+ case 1099: /* ldumaxlb */
+ value = 1099; /* --> ldumaxlb. */
+ break;
+ case 1159: /* stumaxlh */
+ case 1102: /* ldumaxlh */
+ value = 1102; /* --> ldumaxlh. */
+ break;
+ case 1160: /* stumaxl */
+ case 1105: /* ldumaxl */
+ value = 1105; /* --> ldumaxl. */
+ break;
+ case 1161: /* stuminb */
+ case 1107: /* lduminb */
+ value = 1107; /* --> lduminb. */
+ break;
+ case 1162: /* stuminh */
+ case 1108: /* lduminh */
+ value = 1108; /* --> lduminh. */
+ break;
+ case 1163: /* stumin */
+ case 1109: /* ldumin */
+ value = 1109; /* --> ldumin. */
+ break;
+ case 1164: /* stuminlb */
+ case 1111: /* lduminlb */
+ value = 1111; /* --> lduminlb. */
+ break;
+ case 1165: /* stuminlh */
+ case 1114: /* lduminlh */
+ value = 1114; /* --> lduminlh. */
+ break;
+ case 1166: /* stuminl */
+ case 1117: /* lduminl */
+ value = 1117; /* --> lduminl. */
+ break;
+ case 1168: /* mov */
+ case 1167: /* movn */
+ value = 1167; /* --> movn. */
+ break;
+ case 1170: /* mov */
+ case 1169: /* movz */
+ value = 1169; /* --> movz. */
+ break;
+ case 1216: /* autibsp */
+ case 1215: /* autibz */
+ case 1214: /* autiasp */
+ case 1213: /* autiaz */
+ case 1212: /* pacibsp */
+ case 1211: /* pacibz */
+ case 1210: /* paciasp */
+ case 1209: /* paciaz */
+ case 1190: /* psb */
+ case 1189: /* esb */
+ case 1188: /* autib1716 */
+ case 1187: /* autia1716 */
+ case 1186: /* pacib1716 */
+ case 1185: /* pacia1716 */
+ case 1184: /* xpaclri */
+ case 1183: /* sevl */
+ case 1182: /* sev */
+ case 1181: /* wfi */
+ case 1180: /* wfe */
+ case 1179: /* yield */
+ case 1178: /* bti */
+ case 1177: /* csdb */
+ case 1176: /* nop */
+ case 1175: /* hint */
+ value = 1175; /* --> hint. */
+ break;
+ case 1194: /* pssbb */
+ case 1193: /* ssbb */
+ case 1192: /* dsb */
+ value = 1192; /* --> dsb. */
+ break;
+ case 1205: /* cpp */
+ case 1204: /* dvp */
+ case 1203: /* cfp */
+ case 1202: /* tlbi */
+ case 1201: /* ic */
+ case 1200: /* dc */
+ case 1199: /* at */
+ case 1198: /* sys */
+ value = 1198; /* --> sys. */
+ break;
+ case 2014: /* bic */
+ case 1264: /* and */
+ value = 1264; /* --> and. */
+ break;
+ case 1247: /* mov */
+ case 1266: /* and */
+ value = 1266; /* --> and. */
+ break;
+ case 1251: /* movs */
+ case 1267: /* ands */
+ value = 1267; /* --> ands. */
+ break;
+ case 2015: /* cmple */
+ case 1302: /* cmpge */
+ value = 1302; /* --> cmpge. */
+ break;
+ case 2018: /* cmplt */
+ case 1305: /* cmpgt */
+ value = 1305; /* --> cmpgt. */
+ break;
+ case 2016: /* cmplo */
+ case 1307: /* cmphi */
+ value = 1307; /* --> cmphi. */
+ break;
+ case 2017: /* cmpls */
+ case 1310: /* cmphs */
+ value = 1310; /* --> cmphs. */
break;
case 1244: /* mov */
- case 1263: /* and */
- value = 1263; /* --> and. */
+ case 1332: /* cpy */
+ value = 1332; /* --> cpy. */
break;
- case 1248: /* movs */
- case 1264: /* ands */
- value = 1264; /* --> ands. */
- break;
- case 2012: /* cmple */
- case 1299: /* cmpge */
- value = 1299; /* --> cmpge. */
- break;
- case 2015: /* cmplt */
- case 1302: /* cmpgt */
- value = 1302; /* --> cmpgt. */
+ case 1246: /* mov */
+ case 1333: /* cpy */
+ value = 1333; /* --> cpy. */
break;
- case 2013: /* cmplo */
- case 1304: /* cmphi */
- value = 1304; /* --> cmphi. */
+ case 2025: /* fmov */
+ case 1249: /* mov */
+ case 1334: /* cpy */
+ value = 1334; /* --> cpy. */
break;
- case 2014: /* cmpls */
- case 1307: /* cmphs */
- value = 1307; /* --> cmphs. */
+ case 1239: /* mov */
+ case 1346: /* dup */
+ value = 1346; /* --> dup. */
break;
case 1241: /* mov */
- case 1329: /* cpy */
- value = 1329; /* --> cpy. */
- break;
- case 1243: /* mov */
- case 1330: /* cpy */
- value = 1330; /* --> cpy. */
- break;
- case 2022: /* fmov */
- case 1246: /* mov */
- case 1331: /* cpy */
- value = 1331; /* --> cpy. */
- break;
- case 1236: /* mov */
- case 1343: /* dup */
- value = 1343; /* --> dup. */
- break;
case 1238: /* mov */
- case 1235: /* mov */
- case 1344: /* dup */
- value = 1344; /* --> dup. */
+ case 1347: /* dup */
+ value = 1347; /* --> dup. */
break;
- case 2021: /* fmov */
- case 1240: /* mov */
- case 1345: /* dup */
- value = 1345; /* --> dup. */
- break;
- case 1239: /* mov */
- case 1346: /* dupm */
- value = 1346; /* --> dupm. */
- break;
- case 2016: /* eon */
- case 1348: /* eor */
- value = 1348; /* --> eor. */
+ case 2024: /* fmov */
+ case 1243: /* mov */
+ case 1348: /* dup */
+ value = 1348; /* --> dup. */
break;
- case 1249: /* not */
- case 1350: /* eor */
- value = 1350; /* --> eor. */
+ case 1242: /* mov */
+ case 1349: /* dupm */
+ value = 1349; /* --> dupm. */
break;
- case 1250: /* nots */
- case 1351: /* eors */
- value = 1351; /* --> eors. */
+ case 2019: /* eon */
+ case 1351: /* eor */
+ value = 1351; /* --> eor. */
break;
- case 2017: /* facle */
- case 1356: /* facge */
- value = 1356; /* --> facge. */
+ case 1252: /* not */
+ case 1353: /* eor */
+ value = 1353; /* --> eor. */
break;
- case 2018: /* faclt */
- case 1357: /* facgt */
- value = 1357; /* --> facgt. */
+ case 1253: /* nots */
+ case 1354: /* eors */
+ value = 1354; /* --> eors. */
break;
- case 2019: /* fcmle */
- case 1370: /* fcmge */
- value = 1370; /* --> fcmge. */
+ case 2020: /* facle */
+ case 1359: /* facge */
+ value = 1359; /* --> facge. */
break;
- case 2020: /* fcmlt */
- case 1372: /* fcmgt */
- value = 1372; /* --> fcmgt. */
+ case 2021: /* faclt */
+ case 1360: /* facgt */
+ value = 1360; /* --> facgt. */
break;
- case 1233: /* fmov */
- case 1378: /* fcpy */
- value = 1378; /* --> fcpy. */
+ case 2022: /* fcmle */
+ case 1373: /* fcmge */
+ value = 1373; /* --> fcmge. */
break;
- case 1232: /* fmov */
- case 1401: /* fdup */
- value = 1401; /* --> fdup. */
+ case 2023: /* fcmlt */
+ case 1375: /* fcmgt */
+ value = 1375; /* --> fcmgt. */
break;
- case 1234: /* mov */
- case 1732: /* orr */
- value = 1732; /* --> orr. */
+ case 1236: /* fmov */
+ case 1381: /* fcpy */
+ value = 1381; /* --> fcpy. */
break;
- case 2023: /* orn */
- case 1733: /* orr */
- value = 1733; /* --> orr. */
+ case 1235: /* fmov */
+ case 1404: /* fdup */
+ value = 1404; /* --> fdup. */
break;
case 1237: /* mov */
case 1735: /* orr */
value = 1735; /* --> orr. */
break;
- case 1247: /* movs */
- case 1736: /* orrs */
- value = 1736; /* --> orrs. */
+ case 2026: /* orn */
+ case 1736: /* orr */
+ value = 1736; /* --> orr. */
break;
- case 1242: /* mov */
- case 1798: /* sel */
- value = 1798; /* --> sel. */
+ case 1240: /* mov */
+ case 1738: /* orr */
+ value = 1738; /* --> orr. */
+ break;
+ case 1250: /* movs */
+ case 1739: /* orrs */
+ value = 1739; /* --> orrs. */
break;
case 1245: /* mov */
- case 1799: /* sel */
- value = 1799; /* --> sel. */
+ case 1801: /* sel */
+ value = 1801; /* --> sel. */
+ break;
+ case 1248: /* mov */
+ case 1802: /* sel */
+ value = 1802; /* --> sel. */
break;
default: return NULL;
}
diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c
index f3c5bea..cac71af 100644
--- a/opcodes/aarch64-dis-2.c
+++ b/opcodes/aarch64-dis-2.c
@@ -40,7 +40,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0xxx0000xxxxxxxxxxxxxxxxxxxxxxxx
adr. */
- return 1169;
+ return 1172;
}
else
{
@@ -48,7 +48,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1xxx0000xxxxxxxxxxxxxxxxxxxxxxxx
adrp. */
- return 1170;
+ return 1173;
}
}
else
@@ -115,7 +115,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x000xxxxx0xxxxxxxxxxxxxxx
stxrb. */
- return 924;
+ return 927;
}
else
{
@@ -123,7 +123,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x000xxxxx0xxxxxxxxxxxxxxx
stxrh. */
- return 930;
+ return 933;
}
}
else
@@ -132,7 +132,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x000xxxxx0xxxxxxxxxxxxxxx
stxr. */
- return 936;
+ return 939;
}
}
else
@@ -143,7 +143,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x00100x001xxxxx0xxxxxxxxxxxxxxx
casp. */
- return 1004;
+ return 1007;
}
else
{
@@ -151,7 +151,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x001xxxxx0xxxxxxxxxxxxxxx
stxp. */
- return 938;
+ return 941;
}
}
}
@@ -167,7 +167,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x000xxxxx1xxxxxxxxxxxxxxx
stlxrb. */
- return 925;
+ return 928;
}
else
{
@@ -175,7 +175,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x000xxxxx1xxxxxxxxxxxxxxx
stlxrh. */
- return 931;
+ return 934;
}
}
else
@@ -184,7 +184,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x000xxxxx1xxxxxxxxxxxxxxx
stlxr. */
- return 937;
+ return 940;
}
}
else
@@ -195,7 +195,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x00100x001xxxxx1xxxxxxxxxxxxxxx
caspl. */
- return 1006;
+ return 1009;
}
else
{
@@ -203,7 +203,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x001xxxxx1xxxxxxxxxxxxxxx
stlxp. */
- return 939;
+ return 942;
}
}
}
@@ -214,7 +214,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx10100x00xxxxxxxxxxxxxxxxxxxxxx
stnp. */
- return 955;
+ return 958;
}
}
else
@@ -231,7 +231,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x00100x100xxxxx0xxxxxxxxxxxxxxx
stllrb. */
- return 953;
+ return 956;
}
else
{
@@ -239,7 +239,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x100xxxxx0xxxxxxxxxxxxxxx
stllr. */
- return 952;
+ return 955;
}
}
else
@@ -252,7 +252,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x101xxxxx0xxxxxxxxxxxxxxx
casb. */
- return 992;
+ return 995;
}
else
{
@@ -260,7 +260,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x101xxxxx0xxxxxxxxxxxxxxx
cash. */
- return 993;
+ return 996;
}
}
else
@@ -269,7 +269,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x101xxxxx0xxxxxxxxxxxxxxx
cas. */
- return 994;
+ return 997;
}
}
}
@@ -285,7 +285,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x100xxxxx1xxxxxxxxxxxxxxx
stlrb. */
- return 928;
+ return 931;
}
else
{
@@ -293,7 +293,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x100xxxxx1xxxxxxxxxxxxxxx
stlrh. */
- return 934;
+ return 937;
}
}
else
@@ -302,7 +302,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x100xxxxx1xxxxxxxxxxxxxxx
stlr. */
- return 944;
+ return 947;
}
}
else
@@ -315,7 +315,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x101xxxxx1xxxxxxxxxxxxxxx
caslb. */
- return 996;
+ return 999;
}
else
{
@@ -323,7 +323,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x101xxxxx1xxxxxxxxxxxxxxx
caslh. */
- return 999;
+ return 1002;
}
}
else
@@ -332,7 +332,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x101xxxxx1xxxxxxxxxxxxxxx
casl. */
- return 1002;
+ return 1005;
}
}
}
@@ -343,7 +343,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
xx10100x10xxxxxxxxxxxxxxxxxxxxxx
stp. */
- return 964;
+ return 967;
}
}
}
@@ -365,7 +365,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x010xxxxx0xxxxxxxxxxxxxxx
ldxrb. */
- return 926;
+ return 929;
}
else
{
@@ -373,7 +373,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x010xxxxx0xxxxxxxxxxxxxxx
ldxrh. */
- return 932;
+ return 935;
}
}
else
@@ -382,7 +382,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x010xxxxx0xxxxxxxxxxxxxxx
ldxr. */
- return 940;
+ return 943;
}
}
else
@@ -393,7 +393,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x00100x011xxxxx0xxxxxxxxxxxxxxx
caspa. */
- return 1005;
+ return 1008;
}
else
{
@@ -401,7 +401,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x011xxxxx0xxxxxxxxxxxxxxx
ldxp. */
- return 942;
+ return 945;
}
}
}
@@ -417,7 +417,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x010xxxxx1xxxxxxxxxxxxxxx
ldaxrb. */
- return 927;
+ return 930;
}
else
{
@@ -425,7 +425,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x010xxxxx1xxxxxxxxxxxxxxx
ldaxrh. */
- return 933;
+ return 936;
}
}
else
@@ -434,7 +434,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x010xxxxx1xxxxxxxxxxxxxxx
ldaxr. */
- return 941;
+ return 944;
}
}
else
@@ -445,7 +445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x00100x011xxxxx1xxxxxxxxxxxxxxx
caspal. */
- return 1007;
+ return 1010;
}
else
{
@@ -453,7 +453,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x011xxxxx1xxxxxxxxxxxxxxx
ldaxp. */
- return 943;
+ return 946;
}
}
}
@@ -466,7 +466,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x010100x01xxxxxxxxxxxxxxxxxxxxxx
ldnp. */
- return 956;
+ return 959;
}
else
{
@@ -474,7 +474,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x110100x01xxxxxxxxxxxxxxxxxxxxxx
ldpsw. */
- return 963;
+ return 966;
}
}
}
@@ -494,7 +494,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x110xxxxx0xxxxxxxxxxxxxxx
ldlarb. */
- return 950;
+ return 953;
}
else
{
@@ -502,7 +502,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x110xxxxx0xxxxxxxxxxxxxxx
ldlarh. */
- return 951;
+ return 954;
}
}
else
@@ -511,7 +511,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x110xxxxx0xxxxxxxxxxxxxxx
ldlar. */
- return 949;
+ return 952;
}
}
else
@@ -524,7 +524,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x111xxxxx0xxxxxxxxxxxxxxx
casab. */
- return 995;
+ return 998;
}
else
{
@@ -532,7 +532,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x111xxxxx0xxxxxxxxxxxxxxx
casah. */
- return 998;
+ return 1001;
}
}
else
@@ -541,7 +541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x111xxxxx0xxxxxxxxxxxxxxx
casa. */
- return 1001;
+ return 1004;
}
}
}
@@ -557,7 +557,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x110xxxxx1xxxxxxxxxxxxxxx
ldarb. */
- return 929;
+ return 932;
}
else
{
@@ -565,7 +565,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x110xxxxx1xxxxxxxxxxxxxxx
ldarh. */
- return 935;
+ return 938;
}
}
else
@@ -574,7 +574,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x110xxxxx1xxxxxxxxxxxxxxx
ldar. */
- return 945;
+ return 948;
}
}
else
@@ -587,7 +587,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0000100x111xxxxx1xxxxxxxxxxxxxxx
casalb. */
- return 997;
+ return 1000;
}
else
{
@@ -595,7 +595,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0100100x111xxxxx1xxxxxxxxxxxxxxx
casalh. */
- return 1000;
+ return 1003;
}
}
else
@@ -604,7 +604,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x00100x111xxxxx1xxxxxxxxxxxxxxx
casal. */
- return 1003;
+ return 1006;
}
}
}
@@ -617,7 +617,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x010100x11xxxxxxxxxxxxxxxxxxxxxx
ldp. */
- return 965;
+ return 968;
}
else
{
@@ -625,7 +625,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
x110100x11xxxxxxxxxxxxxxxxxxxxxx
ldpsw. */
- return 968;
+ return 971;
}
}
}
@@ -643,7 +643,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
0x011000xxxxxxxxxxxxxxxxxxxxxxxx
ldr. */
- return 969;
+ return 972;
}
else
{
@@ -653,7 +653,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
10011000xxxxxxxxxxxxxxxxxxxxxxxx
ldrsw. */
- return 971;
+ return 974;
}
else
{
@@ -661,7 +661,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
11011000xxxxxxxxxxxxxxxxxxxxxxxx
prfm. */
- return 972;
+ return 975;
}
}
}
@@ -685,7 +685,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000000xxxxxxxxx00xxxxxxxxxx
sturb. */
- return 910;
+ return 913;
}
else
{
@@ -693,7 +693,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000000xxxxxxxxx00xxxxxxxxxx
sturh. */
- return 915;
+ return 918;
}
}
else
@@ -702,7 +702,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000000xxxxxxxxx00xxxxxxxxxx
stur. */
- return 918;
+ return 921;
}
}
else
@@ -715,7 +715,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000010xxxxxxxxx00xxxxxxxxxx
ldurb. */
- return 911;
+ return 914;
}
else
{
@@ -723,7 +723,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000010xxxxxxxxx00xxxxxxxxxx
ldurh. */
- return 916;
+ return 919;
}
}
else
@@ -732,7 +732,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000010xxxxxxxxx00xxxxxxxxxx
ldur. */
- return 919;
+ return 922;
}
}
}
@@ -746,7 +746,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
001110001x0xxxxxxxxx00xxxxxxxxxx
ldursb. */
- return 912;
+ return 915;
}
else
{
@@ -754,7 +754,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
101110001x0xxxxxxxxx00xxxxxxxxxx
ldursw. */
- return 920;
+ return 923;
}
}
else
@@ -765,7 +765,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
011110001x0xxxxxxxxx00xxxxxxxxxx
ldursh. */
- return 917;
+ return 920;
}
else
{
@@ -773,7 +773,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
111110001x0xxxxxxxxx00xxxxxxxxxx
prfum. */
- return 921;
+ return 924;
}
}
}
@@ -800,7 +800,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000001xxxxx000000xxxxxxxxxx
ldaddb. */
- return 1020;
+ return 1023;
}
else
{
@@ -808,7 +808,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000001xxxxx000000xxxxxxxxxx
ldaddh. */
- return 1021;
+ return 1024;
}
}
else
@@ -817,7 +817,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000001xxxxx000000xxxxxxxxxx
ldadd. */
- return 1022;
+ return 1025;
}
}
else
@@ -830,7 +830,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000101xxxxx000000xxxxxxxxxx
ldaddab. */
- return 1023;
+ return 1026;
}
else
{
@@ -838,7 +838,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000101xxxxx000000xxxxxxxxxx
ldaddah. */
- return 1026;
+ return 1029;
}
}
else
@@ -847,7 +847,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000101xxxxx000000xxxxxxxxxx
ldadda. */
- return 1029;
+ return 1032;
}
}
}
@@ -863,7 +863,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000011xxxxx000000xxxxxxxxxx
ldaddlb. */
- return 1024;
+ return 1027;
}
else
{
@@ -871,7 +871,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000011xxxxx000000xxxxxxxxxx
ldaddlh. */
- return 1027;
+ return 1030;
}
}
else
@@ -880,7 +880,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000011xxxxx000000xxxxxxxxxx
ldaddl. */
- return 1030;
+ return 1033;
}
}
else
@@ -893,7 +893,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000111xxxxx000000xxxxxxxxxx
ldaddalb. */
- return 1025;
+ return 1028;
}
else
{
@@ -901,7 +901,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000111xxxxx000000xxxxxxxxxx
ldaddalh. */
- return 1028;
+ return 1031;
}
}
else
@@ -910,7 +910,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000111xxxxx000000xxxxxxxxxx
ldaddal. */
- return 1031;
+ return 1034;
}
}
}
@@ -929,7 +929,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000001xxxxx100000xxxxxxxxxx
swpb. */
- return 1008;
+ return 1011;
}
else
{
@@ -937,7 +937,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000001xxxxx100000xxxxxxxxxx
swph. */
- return 1009;
+ return 1012;
}
}
else
@@ -946,7 +946,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000001xxxxx100000xxxxxxxxxx
swp. */
- return 1010;
+ return 1013;
}
}
else
@@ -959,7 +959,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000101xxxxx100000xxxxxxxxxx
swpab. */
- return 1011;
+ return 1014;
}
else
{
@@ -967,7 +967,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000101xxxxx100000xxxxxxxxxx
swpah. */
- return 1014;
+ return 1017;
}
}
else
@@ -976,7 +976,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000101xxxxx100000xxxxxxxxxx
swpa. */
- return 1017;
+ return 1020;
}
}
}
@@ -992,7 +992,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000011xxxxx100000xxxxxxxxxx
swplb. */
- return 1012;
+ return 1015;
}
else
{
@@ -1000,7 +1000,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000011xxxxx100000xxxxxxxxxx
swplh. */
- return 1015;
+ return 1018;
}
}
else
@@ -1009,7 +1009,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000011xxxxx100000xxxxxxxxxx
swpl. */
- return 1018;
+ return 1021;
}
}
else
@@ -1022,7 +1022,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000111xxxxx100000xxxxxxxxxx
swpalb. */
- return 1013;
+ return 1016;
}
else
{
@@ -1030,7 +1030,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000111xxxxx100000xxxxxxxxxx
swpalh. */
- return 1016;
+ return 1019;
}
}
else
@@ -1039,7 +1039,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000111xxxxx100000xxxxxxxxxx
swpal. */
- return 1019;
+ return 1022;
}
}
}
@@ -1061,7 +1061,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000001xxxxx010000xxxxxxxxxx
ldsmaxb. */
- return 1068;
+ return 1071;
}
else
{
@@ -1069,7 +1069,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000001xxxxx010000xxxxxxxxxx
ldsmaxh. */
- return 1069;
+ return 1072;
}
}
else
@@ -1078,7 +1078,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000001xxxxx010000xxxxxxxxxx
ldsmax. */
- return 1070;
+ return 1073;
}
}
else
@@ -1091,7 +1091,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000101xxxxx010000xxxxxxxxxx
ldsmaxab. */
- return 1071;
+ return 1074;
}
else
{
@@ -1099,7 +1099,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000101xxxxx010000xxxxxxxxxx
ldsmaxah. */
- return 1074;
+ return 1077;
}
}
else
@@ -1108,7 +1108,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000101xxxxx010000xxxxxxxxxx
ldsmaxa. */
- return 1077;
+ return 1080;
}
}
}
@@ -1124,7 +1124,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000011xxxxx010000xxxxxxxxxx
ldsmaxlb. */
- return 1072;
+ return 1075;
}
else
{
@@ -1132,7 +1132,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000011xxxxx010000xxxxxxxxxx
ldsmaxlh. */
- return 1075;
+ return 1078;
}
}
else
@@ -1141,7 +1141,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000011xxxxx010000xxxxxxxxxx
ldsmaxl. */
- return 1078;
+ return 1081;
}
}
else
@@ -1154,7 +1154,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000111xxxxx010000xxxxxxxxxx
ldsmaxalb. */
- return 1073;
+ return 1076;
}
else
{
@@ -1162,7 +1162,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000111xxxxx010000xxxxxxxxxx
ldsmaxalh. */
- return 1076;
+ return 1079;
}
}
else
@@ -1171,7 +1171,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000111xxxxx010000xxxxxxxxxx
ldsmaxal. */
- return 1079;
+ return 1082;
}
}
}
@@ -1186,7 +1186,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000xx1xxxxx110000xxxxxxxxxx
ldaprb. */
- return 946;
+ return 949;
}
else
{
@@ -1194,7 +1194,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000xx1xxxxx110000xxxxxxxxxx
ldaprh. */
- return 947;
+ return 950;
}
}
else
@@ -1203,7 +1203,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000xx1xxxxx110000xxxxxxxxxx
ldapr. */
- return 948;
+ return 951;
}
}
}
@@ -1224,7 +1224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000001xxxxxx01000xxxxxxxxxx
ldeorb. */
- return 1044;
+ return 1047;
}
else
{
@@ -1232,7 +1232,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000001xxxxxx01000xxxxxxxxxx
ldeorh. */
- return 1045;
+ return 1048;
}
}
else
@@ -1241,7 +1241,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000001xxxxxx01000xxxxxxxxxx
ldeor. */
- return 1046;
+ return 1049;
}
}
else
@@ -1254,7 +1254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000101xxxxxx01000xxxxxxxxxx
ldeorab. */
- return 1047;
+ return 1050;
}
else
{
@@ -1262,7 +1262,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000101xxxxxx01000xxxxxxxxxx
ldeorah. */
- return 1050;
+ return 1053;
}
}
else
@@ -1271,7 +1271,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000101xxxxxx01000xxxxxxxxxx
ldeora. */
- return 1053;
+ return 1056;
}
}
}
@@ -1287,7 +1287,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000011xxxxxx01000xxxxxxxxxx
ldeorlb. */
- return 1048;
+ return 1051;
}
else
{
@@ -1295,7 +1295,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000011xxxxxx01000xxxxxxxxxx
ldeorlh. */
- return 1051;
+ return 1054;
}
}
else
@@ -1304,7 +1304,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000011xxxxxx01000xxxxxxxxxx
ldeorl. */
- return 1054;
+ return 1057;
}
}
else
@@ -1317,7 +1317,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000111xxxxxx01000xxxxxxxxxx
ldeoralb. */
- return 1049;
+ return 1052;
}
else
{
@@ -1325,7 +1325,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000111xxxxxx01000xxxxxxxxxx
ldeoralh. */
- return 1052;
+ return 1055;
}
}
else
@@ -1334,7 +1334,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000111xxxxxx01000xxxxxxxxxx
ldeoral. */
- return 1055;
+ return 1058;
}
}
}
@@ -1353,7 +1353,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000001xxxxxx11000xxxxxxxxxx
ldumaxb. */
- return 1092;
+ return 1095;
}
else
{
@@ -1361,7 +1361,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
01111000001xxxxxx11000xxxxxxxxxx
ldumaxh. */
- return 1093;
+ return 1096;
}
}
else
@@ -1370,7 +1370,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
1x111000001xxxxxx11000xxxxxxxxxx
ldumax. */
- return 1094;
+ return 1097;
}
}
else
@@ -1383,7 +1383,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
10987654321098765432109876543210
00111000101xxxxxx11000xxxxxxxxxx
ldumaxab. */
- return 1095;
+ return 1098;
}
else
{
@@ -1391[...]
[diff truncated at 100000 bytes]