[binutils-gdb] aarch64: Support for FEAT_PCDPHINT

Ezra Sitorus ezrasitorus@sourceware.org
Fri Jul 11 11:54:57 GMT 2025


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b80240ecba669312b184208c894cfbb2b99d5af9

commit b80240ecba669312b184208c894cfbb2b99d5af9
Author: Ezra Sitorus <ezra.sitorus@arm.com>
Date:   Mon Jul 7 15:10:00 2025 +0100

    aarch64: Support for FEAT_PCDPHINT
    
    FEAT_PCDPHINT - Producer-consumer data placement hints - is an optional
    ISA extension that provides hint instructions to indicate:
    - a store in the current execution thread is generating data at a specific
    location, which a thread of execution on one or more other observers is
    waiting on.
    - the thread of execution on the current PE will read a location that may not
    yet have been written with the value to be consumed.
    
    This extension introduces:
    - STSHH, a hint instruction, with operands (policies) keep and strm
    - PRFM *IR*, a new prefetch memory operand.

Diff:
---
 gas/config/tc-aarch64.c                  |   22 +-
 gas/testsuite/gas/aarch64/pcdphint-bad.d |    4 +
 gas/testsuite/gas/aarch64/pcdphint-bad.l |    9 +
 gas/testsuite/gas/aarch64/pcdphint-bad.s |    9 +
 gas/testsuite/gas/aarch64/stshh.d        |   10 +
 gas/testsuite/gas/aarch64/stshh.s        |    3 +
 gas/testsuite/gas/aarch64/system.d       |    6 +-
 include/opcode/aarch64.h                 |    3 +
 opcodes/aarch64-asm-2.c                  |  476 +--
 opcodes/aarch64-dis-2.c                  | 5246 +++++++++++++++---------------
 opcodes/aarch64-opc-2.c                  |   17 +-
 opcodes/aarch64-opc.c                    |   17 +-
 opcodes/aarch64-tbl.h                    |    3 +
 13 files changed, 2949 insertions(+), 2876 deletions(-)

diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index 3dfb0774cdd..0a55adc2dd6 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -4607,7 +4607,9 @@ parse_hint_opt (const char *name, char **str,
 	  && o->value != HINT_OPD_CSYNC)
       || ((strcmp ("bti", name) == 0)
 	  && (o->value != HINT_OPD_C && o->value != HINT_OPD_J
-	      && o->value != HINT_OPD_JC)))
+	      && o->value != HINT_OPD_JC))
+      || ((strcmp ("stshh", name) == 0)
+	  && (o->value != HINT_OPD_KEEP && o->value != HINT_OPD_STRM)))
       return false;
 
   *str = q;
@@ -8106,9 +8108,18 @@ parse_operands (char *str, const aarch64_opcode *opcode)
 
 	case AARCH64_OPND_PRFOP:
 	  val = parse_pldop (&str);
+
+	  if (opcode->iclass != ldst_pos && val == 0x18)
+	    {
+	      set_syntax_error (_("invalid prefetch operation (IR is not valid for"
+	                          " this instruction variant)"));
+	      goto failure;
+	    }
+
 	  /* This is an extension to accept a 0..31 immediate.  */
 	  if (val == PARSE_FAIL)
 	    po_imm_or_fail (0, 31);
+
 	  inst.base.operands[i].prfop = aarch64_prfops + val;
 	  break;
 
@@ -8188,6 +8199,11 @@ parse_operands (char *str, const aarch64_opcode *opcode)
 	    goto failure;
 	  break;
 
+	case AARCH64_OPND_STSHH_POLICY:
+	  if (!parse_hint_opt (opcode->name, &str, &(info->hint_option)))
+	    goto failure;
+	  break;
+
 	case AARCH64_OPND_SME_ZAda_1b:
 	case AARCH64_OPND_SME_ZAda_2b:
 	case AARCH64_OPND_SME_ZAda_3b:
@@ -9347,6 +9363,10 @@ try_to_encode_as_unscaled_ldst (aarch64_inst *instr)
   if (new_op == OP_NIL)
     return false;
 
+  if ((instr->opcode->op == OP_PRFM_POS)
+	       && (instr->operands[0].prfop->value == 0x18))
+	return false;
+
   new_opcode = aarch64_get_opcode (new_op);
   gas_assert (new_opcode != NULL);
 
diff --git a/gas/testsuite/gas/aarch64/pcdphint-bad.d b/gas/testsuite/gas/aarch64/pcdphint-bad.d
new file mode 100644
index 00000000000..33373b45356
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/pcdphint-bad.d
@@ -0,0 +1,4 @@
+#name: Negative test of PCPHINT instructions.
+#as: -march=armv8-a
+#source: pcdphint-bad.s
+#error_output: pcdphint-bad.l
diff --git a/gas/testsuite/gas/aarch64/pcdphint-bad.l b/gas/testsuite/gas/aarch64/pcdphint-bad.l
new file mode 100644
index 00000000000..e57774eb2a1
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/pcdphint-bad.l
@@ -0,0 +1,9 @@
+[^ :]+: Assembler messages:
+[^ :]+:[0-9]+: Error: operand 1 must be an STSHH policy \(keep/strm\) -- `stshh kee'
+[^ :]+:[0-9]+: Error: operand 1 must be an STSHH policy \(keep/strm\) -- `stshh strmm'
+[^ :]+:[0-9]+: Error: operand 1 must be an STSHH policy \(keep/strm\) -- `stshh'
+[^ :]+:[0-9]+: Error: constant expression required at operand 1 -- `prfm ir1234'
+[^ :]+:[0-9]+: Error: invalid addressing mode at operand 2 -- `prfm ir,\[sp,x0,lsl#0\]'
+[^ :]+:[0-9]+: Error: invalid addressing mode at operand 2 -- `prfm ir,a'
+[^ :]+:[0-9]+: Error: invalid prefetch operation \(IR is not valid for this instruction variant\) at operand 1 -- `prfum ir,\[x0\]'
+[^ :]+:[0-9]+: Error: immediate offset out of range
diff --git a/gas/testsuite/gas/aarch64/pcdphint-bad.s b/gas/testsuite/gas/aarch64/pcdphint-bad.s
new file mode 100644
index 00000000000..f49652217bb
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/pcdphint-bad.s
@@ -0,0 +1,9 @@
+a:
+	stshh kee
+	stshh strmm
+	stshh
+	prfm ir1234
+	prfm ir, [sp, x0, lsl #0]
+	prfm ir, a
+	prfum ir, [x0]
+	prfm ir, [x0, #15]
diff --git a/gas/testsuite/gas/aarch64/stshh.d b/gas/testsuite/gas/aarch64/stshh.d
new file mode 100644
index 00000000000..095048d143f
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/stshh.d
@@ -0,0 +1,10 @@
+#as: -march=armv8-a
+#objdump: -dr
+
+.*:     file format .*
+
+Disassembly of section \.text:
+
+0+ <.*>:
+.*:	d503261f 	stshh	keep
+.*:	d503263f 	stshh	strm
diff --git a/gas/testsuite/gas/aarch64/stshh.s b/gas/testsuite/gas/aarch64/stshh.s
new file mode 100644
index 00000000000..1e306cd1a31
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/stshh.s
@@ -0,0 +1,3 @@
+a:
+	stshh keep
+	stshh strm
diff --git a/gas/testsuite/gas/aarch64/system.d b/gas/testsuite/gas/aarch64/system.d
index 8c1a113b331..ee84793d761 100644
--- a/gas/testsuite/gas/aarch64/system.d
+++ b/gas/testsuite/gas/aarch64/system.d
@@ -66,8 +66,8 @@ Disassembly of section \.text:
 .*:	d50325bf 	hint	#0x2d
 .*:	d50325df 	hint	#0x2e
 .*:	d50325ff 	hint	#0x2f
-.*:	d503261f 	hint	#0x30
-.*:	d503263f 	hint	#0x31
+.*:	d503261f 	(hint	#0x30|stshh	keep)
+.*:	d503263f 	(hint	#0x31|stshh	strm)
 .*:	d503265f 	hint	#0x32
 .*:	d503267f 	hint	#0x33
 .*:	d503269f 	hint	#0x34
@@ -335,7 +335,7 @@ Disassembly of section \.text:
 .*:	f9800c77 	prfm	pstslcstrm, \[x3, #24\]
 .*:	d8000018 	prfm	#0x18, 0 <LABEL1>
 .*: R_AARCH64_(P32_|)LD_PREL_LO19	LABEL1
-.*:	f9800c78 	prfm	#0x18, \[x3, #24\]
+.*:	f9800c78 	prfm	ir, \[x3, #24\]
 .*:	d8000019 	prfm	#0x19, 0 <LABEL1>
 .*: R_AARCH64_(P32_|)LD_PREL_LO19	LABEL1
 .*:	f9800c79 	prfm	#0x19, \[x3, #24\]
diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h
index dab6eacb5f8..f6dc8fd2fc9 100644
--- a/include/opcode/aarch64.h
+++ b/include/opcode/aarch64.h
@@ -783,6 +783,7 @@ enum aarch64_opnd
   AARCH64_OPND_BARRIER_PSB,	/* Barrier operand for PSB.  */
   AARCH64_OPND_BARRIER_GCSB,	/* Barrier operand for GCSB.  */
   AARCH64_OPND_BTI_TARGET,	/* BTI {<target>}.  */
+  AARCH64_OPND_STSHH_POLICY,	/* STSHH {<policy>}.  */
   AARCH64_OPND_BRBOP,		/* BRB operation IALL or INJ in bit 5.  */
   AARCH64_OPND_Rt_IN_SYS_ALIASES,	/* Defaulted and omitted Rt used in SYS aliases such as brb.  */
   AARCH64_OPND_LSE128_Rt,	/* LSE128 <Xt1>.  */
@@ -1878,6 +1879,8 @@ struct aarch64_inst
 #define HINT_OPD_C	0x22
 #define HINT_OPD_J	0x24
 #define HINT_OPD_JC	0x26
+#define HINT_OPD_KEEP	0x30
+#define HINT_OPD_STRM	0x31
 #define HINT_OPD_NULL	0x00
 
 

diff --git a/opcodes/aarch64-asm-2.c b/opcodes/aarch64-asm-2.c
index 9630c04bc38..b139d7cc542 100644
--- a/opcodes/aarch64-asm-2.c
+++ b/opcodes/aarch64-asm-2.c
@@ -490,216 +490,213 @@ aarch64_find_real_opcode (const aarch64_opcode *opcode)
     case 1270:	/* movz */
       value = 1270;	/* --> movz.  */
       break;
-    case 3316:	/* clrbhb */
-    case 1351:	/* autibsp */
-    case 1350:	/* autibz */
-    case 1349:	/* autiasp */
-    case 1348:	/* autiaz */
-    case 1347:	/* pacibsp */
-    case 1346:	/* pacibz */
-    case 1345:	/* paciasp */
-    case 1344:	/* paciaz */
-    case 1323:	/* gcsb */
-    case 1303:	/* clearbhb */
-    case 1302:	/* tsb */
-    case 1301:	/* psb */
-    case 1300:	/* esb */
-    case 1299:	/* autib1716 */
-    case 1298:	/* autia1716 */
-    case 1297:	/* pacib1716 */
-    case 1296:	/* pacia1716 */
-    case 1295:	/* xpaclri */
-    case 1294:	/* dgh */
-    case 1293:	/* sevl */
-    case 1292:	/* sev */
-    case 1291:	/* wfi */
-    case 1290:	/* wfe */
-    case 1289:	/* yield */
-    case 1288:	/* bti */
-    case 1287:	/* csdb */
-    case 1286:	/* nop */
-    case 1285:	/* hint */
-      value = 1285;	/* --> hint.  */
-      break;
-    case 1309:	/* pssbb */
-    case 1308:	/* ssbb */
-    case 1307:	/* dfb */
-    case 1305:	/* dsb */
-      value = 1305;	/* --> dsb.  */
-      break;
+    case 3317:	/* clrbhb */
+    case 1352:	/* autibsp */
+    case 1351:	/* autibz */
+    case 1350:	/* autiasp */
+    case 1349:	/* autiaz */
+    case 1348:	/* pacibsp */
+    case 1347:	/* pacibz */
+    case 1346:	/* paciasp */
+    case 1345:	/* paciaz */
+    case 1324:	/* gcsb */
+    case 1304:	/* clearbhb */
+    case 1303:	/* tsb */
+    case 1302:	/* psb */
+    case 1301:	/* esb */
+    case 1300:	/* autib1716 */
+    case 1299:	/* autia1716 */
+    case 1298:	/* pacib1716 */
+    case 1297:	/* pacia1716 */
+    case 1296:	/* xpaclri */
+    case 1295:	/* dgh */
+    case 1294:	/* sevl */
+    case 1293:	/* sev */
+    case 1292:	/* wfi */
+    case 1291:	/* wfe */
+    case 1290:	/* yield */
+    case 1289:	/* bti */
+    case 1288:	/* csdb */
+    case 1287:	/* nop */
+    case 1284:	/* stshh */
+    case 1286:	/* hint */
+      value = 1286;	/* --> hint.  */
+      break;
+    case 1310:	/* pssbb */
+    case 1309:	/* ssbb */
+    case 1308:	/* dfb */
     case 1306:	/* dsb */
       value = 1306;	/* --> dsb.  */
       break;
-    case 3317:	/* trcit */
-    case 1337:	/* brb */
-    case 1336:	/* cosp */
-    case 1335:	/* cpp */
-    case 1334:	/* dvp */
-    case 1333:	/* cfp */
-    case 1329:	/* tlbi */
-    case 1328:	/* ic */
-    case 1327:	/* dc */
-    case 1326:	/* at */
-    case 1324:	/* sys */
-      value = 1324;	/* --> sys.  */
-      break;
-    case 1330:	/* tlbip */
-    case 1325:	/* sysp */
-      value = 1325;	/* --> sysp.  */
-      break;
-    case 1331:	/* wfet */
-      value = 1331;	/* --> wfet.  */
-      break;
-    case 1332:	/* wfit */
-      value = 1332;	/* --> wfit.  */
-      break;
-    case 2137:	/* bic */
-    case 1400:	/* and */
-      value = 1400;	/* --> and.  */
+    case 1307:	/* dsb */
+      value = 1307;	/* --> dsb.  */
       break;
-    case 1383:	/* mov */
-    case 1402:	/* and */
-      value = 1402;	/* --> and.  */
+    case 3318:	/* trcit */
+    case 1338:	/* brb */
+    case 1337:	/* cosp */
+    case 1336:	/* cpp */
+    case 1335:	/* dvp */
+    case 1334:	/* cfp */
+    case 1330:	/* tlbi */
+    case 1329:	/* ic */
+    case 1328:	/* dc */
+    case 1327:	/* at */
+    case 1325:	/* sys */
+      value = 1325;	/* --> sys.  */
       break;
-    case 1387:	/* movs */
-    case 1403:	/* ands */
-      value = 1403;	/* --> ands.  */
+    case 1331:	/* tlbip */
+    case 1326:	/* sysp */
+      value = 1326;	/* --> sysp.  */
       break;
-    case 2138:	/* cmple */
-    case 1438:	/* cmpge */
-      value = 1438;	/* --> cmpge.  */
+    case 1332:	/* wfet */
+      value = 1332;	/* --> wfet.  */
       break;
-    case 2141:	/* cmplt */
-    case 1441:	/* cmpgt */
-      value = 1441;	/* --> cmpgt.  */
+    case 1333:	/* wfit */
+      value = 1333;	/* --> wfit.  */
       break;
-    case 2139:	/* cmplo */
-    case 1443:	/* cmphi */
-      value = 1443;	/* --> cmphi.  */
+    case 2138:	/* bic */
+    case 1401:	/* and */
+      value = 1401;	/* --> and.  */
       break;
-    case 2140:	/* cmpls */
-    case 1446:	/* cmphs */
-      value = 1446;	/* --> cmphs.  */
+    case 1384:	/* mov */
+    case 1403:	/* and */
+      value = 1403;	/* --> and.  */
       break;
-    case 1380:	/* mov */
-    case 1468:	/* cpy */
-      value = 1468;	/* --> cpy.  */
+    case 1388:	/* movs */
+    case 1404:	/* ands */
+      value = 1404;	/* --> ands.  */
       break;
-    case 1382:	/* mov */
+    case 2139:	/* cmple */
+    case 1439:	/* cmpge */
+      value = 1439;	/* --> cmpge.  */
+      break;
+    case 2142:	/* cmplt */
+    case 1442:	/* cmpgt */
+      value = 1442;	/* --> cmpgt.  */
+      break;
+    case 2140:	/* cmplo */
+    case 1444:	/* cmphi */
+      value = 1444;	/* --> cmphi.  */
+      break;
+    case 2141:	/* cmpls */
+    case 1447:	/* cmphs */
+      value = 1447;	/* --> cmphs.  */
+      break;
+    case 1381:	/* mov */
     case 1469:	/* cpy */
       value = 1469;	/* --> cpy.  */
       break;
-    case 2148:	/* fmov */
-    case 1385:	/* mov */
+    case 1383:	/* mov */
     case 1470:	/* cpy */
       value = 1470;	/* --> cpy.  */
       break;
-    case 1374:	/* mov */
-    case 1482:	/* dup */
-      value = 1482;	/* --> dup.  */
+    case 2149:	/* fmov */
+    case 1386:	/* mov */
+    case 1471:	/* cpy */
+      value = 1471;	/* --> cpy.  */
       break;
-    case 1377:	/* mov */
-    case 1373:	/* mov */
+    case 1375:	/* mov */
     case 1483:	/* dup */
       value = 1483;	/* --> dup.  */
       break;
-    case 2147:	/* fmov */
-    case 1379:	/* mov */
+    case 1378:	/* mov */
+    case 1374:	/* mov */
     case 1484:	/* dup */
       value = 1484;	/* --> dup.  */
       break;
-    case 1378:	/* mov */
-    case 1485:	/* dupm */
-      value = 1485;	/* --> dupm.  */
+    case 2148:	/* fmov */
+    case 1380:	/* mov */
+    case 1485:	/* dup */
+      value = 1485;	/* --> dup.  */
       break;
-    case 2142:	/* eon */
-    case 1487:	/* eor */
-      value = 1487;	/* --> eor.  */
+    case 1379:	/* mov */
+    case 1486:	/* dupm */
+      value = 1486;	/* --> dupm.  */
       break;
-    case 1388:	/* not */
-    case 1489:	/* eor */
-      value = 1489;	/* --> eor.  */
+    case 2143:	/* eon */
+    case 1488:	/* eor */
+      value = 1488;	/* --> eor.  */
       break;
-    case 1389:	/* nots */
-    case 1490:	/* eors */
-      value = 1490;	/* --> eors.  */
+    case 1389:	/* not */
+    case 1490:	/* eor */
+      value = 1490;	/* --> eor.  */
       break;
-    case 2143:	/* facle */
-    case 1495:	/* facge */
-      value = 1495;	/* --> facge.  */
+    case 1390:	/* nots */
+    case 1491:	/* eors */
+      value = 1491;	/* --> eors.  */
       break;
-    case 2144:	/* faclt */
-    case 1496:	/* facgt */
-      value = 1496;	/* --> facgt.  */
+    case 2144:	/* facle */
+    case 1496:	/* facge */
+      value = 1496;	/* --> facge.  */
       break;
-    case 2145:	/* fcmle */
-    case 1509:	/* fcmge */
-      value = 1509;	/* --> fcmge.  */
+    case 2145:	/* faclt */
+    case 1497:	/* facgt */
+      value = 1497;	/* --> facgt.  */
       break;
-    case 2146:	/* fcmlt */
-    case 1511:	/* fcmgt */
-      value = 1511;	/* --> fcmgt.  */
+    case 2146:	/* fcmle */
+    case 1510:	/* fcmge */
+      value = 1510;	/* --> fcmge.  */
       break;
-    case 1371:	/* fmov */
-    case 1517:	/* fcpy */
-      value = 1517;	/* --> fcpy.  */
+    case 2147:	/* fcmlt */
+    case 1512:	/* fcmgt */
+      value = 1512;	/* --> fcmgt.  */
       break;
-    case 1370:	/* fmov */
-    case 1540:	/* fdup */
-      value = 1540;	/* --> fdup.  */
+    case 1372:	/* fmov */
+    case 1518:	/* fcpy */
+      value = 1518;	/* --> fcpy.  */
       break;
-    case 1826:	/* ldr */
-    case 1825:	/* ldr */
-      value = 1825;	/* --> ldr.  */
+    case 1371:	/* fmov */
+    case 1541:	/* fdup */
+      value = 1541;	/* --> fdup.  */
       break;
-    case 1372:	/* mov */
-    case 1856:	/* orr */
-      value = 1856;	/* --> orr.  */
+    case 1827:	/* ldr */
+    case 1826:	/* ldr */
+      value = 1826;	/* --> ldr.  */
       break;
-    case 2149:	/* orn */
+    case 1373:	/* mov */
     case 1857:	/* orr */
       value = 1857;	/* --> orr.  */
       break;
+    case 2150:	/* orn */
+    case 1858:	/* orr */
+      value = 1858;	/* --> orr.  */
+      break;
+    case 1377:	/* mov */
     case 1376:	/* mov */
-    case 1375:	/* mov */
-    case 1859:	/* orr */
-      value = 1859;	/* --> orr.  */
+    case 1860:	/* orr */
+      value = 1860;	/* --> orr.  */
       break;
-    case 1386:	/* movs */
-    case 1860:	/* orrs */
-      value = 1860;	/* --> orrs.  */
+    case 1387:	/* movs */
+    case 1861:	/* orrs */
+      value = 1861;	/* --> orrs.  */
       break;
+    case 1864:	/* pfalse */
     case 1863:	/* pfalse */
-    case 1862:	/* pfalse */
-      value = 1862;	/* --> pfalse.  */
-      break;
-    case 1381:	/* mov */
-    case 1923:	/* sel */
-      value = 1923;	/* --> sel.  */
+      value = 1863;	/* --> pfalse.  */
       break;
-    case 1384:	/* mov */
+    case 1382:	/* mov */
     case 1924:	/* sel */
       value = 1924;	/* --> sel.  */
       break;
-    case 2045:	/* str */
-    case 2044:	/* str */
-      value = 2044;	/* --> str.  */
+    case 1385:	/* mov */
+    case 1925:	/* sel */
+      value = 1925;	/* --> sel.  */
       break;
-    case 2472:	/* mov */
-    case 2474:	/* mova */
-      value = 2474;	/* --> mova.  */
+    case 2046:	/* str */
+    case 2045:	/* str */
+      value = 2045;	/* --> str.  */
       break;
     case 2473:	/* mov */
     case 2475:	/* mova */
       value = 2475;	/* --> mova.  */
       break;
-    case 2493:	/* psel */
-    case 2492:	/* psel */
-      value = 2492;	/* --> psel.  */
+    case 2474:	/* mov */
+    case 2476:	/* mova */
+      value = 2476;	/* --> mova.  */
       break;
-    case 2698:	/* mov */
-    case 2706:	/* mova */
-      value = 2706;	/* --> mova.  */
+    case 2494:	/* psel */
+    case 2493:	/* psel */
+      value = 2493;	/* --> psel.  */
       break;
     case 2699:	/* mov */
     case 2707:	/* mova */
@@ -729,6 +726,10 @@ aarch64_find_real_opcode (const aarch64_opcode *opcode)
     case 2713:	/* mova */
       value = 2713;	/* --> mova.  */
       break;
+    case 2706:	/* mov */
+    case 2714:	/* mova */
+      value = 2714;	/* --> mova.  */
+      break;
     default: return NULL;
     }
 
@@ -772,10 +773,9 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 32:
     case 33:
     case 34:
-    case 126:
     case 127:
     case 128:
-    case 191:
+    case 129:
     case 192:
     case 193:
     case 194:
@@ -789,34 +789,35 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 202:
     case 203:
     case 204:
-    case 220:
+    case 205:
     case 221:
     case 222:
     case 223:
-    case 233:
+    case 224:
     case 234:
     case 235:
     case 236:
     case 237:
-    case 248:
-    case 252:
-    case 256:
+    case 238:
+    case 249:
+    case 253:
     case 257:
-    case 265:
+    case 258:
     case 266:
     case 267:
-    case 274:
+    case 268:
     case 275:
     case 276:
     case 277:
-    case 311:
-    case 315:
+    case 278:
+    case 312:
+    case 316:
       return aarch64_ins_regno (self, info, code, inst, errors);
     case 6:
     case 122:
     case 123:
-    case 321:
-    case 324:
+    case 322:
+    case 325:
       return aarch64_ins_none (self, info, code, inst, errors);
     case 17:
       return aarch64_ins_reg_extended (self, info, code, inst, errors);
@@ -831,17 +832,16 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 37:
     case 38:
     case 39:
-    case 326:
+    case 327:
       return aarch64_ins_reglane (self, info, code, inst, errors);
     case 40:
     case 41:
     case 42:
-    case 238:
     case 239:
-    case 242:
-    case 278:
+    case 240:
+    case 243:
     case 279:
-    case 294:
+    case 280:
     case 295:
     case 296:
     case 297:
@@ -858,12 +858,13 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 308:
     case 309:
     case 310:
-    case 312:
+    case 311:
     case 313:
     case 314:
-    case 316:
+    case 315:
     case 317:
     case 318:
+    case 319:
       return aarch64_ins_simple_index (self, info, code, inst, errors);
     case 43:
       return aarch64_ins_reglist (self, info, code, inst, errors);
@@ -904,10 +905,9 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 94:
     case 95:
     case 121:
-    case 125:
-    case 188:
-    case 190:
-    case 211:
+    case 126:
+    case 189:
+    case 191:
     case 212:
     case 213:
     case 214:
@@ -916,14 +916,15 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 217:
     case 218:
     case 219:
-    case 280:
-    case 319:
+    case 220:
+    case 281:
     case 320:
-    case 322:
+    case 321:
     case 323:
-    case 325:
-    case 330:
+    case 324:
+    case 326:
     case 331:
+    case 332:
       return aarch64_ins_imm (self, info, code, inst, errors);
     case 52:
     case 53:
@@ -933,10 +934,10 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 56:
       return aarch64_ins_advsimd_imm_modified (self, info, code, inst, errors);
     case 60:
-    case 178:
+    case 179:
       return aarch64_ins_fpimm (self, info, code, inst, errors);
     case 80:
-    case 186:
+    case 187:
       return aarch64_ins_limm (self, info, code, inst, errors);
     case 81:
       return aarch64_ins_aimm (self, info, code, inst, errors);
@@ -946,11 +947,11 @@ aarch64_insert_operand (const aarch64_operand *self,
       return aarch64_ins_fbits (self, info, code, inst, errors);
     case 85:
     case 86:
-    case 183:
+    case 184:
       return aarch64_ins_imm_rotate2 (self, info, code, inst, errors);
     case 87:
-    case 182:
-    case 184:
+    case 183:
+    case 185:
       return aarch64_ins_imm_rotate1 (self, info, code, inst, errors);
     case 88:
     case 89:
@@ -994,25 +995,25 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 120:
       return aarch64_ins_prfop (self, info, code, inst, errors);
     case 124:
+    case 125:
       return aarch64_ins_hint (self, info, code, inst, errors);
-    case 129:
     case 130:
-      return aarch64_ins_sve_addr_ri_s4 (self, info, code, inst, errors);
     case 131:
+      return aarch64_ins_sve_addr_ri_s4 (self, info, code, inst, errors);
     case 132:
     case 133:
     case 134:
-      return aarch64_ins_sve_addr_ri_s4xvl (self, info, code, inst, errors);
     case 135:
-      return aarch64_ins_sve_addr_ri_s6xvl (self, info, code, inst, errors);
+      return aarch64_ins_sve_addr_ri_s4xvl (self, info, code, inst, errors);
     case 136:
-      return aarch64_ins_sve_addr_ri_s9xvl (self, info, code, inst, errors);
+      return aarch64_ins_sve_addr_ri_s6xvl (self, info, code, inst, errors);
     case 137:
+      return aarch64_ins_sve_addr_ri_s9xvl (self, info, code, inst, errors);
     case 138:
     case 139:
     case 140:
-      return aarch64_ins_sve_addr_ri_u6 (self, info, code, inst, errors);
     case 141:
+      return aarch64_ins_sve_addr_ri_u6 (self, info, code, inst, errors);
     case 142:
     case 143:
     case 144:
@@ -1032,8 +1033,8 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 158:
     case 159:
     case 160:
-      return aarch64_ins_sve_addr_rr_lsl (self, info, code, inst, errors);
     case 161:
+      return aarch64_ins_sve_addr_rr_lsl (self, info, code, inst, errors);
     case 162:
     case 163:
     case 164:
@@ -1041,115 +1042,116 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 166:
     case 167:
     case 168:
-      return aarch64_ins_sve_addr_rz_xtw (self, info, code, inst, errors);
     case 169:
+      return aarch64_ins_sve_addr_rz_xtw (self, info, code, inst, errors);
     case 170:
     case 171:
     case 172:
-      return aarch64_ins_sve_addr_zi_u5 (self, info, code, inst, errors);
     case 173:
-      return aarch64_ins_sve_addr_zz_lsl (self, info, code, inst, errors);
+      return aarch64_ins_sve_addr_zi_u5 (self, info, code, inst, errors);
     case 174:
-      return aarch64_ins_sve_addr_zz_sxtw (self, info, code, inst, errors);
+      return aarch64_ins_sve_addr_zz_lsl (self, info, code, inst, errors);
     case 175:
-      return aarch64_ins_sve_addr_zz_uxtw (self, info, code, inst, errors);
+      return aarch64_ins_sve_addr_zz_sxtw (self, info, code, inst, errors);
     case 176:
-      return aarch64_ins_sve_aimm (self, info, code, inst, errors);
+      return aarch64_ins_sve_addr_zz_uxtw (self, info, code, inst, errors);
     case 177:
+      return aarch64_ins_sve_aimm (self, info, code, inst, errors);
+    case 178:
       return aarch64_ins_sve_asimm (self, info, code, inst, errors);
-    case 179:
-      return aarch64_ins_sve_float_half_one (self, info, code, inst, errors);
     case 180:
-      return aarch64_ins_sve_float_half_two (self, info, code, inst, errors);
+      return aarch64_ins_sve_float_half_one (self, info, code, inst, errors);
     case 181:
+      return aarch64_ins_sve_float_half_two (self, info, code, inst, errors);
+    case 182:
       return aarch64_ins_sve_float_zero_one (self, info, code, inst, errors);
-    case 185:
+    case 186:
       return aarch64_ins_inv_limm (self, info, code, inst, errors);
-    case 187:
+    case 188:
       return aarch64_ins_sve_limm_mov (self, info, code, inst, errors);
-    case 189:
+    case 190:
       return aarch64_ins_sve_scale (self, info, code, inst, errors);
-    case 205:
     case 206:
     case 207:
-      return aarch64_ins_sve_shlimm (self, info, code, inst, errors);
     case 208:
+      return aarch64_ins_sve_shlimm (self, info, code, inst, errors);
     case 209:
     case 210:
-    case 293:
+    case 211:
+    case 294:
       return aarch64_ins_sve_shrimm (self, info, code, inst, errors);
-    case 224:
     case 225:
     case 226:
     case 227:
-      return aarch64_ins_sme_za_vrs1 (self, info, code, inst, errors);
     case 228:
+      return aarch64_ins_sme_za_vrs1 (self, info, code, inst, errors);
     case 229:
     case 230:
     case 231:
-      return aarch64_ins_sme_za_vrs2 (self, info, code, inst, errors);
     case 232:
+      return aarch64_ins_sme_za_vrs2 (self, info, code, inst, errors);
+    case 233:
       return aarch64_ins_sme_za_tile_to_vec (self, info, code, inst, errors);
-    case 240:
     case 241:
-    case 243:
+    case 242:
     case 244:
     case 245:
     case 246:
     case 247:
+    case 248:
       return aarch64_ins_sve_quad_index (self, info, code, inst, errors);
-    case 249:
     case 250:
-      return aarch64_ins_sve_index (self, info, code, inst, errors);
     case 251:
-    case 253:
-    case 273:
-      return aarch64_ins_sve_reglist (self, info, code, inst, errors);
+      return aarch64_ins_sve_index (self, info, code, inst, errors);
+    case 252:
     case 254:
+    case 274:
+      return aarch64_ins_sve_reglist (self, info, code, inst, errors);
     case 255:
-    case 258:
+    case 256:
     case 259:
     case 260:
     case 261:
     case 262:
-    case 272:
-      return aarch64_ins_sve_aligned_reglist (self, info, code, inst, errors);
     case 263:
+    case 273:
+      return aarch64_ins_sve_aligned_reglist (self, info, code, inst, errors);
     case 264:
+    case 265:
       return aarch64_ins_sve_strided_reglist (self, info, code, inst, errors);
-    case 268:
-    case 270:
-    case 281:
-      return aarch64_ins_sme_za_hv_tiles (self, info, code, inst, errors);
     case 269:
     case 271:
-      return aarch64_ins_sme_za_hv_tiles_range (self, info, code, inst, errors);
     case 282:
+      return aarch64_ins_sme_za_hv_tiles (self, info, code, inst, errors);
+    case 270:
+    case 272:
+      return aarch64_ins_sme_za_hv_tiles_range (self, info, code, inst, errors);
     case 283:
     case 284:
     case 285:
     case 286:
     case 287:
     case 288:
-      return aarch64_ins_sme_za_array (self, info, code, inst, errors);
     case 289:
-      return aarch64_ins_sme_addr_ri_u4xvl (self, info, code, inst, errors);
+      return aarch64_ins_sme_za_array (self, info, code, inst, errors);
     case 290:
-      return aarch64_ins_sme_sm_za (self, info, code, inst, errors);
+      return aarch64_ins_sme_addr_ri_u4xvl (self, info, code, inst, errors);
     case 291:
-      return aarch64_ins_sme_pred_reg_with_index (self, info, code, inst, errors);
+      return aarch64_ins_sme_sm_za (self, info, code, inst, errors);
     case 292:
+      return aarch64_ins_sme_pred_reg_with_index (self, info, code, inst, errors);
+    case 293:
       return aarch64_ins_plain_shrimm (self, info, code, inst, errors);
-    case 327:
     case 328:
     case 329:
+    case 330:
       return aarch64_ins_x0_to_x30 (self, info, code, inst, errors);
-    case 332:
     case 333:
     case 334:
     case 335:
-      return aarch64_ins_rcpc3_addr_opt_offset (self, info, code, inst, errors);
     case 336:
+      return aarch64_ins_rcpc3_addr_opt_offset (self, info, code, inst, errors);
+    case 337:
       return aarch64_ins_rcpc3_addr_offset (self, info, code, inst, errors);
     default: assert (0); abort ();
     }
diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c
index 1460a926824..16929d111c4 100644
--- a/opcodes/aarch64-dis-2.c
+++ b/opcodes/aarch64-dis-2.c
@@ -62,7 +62,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0000000100xxxxxxxxxxxxxxxx00xxx
                                                      fmopa.  */
-                                                  return 2449;
+                                                  return 2450;
                                                 }
                                               else
                                                 {
@@ -70,7 +70,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0000000100xxxxxxxxxxxxxxxx10xxx
                                                      fmops.  */
-                                                  return 2452;
+                                                  return 2453;
                                                 }
                                             }
                                           else
@@ -81,7 +81,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0000000100xxxxxxxxxxxxxxxx01xxx
                                                      bmopa.  */
-                                                  return 2553;
+                                                  return 2554;
                                                 }
                                               else
                                                 {
@@ -89,7 +89,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0000000100xxxxxxxxxxxxxxxx11xxx
                                                      bmops.  */
-                                                  return 2554;
+                                                  return 2555;
                                                 }
                                             }
                                         }
@@ -102,7 +102,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              x0000000x10xxxxxxxxxxxxxxxx0xxxx
                                              fmopa.  */
-                                          return 2450;
+                                          return 2451;
                                         }
                                       else
                                         {
@@ -110,7 +110,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              x0000000x10xxxxxxxxxxxxxxxx1xxxx
                                              fmops.  */
-                                          return 2453;
+                                          return 2454;
                                         }
                                     }
                                 }
@@ -128,7 +128,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx00000xxxxxxxxxxxxxxxxx
                                                      mova.  */
-                                                  return 2475;
+                                                  return 2476;
                                                 }
                                               else
                                                 {
@@ -140,7 +140,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x0010000xxxxxxxxxxxxxxxx
                                                              addha.  */
-                                                          return 2441;
+                                                          return 2442;
                                                         }
                                                       else
                                                         {
@@ -148,7 +148,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x1010000xxxxxxxxxxxxxxxx
                                                              addha.  */
-                                                          return 2442;
+                                                          return 2443;
                                                         }
                                                     }
                                                   else
@@ -159,7 +159,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x0010001xxxxxxxxxxxxxxxx
                                                              addva.  */
-                                                          return 2445;
+                                                          return 2446;
                                                         }
                                                       else
                                                         {
@@ -167,7 +167,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x1010001xxxxxxxxxxxxxxxx
                                                              addva.  */
-                                                          return 2446;
+                                                          return 2447;
                                                         }
                                                     }
                                                 }
@@ -180,7 +180,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000x00x100xxxxxxxxxxxxxxxxx
                                                      zero.  */
-                                                  return 2476;
+                                                  return 2477;
                                                 }
                                               else
                                                 {
@@ -188,7 +188,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000x10x100xxxxxxxxxxxxxxxxx
                                                      zero.  */
-                                                  return 2983;
+                                                  return 2984;
                                                 }
                                             }
                                         }
@@ -202,7 +202,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0x001xxxxxxx0xxxxxxxxx
                                                      mova.  */
-                                                  return 2474;
+                                                  return 2475;
                                                 }
                                               else
                                                 {
@@ -216,7 +216,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000000x0010xxxxxx1xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3448;
+                                                              return 3449;
                                                             }
                                                           else
                                                             {
@@ -224,7 +224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000100x0010xxxxxx1xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3450;
+                                                              return 3451;
                                                             }
                                                         }
                                                       else
@@ -235,7 +235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000010x0010xxxxxx1xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3449;
+                                                              return 3450;
                                                             }
                                                           else
                                                             {
@@ -243,7 +243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000110x0010xxxxxx1xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3451;
+                                                              return 3452;
                                                             }
                                                         }
                                                     }
@@ -253,7 +253,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0x0011xxxxxx1xxxxxxxxx
                                                          movaz.  */
-                                                      return 3452;
+                                                      return 3453;
                                                     }
                                                 }
                                             }
@@ -271,7 +271,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000x000101x00xxxxxxxxxxxxxx
                                                                  luti4.  */
-                                                              return 3588;
+                                                              return 3589;
                                                             }
                                                           else
                                                             {
@@ -279,7 +279,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000x000101x10xxxxxxxxxxxxxx
                                                                  luti4.  */
-                                                              return 2697;
+                                                              return 2698;
                                                             }
                                                         }
                                                       else
@@ -288,7 +288,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x000101xx1xxxxxxxxxxxxxx
                                                              luti4.  */
-                                                          return 2696;
+                                                          return 2697;
                                                         }
                                                     }
                                                   else
@@ -297,7 +297,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000x100101xxxxxxxxxxxxxxxxx
                                                          luti4.  */
-                                                      return 2695;
+                                                      return 2696;
                                                     }
                                                 }
                                               else
@@ -310,7 +310,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000xx01101x00xxxxxxxxxxxxxx
                                                              luti4.  */
-                                                          return 3589;
+                                                          return 3590;
                                                         }
                                                       else
                                                         {
@@ -318,7 +318,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000xx01101x10xxxxxxxxxxxxxx
                                                              luti4.  */
-                                                          return 3445;
+                                                          return 3446;
                                                         }
                                                     }
                                                   else
@@ -327,7 +327,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx01101xx1xxxxxxxxxxxxxx
                                                          luti4.  */
-                                                      return 3444;
+                                                      return 3445;
                                                     }
                                                 }
                                             }
@@ -347,7 +347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0x010xxxxx00xxxxxxxxxx
                                                          mova.  */
-                                                      return 2712;
+                                                      return 2713;
                                                     }
                                                   else
                                                     {
@@ -357,7 +357,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000xx0x011xxxxx000xxxxxxxxx
                                                              mova.  */
-                                                          return 2708;
+                                                          return 2709;
                                                         }
                                                       else
                                                         {
@@ -369,7 +369,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000000x011xxxxx001xxxxxxxxx
                                                                      movaz.  */
-                                                                  return 3438;
+                                                                  return 3439;
                                                                 }
                                                               else
                                                                 {
@@ -377,7 +377,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000100x011xxxxx001xxxxxxxxx
                                                                      movaz.  */
-                                                                  return 3440;
+                                                                  return 3441;
                                                                 }
                                                             }
                                                           else
@@ -388,7 +388,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000010x011xxxxx001xxxxxxxxx
                                                                      movaz.  */
-                                                                  return 3439;
+                                                                  return 3440;
                                                                 }
                                                               else
                                                                 {
@@ -396,7 +396,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000110x011xxxxx001xxxxxxxxx
                                                                      movaz.  */
-                                                                  return 3441;
+                                                                  return 3442;
                                                                 }
                                                             }
                                                         }
@@ -420,7 +420,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011000xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3453;
+                                                                          return 3454;
                                                                         }
                                                                       else
                                                                         {
@@ -428,7 +428,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011100xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3454;
+                                                                          return 3455;
                                                                         }
                                                                     }
                                                                   else
@@ -439,7 +439,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011010xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3456;
+                                                                          return 3457;
                                                                         }
                                                                       else
                                                                         {
@@ -447,7 +447,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011110xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3459;
+                                                                          return 3460;
                                                                         }
                                                                     }
                                                                 }
@@ -461,7 +461,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011001xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3455;
+                                                                          return 3456;
                                                                         }
                                                                       else
                                                                         {
@@ -469,7 +469,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011101xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3458;
+                                                                          return 3459;
                                                                         }
                                                                     }
                                                                   else
@@ -480,7 +480,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011011xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3457;
+                                                                          return 3458;
                                                                         }
                                                                       else
                                                                         {
@@ -488,7 +488,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000000000011111xxx00xxxxxxxxxx
                                                                              zero.  */
-                                                                          return 3460;
+                                                                          return 3461;
                                                                         }
                                                                     }
                                                                 }
@@ -501,7 +501,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000100011xxx0xx00xxxxxxxxxx
                                                                      luti2.  */
-                                                                  return 2694;
+                                                                  return 2695;
                                                                 }
                                                               else
                                                                 {
@@ -509,7 +509,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000100011xxx1xx00xxxxxxxxxx
                                                                      luti2.  */
-                                                                  return 2693;
+                                                                  return 2694;
                                                                 }
                                                             }
                                                         }
@@ -525,7 +525,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x100000001001100xxxx00xxxxxxxxxx
                                                                          movt.  */
-                                                                      return 2715;
+                                                                      return 2716;
                                                                     }
                                                                   else
                                                                     {
@@ -533,7 +533,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x100000001001110xxxx00xxxxxxxxxx
                                                                          movt.  */
-                                                                      return 2714;
+                                                                      return 2715;
                                                                     }
                                                                 }
                                                               else
@@ -542,7 +542,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000000010011x1xxxx00xxxxxxxxxx
                                                                      movt.  */
-                                                                  return 3590;
+                                                                  return 3591;
                                                                 }
                                                             }
                                                           else
@@ -551,7 +551,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000110011xxxxxx00xxxxxxxxxx
                                                                  luti2.  */
-                                                              return 2692;
+                                                              return 2693;
                                                             }
                                                         }
                                                     }
@@ -563,7 +563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000xx0111xxx0xx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 3443;
+                                                          return 3444;
                                                         }
                                                       else
                                                         {
@@ -571,7 +571,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000xx0111xxx1xx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 3442;
+                                                          return 3443;
                                                         }
                                                     }
                                                 }
@@ -584,7 +584,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx10xxxxxxxxxx
                                                      mova.  */
-                                                  return 2710;
+                                                  return 2711;
                                                 }
                                               else
                                                 {
@@ -594,7 +594,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0xx11xxxxx100xxxxxxxxx
                                                          mova.  */
-                                                      return 2706;
+                                                      return 2707;
                                                     }
                                                   else
                                                     {
@@ -602,7 +602,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0xx11xxxxx101xxxxxxxxx
                                                          movaz.  */
-                                                      return 3446;
+                                                      return 3447;
                                                     }
                                                 }
                                             }
@@ -617,7 +617,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx01xxxxxxxxxx
                                                      mova.  */
-                                                  return 2713;
+                                                  return 2714;
                                                 }
                                               else
                                                 {
@@ -627,7 +627,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0xx11xxxxx010xxxxxxxxx
                                                          mova.  */
-                                                      return 2709;
+                                                      return 2710;
                                                     }
                                                   else
                                                     {
@@ -639,7 +639,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000000xx11xxxxx011xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3434;
+                                                              return 3435;
                                                             }
                                                           else
                                                             {
@@ -647,7 +647,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000100xx11xxxxx011xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3436;
+                                                              return 3437;
                                                             }
                                                         }
                                                       else
@@ -658,7 +658,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000010xx11xxxxx011xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3435;
+                                                              return 3436;
                                                             }
                                                           else
                                                             {
@@ -666,7 +666,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000110xx11xxxxx011xxxxxxxxx
                                                                  movaz.  */
-                                                              return 3437;
+                                                              return 3438;
                                                             }
                                                         }
                                                     }
@@ -680,7 +680,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx11xxxxxxxxxx
                                                      mova.  */
-                                                  return 2711;
+                                                  return 2712;
                                                 }
                                               else
                                                 {
@@ -690,7 +690,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0xx11xxxxx110xxxxxxxxx
                                                          mova.  */
-                                                      return 2707;
+                                                      return 2708;
                                                     }
                                                   else
                                                     {
@@ -698,7 +698,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0xx11xxxxx111xxxxxxxxx
                                                          movaz.  */
-                                                      return 3447;
+                                                      return 3448;
                                                     }
                                                 }
                                             }
@@ -726,7 +726,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx000xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2631;
+                                                          return 2632;
                                                         }
                                                       else
                                                         {
@@ -734,7 +734,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx100xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2632;
+                                                          return 2633;
                                                         }
                                                     }
                                                   else
@@ -745,7 +745,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx010xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2655;
+                                                          return 2656;
                                                         }
                                                       else
                                                         {
@@ -753,7 +753,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx110xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2656;
+                                                          return 2657;
                                                         }
                                                     }
                                                 }
@@ -767,7 +767,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx001xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2647;
+                                                          return 2648;
                                                         }
                                                       else
                                                         {
@@ -775,7 +775,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx101xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2648;
+                                                          return 2649;
                                                         }
                                                     }
                                                   else
@@ -786,7 +786,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx011xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2639;
+                                                          return 2640;
                                                         }
                                                       else
                                                         {
@@ -794,7 +794,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx111xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2640;
+                                                          return 2641;
                                                         }
                                                     }
                                                 }
@@ -811,7 +811,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx000xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2663;
+                                                          return 2664;
                                                         }
                                                       else
                                                         {
@@ -819,7 +819,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx100xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2664;
+                                                          return 2665;
                                                         }
                                                     }
                                                   else
@@ -830,7 +830,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx010xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2687;
+                                                          return 2688;
                                                         }
                                                       else
                                                         {
@@ -838,7 +838,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx110xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2688;
+                                                          return 2689;
                                                         }
                                                     }
                                                 }
@@ -852,7 +852,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx001xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2679;
+                                                          return 2680;
                                                         }
                                                       else
                                                         {
@@ -860,7 +860,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx101xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2680;
+                                                          return 2681;
                                                         }
                                                     }
                                                   else
@@ -871,7 +871,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx011xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2671;
+                                                          return 2672;
                                                         }
                                                       else
                                                         {
@@ -879,7 +879,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx111xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2672;
+                                                          return 2673;
                                                         }
                                                     }
                                                 }
@@ -891,7 +891,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              x1100000000xxxxxxxxxxxxxxxxxxxxx
                                              ld1b.  */
-                                          return 2477;
+                                          return 2478;
                                         }
                                     }
                                   else
@@ -906,7 +906,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0100000100xxxxxxxxxxxxxxxx00xxx
                                                      smopa.  */
-                                                  return 2456;
+                                                  return 2457;
                                                 }
                                               else
                                                 {
@@ -914,7 +914,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0100000100xxxxxxxxxxxxxxxx01xxx
                                                      smopa.  */
-                                                  return 2777;
+                                                  return 2778;
                                                 }
                                             }
                                           else
@@ -923,7 +923,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x1100000100xxxxxxxxxxxxxxxx0xxxx
                                                  ld1w.  */
-                                              return 2479;
+                                              return 2480;
                                             }
                                         }
                                       else
@@ -934,7 +934,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100000100xxxxxxxxxxxxxxxx10xxx
                                                  smops.  */
-                                              return 2458;
+                                              return 2459;
                                             }
                                           else
                                             {
@@ -942,7 +942,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100000100xxxxxxxxxxxxxxxx11xxx
                                                  smops.  */
-                                              return 2778;
+                                              return 2779;
                                             }
                                         }
                                     }
@@ -965,7 +965,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx000xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2627;
+                                                          return 2628;
                                                         }
                                                       else
                                                         {
@@ -973,7 +973,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx100xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2628;
+                                                          return 2629;
                                                         }
                                                     }
                                                   else
@@ -984,7 +984,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx010xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2651;
+                                                          return 2652;
                                                         }
                                                       else
                                                         {
@@ -992,7 +992,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx110xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2652;
+                                                          return 2653;
                                                         }
                                                     }
                                                 }
@@ -1006,7 +1006,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx001xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2643;
+                                                          return 2644;
                                                         }
                                                       else
                                                         {
@@ -1014,7 +1014,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx101xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2644;
+                                                          return 2645;
                                                         }
                                                     }
                                                   else
@@ -1025,7 +1025,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx011xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2635;
+                                                          return 2636;
                                                         }
                                                       else
                                                         {
@@ -1033,7 +1033,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx111xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2636;
+                                                          return 2637;
                                                         }
                                                     }
                                                 }
@@ -1050,7 +1050,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx000xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2659;
+                                                          return 2660;
                                                         }
                                                       else
                                                         {
@@ -1058,7 +1058,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx100xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2660;
+                                                          return 2661;
                                                         }
                                                     }
                                                   else
@@ -1069,7 +1069,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx010xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2683;
+                                                          return 2684;
                                                         }
                                                       else
                                                         {
@@ -1077,7 +1077,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx110xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2684;
+                                                          return 2685;
                                                         }
                                                     }
                                                 }
@@ -1091,7 +1091,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx001xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2675;
+                                                          return 2676;
                                                         }
                                                       else
                                                         {
@@ -1099,7 +1099,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx101xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2676;
+                                                          return 2677;
                                                         }
                                                     }
                                                   else
@@ -1110,7 +1110,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx011xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2667;
+                                                          return 2668;
                                                         }
                                                       else
                                                         {
@@ -1118,7 +1118,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx111xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2668;
+                                                          return 2669;
                                                         }
                                                     }
                                                 }
@@ -1130,7 +1130,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              x1100000010xxxxxxxxxxxxxxxxxxxxx
                                              ld1h.  */
-                                          return 2478;
+                                          return 2479;
                                         }
                                     }
                                   else
@@ -1143,7 +1143,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x0100000110xxxxxxxxxxxxxxxx0xxxx
                                                  smopa.  */
-                                              return 2457;
+                                              return 2458;
                                             }
                                           else
                                             {
@@ -1151,7 +1151,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x1100000110xxxxxxxxxxxxxxxx0xxxx
                                                  ld1d.  */
-                                              return 2480;
+                                              return 2481;
                                             }
                                         }
                                       else
@@ -1160,7 +1160,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              xx100000110xxxxxxxxxxxxxxxx1xxxx
                                              smops.  */
-                                          return 2459;
+                                          return 2460;
                                         }
                                     }
                                 }
@@ -1186,7 +1186,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx000xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2803;
+                                                      return 2804;
                                                     }
                                                   else
                                                     {
@@ -1194,7 +1194,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx100xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2804;
+                                                      return 2805;
                                                     }
                                                 }
                                               else
@@ -1205,7 +1205,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx010xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2827;
+                                                      return 2828;
                                                     }
                                                   else
                                                     {
@@ -1213,7 +1213,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx110xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2828;
+                                                      return 2829;
                                                     }
                                                 }
                                             }
@@ -1227,7 +1227,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx001xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2819;
+                                                      return 2820;
                                                     }
                                                   else
                                                     {
@@ -1235,7 +1235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx101xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2820;
+                                                      return 2821;
                                                     }
                                                 }
                                               else
@@ -1246,7 +1246,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx011xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2811;
+                                                      return 2812;
                                                     }
                                                   else
                                                     {
@@ -1254,7 +1254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx111xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2812;
+                                                      return 2813;
                                                     }
                                                 }
                                             }
@@ -1271,7 +1271,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx000xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2835;
+                                                      return 2836;
                                                     }
                                                   else
                                                     {
@@ -1279,7 +1279,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx100xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2836;
+                                                      return 2837;
                                                     }
                                                 }
                                               else
@@ -1290,7 +1290,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx010xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2859;
+                                                      return 2860;
                                                     }
                                  [...]

[diff truncated at 100000 bytes]


More information about the Binutils-cvs mailing list