public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Richard Sandiford <richard.sandiford@arm.com>
To: binutils@sourceware.org
Cc: Richard Sandiford <richard.sandiford@arm.com>
Subject: [PATCH 29/31] aarch64: Add new SVE shift instructions
Date: Thu, 30 Mar 2023 11:26:44 +0100	[thread overview]
Message-ID: <20230330102646.3327818-30-richard.sandiford@arm.com> (raw)
In-Reply-To: <20230330102646.3327818-1-richard.sandiford@arm.com>

This patch adds the new SVE SQRSHRN, SQRSHRUN and UQRSHRN
instructions.
---
 .../gas/aarch64/sve2-sme2-6-invalid.d         |    3 +
 .../gas/aarch64/sve2-sme2-6-invalid.l         |   20 +
 .../gas/aarch64/sve2-sme2-6-invalid.s         |   14 +
 .../gas/aarch64/sve2-sme2-6-noarch.d          |    3 +
 .../gas/aarch64/sve2-sme2-6-noarch.l          |   16 +
 gas/testsuite/gas/aarch64/sve2-sme2-6.d       |   24 +
 gas/testsuite/gas/aarch64/sve2-sme2-6.s       |   17 +
 opcodes/aarch64-dis-2.c                       | 1779 +++++++++--------
 opcodes/aarch64-tbl.h                         |    3 +
 9 files changed, 1006 insertions(+), 873 deletions(-)
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.d
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.l
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.s
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.d
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.l
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6.d
 create mode 100644 gas/testsuite/gas/aarch64/sve2-sme2-6.s

diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.d b/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.d
new file mode 100644
index 00000000000..a40a5441616
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.d
@@ -0,0 +1,3 @@
+#as: -march=armv8-a+sme2
+#source: sve2-sme2-6-invalid.s
+#error_output: sve2-sme2-6-invalid.l
diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.l b/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.l
new file mode 100644
index 00000000000..0f7021050a6
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.l
@@ -0,0 +1,20 @@
+[^ :]+: Assembler messages:
+[^ :]+:[0-9]+: Error: expected a register at operand 1 -- `sqrshrn 0,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: expected '{' at operand 2 -- `sqrshrn z0\.h,0,#1'
+[^ :]+:[0-9]+: Error: start register out of range at operand 2 -- `sqrshrn z0\.h,{z1\.s-z2\.s},#1'
+[^ :]+:[0-9]+: Error: expected a list of 2 registers at operand 2 -- `sqrshrn z0\.h,{z0\.s-z2\.s},#1'
+[^ :]+:[0-9]+: Error: expected a list of 2 registers at operand 2 -- `sqrshrn z0\.h,{z0\.s-z3\.s},#1'
+[^ :]+:[0-9]+: Error: immediate value out of range 1 to 16 at operand 3 -- `sqrshrn z0\.h,{z0\.s-z1\.s},#0'
+[^ :]+:[0-9]+: Error: immediate value out of range 1 to 16 at operand 3 -- `sqrshrn z0\.h,{z0\.s-z1\.s},#17'
+[^ :]+:[0-9]+: Error: immediate operand required at operand 3 -- `sqrshrn z0\.h,{z0\.s-z1\.s},x0'
+[^ :]+:[0-9]+: Error: operand mismatch -- `sqrshrn z0\.b,{z0\.h-z1\.h},#1'
+[^ :]+:[0-9]+: Info:    did you mean this\?
+[^ :]+:[0-9]+: Info:    	sqrshrn z0\.b, {z0\.s-z1\.s}, #1
+[^ :]+:[0-9]+: Info:    other valid variant\(s\):
+[^ :]+:[0-9]+: Info:    	sqrshrn z0\.h, {z0\.d-z1\.d}, #1
+[^ :]+:[0-9]+: Error: operand mismatch -- `sqrshrn z0\.s,{z0\.d-z1\.d},#1'
+[^ :]+:[0-9]+: Info:    did you mean this\?
+[^ :]+:[0-9]+: Info:    	sqrshrn z0\.h, {z0\.d-z1\.d}, #1
+[^ :]+:[0-9]+: Info:    other valid variant\(s\):
+[^ :]+:[0-9]+: Info:    	sqrshrn z0\.b, {z0\.s-z1\.s}, #1
+[^ :]+:[0-9]+: Warning: SVE `movprfx' compatible instruction expected -- `sqrshrn z0\.h,{z2\.s-z3\.s},#1'
diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.s b/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.s
new file mode 100644
index 00000000000..9c6f5ae6dda
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6-invalid.s
@@ -0,0 +1,14 @@
+	sqrshrn	0, { z0.s - z1.s }, #1
+	sqrshrn	z0.h, 0, #1
+
+	sqrshrn	z0.h, { z1.s - z2.s }, #1
+	sqrshrn	z0.h, { z0.s - z2.s }, #1
+	sqrshrn	z0.h, { z0.s - z3.s }, #1
+	sqrshrn	z0.h, { z0.s - z1.s }, #0
+	sqrshrn	z0.h, { z0.s - z1.s }, #17
+	sqrshrn	z0.h, { z0.s - z1.s }, x0
+
+	sqrshrn	z0.b, { z0.h - z1.h }, #1
+	sqrshrn	z0.s, { z0.d - z1.d }, #1
+
+	movprfx z0, z4; sqrshrn z0.h, { z2.s - z3.s }, #1
diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.d b/gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.d
new file mode 100644
index 00000000000..1e1c03be090
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.d
@@ -0,0 +1,3 @@
+#as: -march=armv8-a+sme
+#source: sve2-sme2-6.s
+#error_output: sve2-sme2-6-noarch.l
diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.l b/gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.l
new file mode 100644
index 00000000000..07f95d9d44d
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6-noarch.l
@@ -0,0 +1,16 @@
+[^ :]+: Assembler messages:
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrn z0\.h,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrn z31\.h,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrn z0\.h,{z30\.s-z31\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrn z0\.h,{z0\.s-z1\.s},#16'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrn z1\.h,{z26\.s-z27\.s},#14'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrun z0\.h,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrun z31\.h,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrun z0\.h,{z30\.s-z31\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrun z0\.h,{z0\.s-z1\.s},#16'
+[^ :]+:[0-9]+: Error: selected processor does not support `sqrshrun z15\.h,{z6\.s-z7\.s},#9'
+[^ :]+:[0-9]+: Error: selected processor does not support `uqrshrn z0\.h,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `uqrshrn z31\.h,{z0\.s-z1\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `uqrshrn z0\.h,{z30\.s-z31\.s},#1'
+[^ :]+:[0-9]+: Error: selected processor does not support `uqrshrn z0\.h,{z0\.s-z1\.s},#16'
+[^ :]+:[0-9]+: Error: selected processor does not support `uqrshrn z18\.h,{z2\.s-z3\.s},#6'
diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6.d b/gas/testsuite/gas/aarch64/sve2-sme2-6.d
new file mode 100644
index 00000000000..0d6f7c1eb3c
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6.d
@@ -0,0 +1,24 @@
+#as: -march=armv8-a+sme2
+#objdump: -dr
+
+[^:]+:     file format .*
+
+
+[^:]+:
+
+[^:]+:
+[^:]+:	45bf2800 	sqrshrn	z0\.h, {z0\.s-z1\.s}, #1
+[^:]+:	45bf281f 	sqrshrn	z31\.h, {z0\.s-z1\.s}, #1
+[^:]+:	45bf2bc0 	sqrshrn	z0\.h, {z30\.s-z31\.s}, #1
+[^:]+:	45b02800 	sqrshrn	z0\.h, {z0\.s-z1\.s}, #16
+[^:]+:	45b22b41 	sqrshrn	z1\.h, {z26\.s-z27\.s}, #14
+[^:]+:	45bf0800 	sqrshrun	z0\.h, {z0\.s-z1\.s}, #1
+[^:]+:	45bf081f 	sqrshrun	z31\.h, {z0\.s-z1\.s}, #1
+[^:]+:	45bf0bc0 	sqrshrun	z0\.h, {z30\.s-z31\.s}, #1
+[^:]+:	45b00800 	sqrshrun	z0\.h, {z0\.s-z1\.s}, #16
+[^:]+:	45b708cf 	sqrshrun	z15\.h, {z6\.s-z7\.s}, #9
+[^:]+:	45bf3800 	uqrshrn	z0\.h, {z0\.s-z1\.s}, #1
+[^:]+:	45bf381f 	uqrshrn	z31\.h, {z0\.s-z1\.s}, #1
+[^:]+:	45bf3bc0 	uqrshrn	z0\.h, {z30\.s-z31\.s}, #1
+[^:]+:	45b03800 	uqrshrn	z0\.h, {z0\.s-z1\.s}, #16
+[^:]+:	45ba3852 	uqrshrn	z18\.h, {z2\.s-z3\.s}, #6
diff --git a/gas/testsuite/gas/aarch64/sve2-sme2-6.s b/gas/testsuite/gas/aarch64/sve2-sme2-6.s
new file mode 100644
index 00000000000..4e894dfeb66
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/sve2-sme2-6.s
@@ -0,0 +1,17 @@
+	sqrshrn	z0.h, { z0.s - z1.s }, #1
+	sqrshrn	z31.h, { z0.s - z1.s }, #1
+	sqrshrn	z0.h, { z30.s - z31.s }, #1
+	sqrshrn	z0.h, { z0.s - z1.s }, #16
+	sqrshrn	z1.h, { z26.s - z27.s }, #14
+
+	sqrshrun z0.h, { z0.s - z1.s }, #1
+	sqrshrun z31.h, { z0.s - z1.s }, #1
+	sqrshrun z0.h, { z30.s - z31.s }, #1
+	sqrshrun z0.h, { z0.s - z1.s }, #16
+	sqrshrun z15.h, { z6.s - z7.s }, #9
+
+	uqrshrn	z0.h, { z0.s - z1.s }, #1
+	uqrshrn	z31.h, { z0.s - z1.s }, #1
+	uqrshrn	z0.h, { z30.s - z31.s }, #1
+	uqrshrn	z0.h, { z0.s - z1.s }, #16
+	uqrshrn	z18.h, { z2.s - z3.s }, #6
diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c
index dfea29de74c..1559066d090 100644
--- a/opcodes/aarch64-dis-2.c
+++ b/opcodes/aarch64-dis-2.c
@@ -81,7 +81,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0000000100xxxxxxxxxxxxxxxx01xxx
                                                      bmopa.  */
-                                                  return 2474;
+                                                  return 2477;
                                                 }
                                               else
                                                 {
@@ -89,7 +89,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0000000100xxxxxxxxxxxxxxxx11xxx
                                                      bmops.  */
-                                                  return 2475;
+                                                  return 2478;
                                                 }
                                             }
                                         }
@@ -188,7 +188,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000x10x100xxxxxxxxxxxxxxxxx
                                                      zero.  */
-                                                  return 2904;
+                                                  return 2907;
                                                 }
                                             }
                                         }
@@ -212,7 +212,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000x00x101xx0xxxxxxxxxxxxxx
                                                          luti4.  */
-                                                      return 2618;
+                                                      return 2621;
                                                     }
                                                   else
                                                     {
@@ -220,7 +220,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000x00x101xx1xxxxxxxxxxxxxx
                                                          luti4.  */
-                                                      return 2617;
+                                                      return 2620;
                                                     }
                                                 }
                                               else
@@ -229,7 +229,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000x10x101xxxxxxxxxxxxxxxxx
                                                      luti4.  */
-                                                  return 2616;
+                                                  return 2619;
                                                 }
                                             }
                                         }
@@ -248,7 +248,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0x010xxxxx00xxxxxxxxxx
                                                          mov.  */
-                                                      return 2625;
+                                                      return 2628;
                                                     }
                                                   else
                                                     {
@@ -256,7 +256,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000000xx0x011xxxxx00xxxxxxxxxx
                                                          mov.  */
-                                                      return 2621;
+                                                      return 2624;
                                                     }
                                                 }
                                               else
@@ -269,7 +269,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x00x11xxx0xx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 2615;
+                                                          return 2618;
                                                         }
                                                       else
                                                         {
@@ -277,7 +277,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000x00x11xxx1xx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 2614;
+                                                          return 2617;
                                                         }
                                                     }
                                                   else
@@ -290,7 +290,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000010x110xxxxx00xxxxxxxxxx
                                                                  movt.  */
-                                                              return 2636;
+                                                              return 2639;
                                                             }
                                                           else
                                                             {
@@ -298,7 +298,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000000010x111xxxxx00xxxxxxxxxx
                                                                  movt.  */
-                                                              return 2635;
+                                                              return 2638;
                                                             }
                                                         }
                                                       else
@@ -307,7 +307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000000110x11xxxxxx00xxxxxxxxxx
                                                              luti2.  */
-                                                          return 2613;
+                                                          return 2616;
                                                         }
                                                     }
                                                 }
@@ -320,7 +320,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx10xxxxxxxxxx
                                                      mov.  */
-                                                  return 2623;
+                                                  return 2626;
                                                 }
                                               else
                                                 {
@@ -328,7 +328,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx11xxxxx10xxxxxxxxxx
                                                      mov.  */
-                                                  return 2619;
+                                                  return 2622;
                                                 }
                                             }
                                         }
@@ -342,7 +342,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx01xxxxxxxxxx
                                                      mov.  */
-                                                  return 2626;
+                                                  return 2629;
                                                 }
                                               else
                                                 {
@@ -350,7 +350,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx11xxxxx01xxxxxxxxxx
                                                      mov.  */
-                                                  return 2622;
+                                                  return 2625;
                                                 }
                                             }
                                           else
@@ -361,7 +361,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx10xxxxx11xxxxxxxxxx
                                                      mov.  */
-                                                  return 2624;
+                                                  return 2627;
                                                 }
                                               else
                                                 {
@@ -369,7 +369,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000000xx0xx11xxxxx11xxxxxxxxxx
                                                      mov.  */
-                                                  return 2620;
+                                                  return 2623;
                                                 }
                                             }
                                         }
@@ -396,7 +396,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx000xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2552;
+                                                          return 2555;
                                                         }
                                                       else
                                                         {
@@ -404,7 +404,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx100xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2553;
+                                                          return 2556;
                                                         }
                                                     }
                                                   else
@@ -415,7 +415,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx010xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2576;
+                                                          return 2579;
                                                         }
                                                       else
                                                         {
@@ -423,7 +423,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx110xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2577;
+                                                          return 2580;
                                                         }
                                                     }
                                                 }
@@ -437,7 +437,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx001xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2568;
+                                                          return 2571;
                                                         }
                                                       else
                                                         {
@@ -445,7 +445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx101xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2569;
+                                                          return 2572;
                                                         }
                                                     }
                                                   else
@@ -456,7 +456,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx011xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2560;
+                                                          return 2563;
                                                         }
                                                       else
                                                         {
@@ -464,7 +464,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx111xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2561;
+                                                          return 2564;
                                                         }
                                                     }
                                                 }
@@ -481,7 +481,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx000xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2584;
+                                                          return 2587;
                                                         }
                                                       else
                                                         {
@@ -489,7 +489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx100xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2585;
+                                                          return 2588;
                                                         }
                                                     }
                                                   else
@@ -500,7 +500,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx010xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2608;
+                                                          return 2611;
                                                         }
                                                       else
                                                         {
@@ -508,7 +508,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx110xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2609;
+                                                          return 2612;
                                                         }
                                                     }
                                                 }
@@ -522,7 +522,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx001xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2600;
+                                                          return 2603;
                                                         }
                                                       else
                                                         {
@@ -530,7 +530,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx101xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2601;
+                                                          return 2604;
                                                         }
                                                     }
                                                   else
@@ -541,7 +541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx011xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2592;
+                                                          return 2595;
                                                         }
                                                       else
                                                         {
@@ -549,7 +549,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000000xxxxx111xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2593;
+                                                          return 2596;
                                                         }
                                                     }
                                                 }
@@ -584,7 +584,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0100000100xxxxxxxxxxxxxxxx01xxx
                                                      smopa.  */
-                                                  return 2698;
+                                                  return 2701;
                                                 }
                                             }
                                           else
@@ -612,7 +612,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100000100xxxxxxxxxxxxxxxx11xxx
                                                  smops.  */
-                                              return 2699;
+                                              return 2702;
                                             }
                                         }
                                     }
@@ -635,7 +635,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx000xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2548;
+                                                          return 2551;
                                                         }
                                                       else
                                                         {
@@ -643,7 +643,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx100xxxxxxxxxxxx0
                                                              ld1b.  */
-                                                          return 2549;
+                                                          return 2552;
                                                         }
                                                     }
                                                   else
@@ -654,7 +654,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx010xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2572;
+                                                          return 2575;
                                                         }
                                                       else
                                                         {
@@ -662,7 +662,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx110xxxxxxxxxxxx0
                                                              ld1w.  */
-                                                          return 2573;
+                                                          return 2576;
                                                         }
                                                     }
                                                 }
@@ -676,7 +676,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx001xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2564;
+                                                          return 2567;
                                                         }
                                                       else
                                                         {
@@ -684,7 +684,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx101xxxxxxxxxxxx0
                                                              ld1h.  */
-                                                          return 2565;
+                                                          return 2568;
                                                         }
                                                     }
                                                   else
@@ -695,7 +695,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx011xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2556;
+                                                          return 2559;
                                                         }
                                                       else
                                                         {
@@ -703,7 +703,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx111xxxxxxxxxxxx0
                                                              ld1d.  */
-                                                          return 2557;
+                                                          return 2560;
                                                         }
                                                     }
                                                 }
@@ -720,7 +720,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx000xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2580;
+                                                          return 2583;
                                                         }
                                                       else
                                                         {
@@ -728,7 +728,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx100xxxxxxxxxxxx1
                                                              ldnt1b.  */
-                                                          return 2581;
+                                                          return 2584;
                                                         }
                                                     }
                                                   else
@@ -739,7 +739,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx010xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2604;
+                                                          return 2607;
                                                         }
                                                       else
                                                         {
@@ -747,7 +747,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx110xxxxxxxxxxxx1
                                                              ldnt1w.  */
-                                                          return 2605;
+                                                          return 2608;
                                                         }
                                                     }
                                                 }
@@ -761,7 +761,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx001xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2596;
+                                                          return 2599;
                                                         }
                                                       else
                                                         {
@@ -769,7 +769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx101xxxxxxxxxxxx1
                                                              ldnt1h.  */
-                                                          return 2597;
+                                                          return 2600;
                                                         }
                                                     }
                                                   else
@@ -780,7 +780,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx011xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2588;
+                                                          return 2591;
                                                         }
                                                       else
                                                         {
@@ -788,7 +788,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100000010xxxxx111xxxxxxxxxxxx1
                                                              ldnt1d.  */
-                                                          return 2589;
+                                                          return 2592;
                                                         }
                                                     }
                                                 }
@@ -856,7 +856,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx000xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2724;
+                                                      return 2727;
                                                     }
                                                   else
                                                     {
@@ -864,7 +864,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx100xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2725;
+                                                      return 2728;
                                                     }
                                                 }
                                               else
@@ -875,7 +875,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx010xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2748;
+                                                      return 2751;
                                                     }
                                                   else
                                                     {
@@ -883,7 +883,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx110xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2749;
+                                                      return 2752;
                                                     }
                                                 }
                                             }
@@ -897,7 +897,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx001xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2740;
+                                                      return 2743;
                                                     }
                                                   else
                                                     {
@@ -905,7 +905,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx101xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2741;
+                                                      return 2744;
                                                     }
                                                 }
                                               else
@@ -916,7 +916,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx011xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2732;
+                                                      return 2735;
                                                     }
                                                   else
                                                     {
@@ -924,7 +924,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx111xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2733;
+                                                      return 2736;
                                                     }
                                                 }
                                             }
@@ -941,7 +941,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx000xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2756;
+                                                      return 2759;
                                                     }
                                                   else
                                                     {
@@ -949,7 +949,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx100xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2757;
+                                                      return 2760;
                                                     }
                                                 }
                                               else
@@ -960,7 +960,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx010xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2780;
+                                                      return 2783;
                                                     }
                                                   else
                                                     {
@@ -968,7 +968,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx110xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2781;
+                                                      return 2784;
                                                     }
                                                 }
                                             }
@@ -982,7 +982,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx001xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2772;
+                                                      return 2775;
                                                     }
                                                   else
                                                     {
@@ -990,7 +990,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx101xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2773;
+                                                      return 2776;
                                                     }
                                                 }
                                               else
@@ -1001,7 +1001,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx011xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2764;
+                                                      return 2767;
                                                     }
                                                   else
                                                     {
@@ -1009,7 +1009,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000001xxxxx111xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2765;
+                                                      return 2768;
                                                     }
                                                 }
                                             }
@@ -1073,7 +1073,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx000xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2720;
+                                                      return 2723;
                                                     }
                                                   else
                                                     {
@@ -1081,7 +1081,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx100xxxxxxxxxxxx0
                                                          st1b.  */
-                                                      return 2721;
+                                                      return 2724;
                                                     }
                                                 }
                                               else
@@ -1092,7 +1092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx010xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2744;
+                                                      return 2747;
                                                     }
                                                   else
                                                     {
@@ -1100,7 +1100,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx110xxxxxxxxxxxx0
                                                          st1w.  */
-                                                      return 2745;
+                                                      return 2748;
                                                     }
                                                 }
                                             }
@@ -1114,7 +1114,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx001xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2736;
+                                                      return 2739;
                                                     }
                                                   else
                                                     {
@@ -1122,7 +1122,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx101xxxxxxxxxxxx0
                                                          st1h.  */
-                                                      return 2737;
+                                                      return 2740;
                                                     }
                                                 }
                                               else
@@ -1133,7 +1133,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx011xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2728;
+                                                      return 2731;
                                                     }
                                                   else
                                                     {
@@ -1141,7 +1141,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx111xxxxxxxxxxxx0
                                                          st1d.  */
-                                                      return 2729;
+                                                      return 2732;
                                                     }
                                                 }
                                             }
@@ -1158,7 +1158,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx000xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2752;
+                                                      return 2755;
                                                     }
                                                   else
                                                     {
@@ -1166,7 +1166,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx100xxxxxxxxxxxx1
                                                          stnt1b.  */
-                                                      return 2753;
+                                                      return 2756;
                                                     }
                                                 }
                                               else
@@ -1177,7 +1177,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx010xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2776;
+                                                      return 2779;
                                                     }
                                                   else
                                                     {
@@ -1185,7 +1185,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx110xxxxxxxxxxxx1
                                                          stnt1w.  */
-                                                      return 2777;
+                                                      return 2780;
                                                     }
                                                 }
                                             }
@@ -1199,7 +1199,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx001xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2768;
+                                                      return 2771;
                                                     }
                                                   else
                                                     {
@@ -1207,7 +1207,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx101xxxxxxxxxxxx1
                                                          stnt1h.  */
-                                                      return 2769;
+                                                      return 2772;
                                                     }
                                                 }
                                               else
@@ -1218,7 +1218,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx011xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2760;
+                                                      return 2763;
                                                     }
                                                   else
                                                     {
@@ -1226,7 +1226,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x0x00000011xxxxx111xxxxxxxxxxxx1
                                                          stnt1d.  */
-                                                      return 2761;
+                                                      return 2764;
                                                     }
                                                 }
                                             }
@@ -1318,7 +1318,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx000xx
                                                          smlall.  */
-                                                      return 2674;
+                                                      return 2677;
                                                     }
                                                   else
                                                     {
@@ -1326,7 +1326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx001xx
                                                          usmlall.  */
-                                                      return 2879;
+                                                      return 2882;
                                                     }
                                                 }
                                               else
@@ -1339,7 +1339,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx000xxx
                                                              smlall.  */
-                                                          return 2675;
+                                                          return 2678;
                                                         }
                                                       else
                                                         {
@@ -1347,7 +1347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx000xxx
                                                              smlall.  */
-                                                          return 2676;
+                                                          return 2679;
                                                         }
                                                     }
                                                   else
@@ -1358,7 +1358,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx100xxx
                                                              usmlall.  */
-                                                          return 2880;
+                                                          return 2883;
                                                         }
                                                       else
                                                         {
@@ -1366,7 +1366,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx100xxx
                                                              usmlall.  */
-                                                          return 2881;
+                                                          return 2884;
                                                         }
                                                     }
                                                 }
@@ -1381,7 +1381,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx100xx
                                                          umlall.  */
-                                                      return 2837;
+                                                      return 2840;
                                                     }
                                                   else
                                                     {
@@ -1389,7 +1389,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010000xxxxxxxxxxxxxxx101xx
                                                          sumlall.  */
-                                                      return 2795;
+                                                      return 2798;
                                                     }
                                                 }
                                               else
@@ -1402,7 +1402,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx010xxx
                                                              umlall.  */
-                                                          return 2838;
+                                                          return 2841;
                                                         }
                                                       else
                                                         {
@@ -1410,7 +1410,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx010xxx
                                                              umlall.  */
-                                                          return 2839;
+                                                          return 2842;
                                                         }
                                                     }
                                                   else
@@ -1421,7 +1421,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx0xxxxxxxxx110xxx
                                                              sumlall.  */
-                                                          return 2796;
+                                                          return 2799;
                                                         }
                                                       else
                                                         {
@@ -1429,7 +1429,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000010001xxxx1xxxxxxxxx110xxx
                                                              sumlall.  */
-                                                          return 2797;
+                                                          return 2800;
                                                         }
                                                     }
                                                 }
@@ -1445,7 +1445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx0000010000xxxxxxxxxxxxxxx01xxx
                                                      smlsll.  */
-                                                  return 2690;
+                                                  return 2693;
                                                 }
                                               else
                                                 {
@@ -1455,7 +1455,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx0xxxxxxxxxx01xxx
                                                          smlsll.  */
-                                                      return 2691;
+                                                      return 2694;
                                                     }
                                                   else
                                                     {
@@ -1463,7 +1463,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx1xxxxxxxxxx01xxx
                                                          smlsll.  */
-                                                      return 2692;
+                                                      return 2695;
                                                     }
                                                 }
                                             }
@@ -1475,7 +1475,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx0000010000xxxxxxxxxxxxxxx11xxx
                                                      umlsll.  */
-                                                  return 2853;
+                                                  return 2856;
                                                 }
                                               else
                                                 {
@@ -1485,7 +1485,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx0xxxxxxxxxx11xxx
                                                          umlsll.  */
-                                                      return 2854;
+                                                      return 2857;
                                                     }
                                                   else
                                                     {
@@ -1493,7 +1493,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000010001xxxx1xxxxxxxxxx11xxx
                                                          umlsll.  */
-                                                      return 2855;
+                                                      return 2858;
                                                     }
                                                 }
                                             }
@@ -1515,7 +1515,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx000xxxxxxxxx0xxx
                                                              ld1b.  */
-                                                          return 2554;
+                                                          return 2557;
                                                         }
                                                       else
                                                         {
@@ -1523,7 +1523,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx010xxxxxxxxx0xxx
                                                              ld1w.  */
-                                                          return 2578;
+                                                          return 2581;
                                                         }
                                                     }
                                                   else
@@ -1534,7 +1534,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx001xxxxxxxxx0xxx
                                                              ld1h.  */
-                                                          return 2570;
+                                                          return 2573;
                                                         }
                                                       else
                                                         {
@@ -1542,7 +1542,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx011xxxxxxxxx0xxx
                                                              ld1d.  */
-                                                          return 2562;
+                                                          return 2565;
                                                         }
                                                     }
                                                 }
@@ -1556,7 +1556,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx000xxxxxxxxx1xxx
                                                              ldnt1b.  */
-                                                          return 2586;
+                                                          return 2589;
                                                         }
                                                       else
                                                         {
@@ -1564,7 +1564,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx010xxxxxxxxx1xxx
                                                              ldnt1w.  */
-                                                          return 2610;
+                                                          return 2613;
                                                         }
                                                     }
                                                   else
@@ -1575,7 +1575,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx001xxxxxxxxx1xxx
                                                              ldnt1h.  */
-                                                          return 2602;
+                                                          return 2605;
                                                         }
                                                       else
                                                         {
@@ -1583,7 +1583,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx011xxxxxxxxx1xxx
                                                              ldnt1d.  */
-                                                          return 2594;
+                                                          return 2597;
                                                         }
                                                     }
                                                 }
@@ -1611,7 +1611,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001000xxxxx100xxxxxxxxx0xxx
                                                              ld1b.  */
-                                                          return 2555;
+                                                          return 2558;
                                                         }
                                                       else
                                                         {
@@ -1619,7 +1619,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1100001000xxxxx100xxxxxxxxx0xxx
                                                              ldr.  */
-                                                          return 2612;
+                                                          return 2615;
                                                         }
                                                     }
                                                   else
@@ -1628,7 +1628,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx110xxxxxxxxx0xxx
                                                          ld1w.  */
-                                                      return 2579;
+                                                      return 2582;
                                                     }
                                                 }
                                               else
@@ -1639,7 +1639,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx101xxxxxxxxx0xxx
                                                          ld1h.  */
-                                                      return 2571;
+                                                      return 2574;
                                                     }
                                                   else
                                                     {
@@ -1647,7 +1647,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx111xxxxxxxxx0xxx
                                                          ld1d.  */
-                                                      return 2563;
+                                                      return 2566;
                                                     }
                                                 }
                                             }
@@ -1661,7 +1661,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx100xxxxxxxxx1xxx
                                                          ldnt1b.  */
-                                                      return 2587;
+                                                      return 2590;
                                                     }
                                                   else
                                                     {
@@ -1669,7 +1669,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx110xxxxxxxxx1xxx
                                                          ldnt1w.  */
-                                                      return 2611;
+                                                      return 2614;
                                                     }
                                                 }
                                               else
@@ -1680,7 +1680,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx101xxxxxxxxx1xxx
                                                          ldnt1h.  */
-                                                      return 2603;
+                                                      return 2606;
                                                     }
                                                   else
                                                     {
@@ -1688,7 +1688,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001000xxxxx111xxxxxxxxx1xxx
                                                          ldnt1d.  */
-                                                      return 2595;
+                                                      return 2598;
                                                     }
                                                 }
                                             }
@@ -1721,7 +1721,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx0xxxxxxx00xxx
                                                              smlall.  */
-                                                          return 2911;
+                                                          return 2914;
                                                         }
                                                       else
                                                         {
@@ -1731,7 +1731,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx0xxxxxxx00xxx
                                                                  smlall.  */
-                                                              return 2912;
+                                                              return 2915;
                                                             }
                                                           else
                                                             {
@@ -1739,7 +1739,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx0xxxxxxx00xxx
                                                                  smlall.  */
-                                                              return 2913;
+                                                              return 2916;
                                                             }
                                                         }
                                                     }
@@ -1751,7 +1751,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx1xxxxxxx00xxx
                                                              fmlal.  */
-                                                          return 2515;
+                                                          return 2518;
                                                         }
                                                       else
                                                         {
@@ -1761,7 +1761,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx1xxxxxxx00xxx
                                                                  fmlal.  */
-                                                              return 2516;
+                                                              return 2519;
                                                             }
                                                           else
                                                             {
@@ -1769,7 +1769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx1xxxxxxx00xxx
                                                                  fmlal.  */
-                                                              return 2517;
+                                                              return 2520;
                                                             }
                                                         }
                                                     }
@@ -1806,7 +1806,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx0xxxxxxx10xxx
                                                              umlall.  */
-                                                          return 2920;
+                                                          return 2923;
                                                         }
                                                       else
                                                         {
@@ -1816,7 +1816,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx0xxxxxxx10xxx
                                                                  umlall.  */
-                                                              return 2921;
+                                                              return 2924;
                                                             }
                                                           else
                                                             {
@@ -1824,7 +1824,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx0xxxxxxx10xxx
                                                                  umlall.  */
-                                                              return 2922;
+                                                              return 2925;
                                                             }
                                                         }
                                                     }
@@ -1836,7 +1836,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x10000011000xxxxxxx1xxxxxxx10xxx
                                                              bfmlal.  */
-                                                          return 2457;
+                                                          return 2460;
                                                         }
                                                       else
                                                         {
@@ -1846,7 +1846,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx0xx1xxxxxxx10xxx
                                                                  bfmlal.  */
-                                                              return 2458;
+                                                              return 2461;
                                                             }
                                                           else
                                                             {
@@ -1854,7 +1854,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011001xxxx1xx1xxxxxxx10xxx
                                                                  bfmlal.  */
-                                                              return 2459;
+                                                              return 2462;
                                                             }
                                                         }
                                                     }
@@ -1884,7 +1884,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011000xxxxxxx0xxxxxxx01xxx
                                                          smlsll.  */
-                                                      return 2914;
+                                                      return 2917;
                                                     }
                                                   else
                                                     {
@@ -1894,7 +1894,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx0xx0xxxxxxx01xxx
                                                              smlsll.  */
-                                                          return 2915;
+                                                          return 2918;
                                                         }
                                                       else
                                                         {
@@ -1902,7 +1902,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx1xx0xxxxxxx01xxx
                                                              smlsll.  */
-                                                          return 2916;
+                                                          return 2919;
                                                         }
                                                     }
                                                 }
@@ -1914,7 +1914,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011000xxxxxxx1xxxxxxx01xxx
                                                          fmlsl.  */
-                                                      return 2529;
+                                                      return 2532;
                                                     }
                                                   else
                                                     {
@@ -1924,7 +1924,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx0xx1xxxxxxx01xxx
                                                              fmlsl.  */
-                                                          return 2530;
+                                                          return 2533;
                                                         }
                                                       else
                                                         {
@@ -1932,7 +1932,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx1xx1xxxxxxx01xxx
                                                              fmlsl.  */
-                                                          return 2531;
+                                                          return 2534;
                                                         }
                                                     }
                                                 }
@@ -1943,7 +1943,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100001100xxxxxxxxxxxxxxxx01xxx
                                                  umopa.  */
-                                              return 2861;
+                                              return 2864;
                                             }
                                         }
                                       else
@@ -1958,7 +1958,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011000xxxxxxx0xxxxxxx11xxx
                                                          umlsll.  */
-                                                      return 2923;
+                                                      return 2926;
                                                     }
                                                   else
                                                     {
@@ -1968,7 +1968,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx0xx0xxxxxxx11xxx
                                                              umlsll.  */
-                                                          return 2924;
+                                                          return 2927;
                                                         }
                                                       else
                                                         {
@@ -1976,7 +1976,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx1xx0xxxxxxx11xxx
                                                              umlsll.  */
-                                                          return 2925;
+                                                          return 2928;
                                                         }
                                                     }
                                                 }
@@ -1988,7 +1988,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011000xxxxxxx1xxxxxxx11xxx
                                                          bfmlsl.  */
-                                                      return 2465;
+                                                      return 2468;
                                                     }
                                                   else
                                                     {
@@ -1998,7 +1998,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx0xx1xxxxxxx11xxx
                                                              bfmlsl.  */
-                                                          return 2466;
+                                                          return 2469;
                                                         }
                                                       else
                                                         {
@@ -2006,7 +2006,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011001xxxx1xx1xxxxxxx11xxx
                                                              bfmlsl.  */
-                                                          return 2467;
+                                                          return 2470;
                                                         }
                                                     }
                                                 }
@@ -2017,7 +2017,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx100001100xxxxxxxxxxxxxxxx11xxx
                                                  umops.  */
-                                              return 2862;
+                                              return 2865;
                                             }
                                         }
                                     }
@@ -2041,7 +2041,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx000xxxxxxxxx0xxx
                                                          ld1b.  */
-                                                      return 2550;
+                                                      return 2553;
                                                     }
                                                   else
                                                     {
@@ -2049,7 +2049,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx010xxxxxxxxx0xxx
                                                          ld1w.  */
-                                                      return 2574;
+                                                      return 2577;
                                                     }
                                                 }
                                               else
@@ -2060,7 +2060,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx001xxxxxxxxx0xxx
                                                          ld1h.  */
-                                                      return 2566;
+                                                      return 2569;
                                                     }
                                                   else
                                                     {
@@ -2068,7 +2068,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx011xxxxxxxxx0xxx
                                                          ld1d.  */
-                                                      return 2558;
+                                                      return 2561;
                                                     }
                                                 }
                                             }
@@ -2084,7 +2084,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx0xxxxxx000xxx
                                                              fmla.  */
-                                                          return 2509;
+                                                          return 2512;
                                                         }
                                                       else
                                                         {
@@ -2092,7 +2092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx1xxxxxx000xxx
                                                              sdot.  */
-                                                          return 2644;
+                                                          return 2647;
                                                         }
                                                     }
                                                   else
@@ -2103,7 +2103,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx0xxxxxx100xxx
                                                              svdot.  */
-                                                          return 2803;
+                                                          return 2806;
                                                         }
                                                       else
                                                         {
@@ -2111,7 +2111,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx1xxxxxx100xxx
                                                              sdot.  */
-                                                          return 2650;
+                                                          return 2653;
                                                         }
                                                     }
                                                 }
@@ -2125,7 +2125,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx0xxxxxx010xxx
                                                              fmls.  */
-                                                          return 2523;
+                                                          return 2526;
                                                         }
                                                       else
                                                         {
@@ -2133,7 +2133,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx1xxxxxx010xxx
                                                              udot.  */
-                                                          return 2809;
+                                                          return 2812;
                                                         }
                                                     }
                                                   else
@@ -2144,7 +2144,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx0xxxxxx110xxx
                                                              uvdot.  */
-                                                          return 2890;
+                                                          return 2893;
                                                         }
                                                       else
                                                         {
@@ -2152,7 +2152,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx1xxxxxx110xxx
                                                              udot.  */
-                                                          return 2815;
+                                                          return 2818;
                                                         }
                                                     }
                                                 }
@@ -2170,7 +2170,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx100xxxxxxxxx0xxx
                                                          ld1b.  */
-                                                      return 2551;
+                                                      return 2554;
                                                     }
                                                   else
                                                     {
@@ -2178,7 +2178,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx110xxxxxxxxx0xxx
                                                          ld1w.  */
-                                                      return 2575;
+                                                      return 2578;
                                                     }
                                                 }
                                               else
@@ -2189,7 +2189,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx101xxxxxxxxx0xxx
                                                          ld1h.  */
-                                                      return 2567;
+                                                      return 2570;
                                                     }
                                                   else
                                                     {
@@ -2197,7 +2197,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx111xxxxxxxxx0xxx
                                                          ld1d.  */
-                                                      return 2559;
+                                                      return 2562;
                                                     }
                                                 }
                                             }
@@ -2213,7 +2213,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx0xxxxxx000xxx
                                                              fmla.  */
-                                                          return 2510;
+                                                          return 2513;
                                                         }
                                                       else
                                                         {
@@ -2221,7 +2221,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx1xxxxxx000xxx
                                                              sdot.  */
-                                                          return 2645;
+                                                          return 2648;
                                                         }
                                                     }
                                                   else
@@ -2232,7 +2232,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx0xxxxxx100xxx
                                                              svdot.  */
-                                                          return 2804;
+                                                          return 2807;
                                                         }
                                                       else
                                                         {
@@ -2240,7 +2240,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx1xxxxxx100xxx
                                                              sdot.  */
-                                                          return 2651;
+                                                          return 2654;
                                                         }
                                                     }
                                                 }
@@ -2254,7 +2254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx0xxxxxx010xxx
                                                              fmls.  */
-                                                          return 2524;
+                                                          return 2527;
                                                         }
                                                       else
                                                         {
@@ -2262,7 +2262,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx1xxxxxx010xxx
                                                              udot.  */
-                                                          return 2810;
+                                                          return 2813;
                                                         }
                                                     }
                                                   else
@@ -2273,7 +2273,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx0xxxxxx110xxx
                                                              uvdot.  */
-                                                          return 2891;
+                                                          return 2894;
                                                         }
                                                       else
                                                         {
@@ -2281,7 +2281,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx1xxxxxx110xxx
                                                              udot.  */
-                                                          return 2816;
+                                                          return 2819;
                                                         }
                                                     }
                                                 }
@@ -2302,7 +2302,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx000xxxxxxxxx1xxx
                                                          ldnt1b.  */
-                                                      return 2582;
+                                                      return 2585;
                                                     }
                                                   else
                                                     {
@@ -2310,7 +2310,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx010xxxxxxxxx1xxx
                                                          ldnt1w.  */
-                                                      return 2606;
+                                                      return 2609;
                                                     }
                                                 }
                                               else
@@ -2321,7 +2321,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx001xxxxxxxxx1xxx
                                                          ldnt1h.  */
-                                                      return 2598;
+                                                      return 2601;
                                                     }
                                                   else
                                                     {
@@ -2329,7 +2329,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx011xxxxxxxxx1xxx
                                                          ldnt1d.  */
-                                                      return 2590;
+                                                      return 2593;
                                                     }
                                                 }
                                             }
@@ -2345,7 +2345,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx0xxxxxx001xxx
                                                              fvdot.  */
-                                                          return 2547;
+                                                          return 2550;
                                                         }
                                                       else
                                                         {
@@ -2353,7 +2353,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx1xxxxxx001xxx
                                                              fdot.  */
-                                                          return 2487;
+                                                          return 2490;
                                                         }
                                                     }
                                                   else
@@ -2362,7 +2362,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010101xxxx0xxxxxxxxx101xxx
                                                          usdot.  */
-                                                      return 2873;
+                                                      return 2876;
                                                     }
                                                 }
                                               else
@@ -2375,7 +2375,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx0xxxxxx011xxx
                                                              bfvdot.  */
-                                                          return 2473;
+                                                          return 2476;
                                                         }
                                                       else
                                                         {
@@ -2383,7 +2383,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx0xx1xxxxxx011xxx
                                                              bfdot.  */
-                                                          return 2451;
+                                                          return 2454;
                                                         }
                                                     }
                                                   else
@@ -2392,7 +2392,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010101xxxx0xxxxxxxxx111xxx
                                                          sudot.  */
-                                                      return 2791;
+                                                      return 2794;
                                                     }
                                                 }
                                             }
@@ -2409,7 +2409,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx100xxxxxxxxx1xxx
                                                          ldnt1b.  */
-                                                      return 2583;
+                                                      return 2586;
                                                     }
                                                   else
                                                     {
@@ -2417,7 +2417,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx110xxxxxxxxx1xxx
                                                          ldnt1w.  */
-                                                      return 2607;
+                                                      return 2610;
                                                     }
                                                 }
                                               else
@@ -2428,7 +2428,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx101xxxxxxxxx1xxx
                                                          ldnt1h.  */
-                                                      return 2599;
+                                                      return 2602;
                                                     }
                                                   else
                                                     {
@@ -2436,7 +2436,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010100xxxx111xxxxxxxxx1xxx
                                                          ldnt1d.  */
-                                                      return 2591;
+                                                      return 2594;
                                                     }
                                                 }
                                             }
@@ -2450,7 +2450,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010101xxxx1xxxxxxxxx001xxx
                                                          fdot.  */
-                                                      return 2488;
+                                                      return 2491;
                                                     }
                                                   else
                                                     {
@@ -2460,7 +2460,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx0xxxxxx101xxx
                                                              usvdot.  */
-                                                          return 2887;
+                                                          return 2890;
                                                         }
                                                       else
                                                         {
@@ -2468,7 +2468,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx1xxxxxx101xxx
                                                              usdot.  */
-                                                          return 2874;
+                                                          return 2877;
                                                         }
                                                     }
                                                 }
@@ -2480,7 +2480,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000010101xxxx1xxxxxxxxx011xxx
                                                          bfdot.  */
-                                                      return 2452;
+                                                      return 2455;
                                                     }
                                                   else
                                                     {
@@ -2490,7 +2490,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx0xxxxxx111xxx
                                                              suvdot.  */
-                                                          return 2802;
+                                                          return 2805;
                                                         }
                                                       else
                                                         {
@@ -2498,7 +2498,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx000010101xxxx1xx1xxxxxx111xxx
                                                              sudot.  */
-                                                          return 2792;
+                                                          return 2795;
                                                         }
                                                     }
                                                 }
@@ -2522,7 +2522,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx000001110xxxxx0xx0xxxxxxx00xxx
                                                          fmla.  */
-                                                      return 2927;
+                                                      return 2930;
                                                     }
                                                   else
                                                     {
@@ -2530,7 +2530,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx000001110xxxxx1xx0xxxxxxx00xxx
                                                          fmla.  */
-                                                      return 2928;
+                                                      return 2931;
                                                     }
                                                 }
                                               else
@@ -2541,7 +2541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011100xxxxxxx1xxxxxxx00xxx
                                                          smlal.  */
-                                                      return 2666;
+                                                      return 2669;
                                                     }
                                                   else
                                                     {
@@ -2551,7 +2551,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011101xxxx0xx1xxxxxxx00xxx
                                                              smlal.  */
-                                                          return 2667;
+                                                          return 2670;
                                                         }
                                                       else
                                                         {
@@ -2559,7 +2559,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011101xxxx1xx1xxxxxxx00xxx
                                                              smlal.  */
-                                                          return 2668;
+                                                          return 2671;
                                                         }
                                                     }
                                                 }
@@ -2576,7 +2576,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx000001110xxxxx0xx00xxxxxx01xxx
                                                              sdot.  */
-                                                          return 2909;
+                                                          return 2912;
                                                         }
                                                       else
                                                         {
@@ -2584,7 +2584,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx000001110xxxxx1xx00xxxxxx01xxx
                                                              sdot.  */
-                                                          return 2910;
+                                                          return 2913;
                                                         }
                                                     }
                                                   else
@@ -2593,7 +2593,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx000001110xxxxxxxx01xxxxxx01xxx
                                                          svdot.  */
-                                                      return 2917;
+                                                      return 2920;
                                                     }
                                                 }
                                               else
@@ -2604,7 +2604,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011100xxxxxxx1xxxxxxx01xxx
                                                          smlsl.  */
-                                                      return 2682;
+                                                      return 2685;
                                                     }
                                                   else
                                                     {
@@ -2614,7 +2614,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011101xxxx0xx1xxxxxxx01xxx
                                                              smlsl.  */
-                                                          return 2683;
+                                                          return 2686;
                                                         }
                                                       else
                                                         {
@@ -2622,7 +2622,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011101xxxx1xx1xxxxxxx01xxx
                                                              smlsl.  */
-                                                          return 2684;
+                                                          return 2687;
                                                         }
                                                     }
                                                 }
@@ -2662,7 +2662,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx000001110xxxxx0xx0xxxxxxx10xxx
                                                          fmls.  */
-                                                      return 2929;
+                                                      return 2932;
                                                     }
                                                   else
                                                     {
@@ -2670,7 +2670,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx000001110xxxxx1xx0xxxxxxx10xxx
                                                          fmls.  */
-                                                      return 2930;
+                                                      return 2933;
                                                     }
                                                 }
                                               else
@@ -2681,7 +2681,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0000011100xxxxxxx1xxxxxxx10xxx
                                                          umlal.  */
-                                                      return 2829;
+                                                      return 2832;
                                                     }
                                                   else
                                                     {
@@ -2691,7 +2691,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011101xxxx0xx1xxxxxxx10xxx
                                                              umlal.  */
-                                                          return 2830;
+                                                          return 2833;
                                                         }
                                                       else
                                                         {
@@ -2699,7 +2699,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx0000011101xxxx1xx1xxxxxxx10xxx
                                                              umlal.  */
-                                                          return 2831;
+                                                          return 2834;
                                                         }
                                                     }
                                                 }
@@ -2725,7 +2725,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx00001110xxxxx0xx00xxxxxx11xxx
                                                          udot.  */
-                                                      return 2918;
+                                                      return 2921;
                                                     }
                                                   else
                                                     {
@@ -2733,7 +2733,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx00001110xxxxx1xx00xxxxxx11xxx
                                                          udot.  */
-                                                      return 2919;
+                                                      return 2922;
                                                     }
                                                 }
                                               else
@@ -2742,7 +2742,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xxx00001110xxxxxxxx01xxxxxx11xxx
                                                      uvdot.  */
-                                                  return 2926;
+                                                  return 2929;
                                                 }
                                             }
                                           else
@@ -2753,7 +2753,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xxx000011100xxxxxxx1xxxxxxx11xxx
                                                      umlsl.  */
-                                                  return 2845;
+                                                  return 2848;
                                                 }
                                               else
                                                 {
@@ -2763,7 +2763,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000011101xxxx0xx1xxxxxxx11xxx
                                                          umlsl.  */
-                                                      return 2846;
+                                                      return 2849;
                                                     }
                                                   else
                                                     {
@@ -2771,7 +2771,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx000011101xxxx1xx1xxxxxxx11xxx
                                                          umlsl.  */
-                                                      return 2847;
+                                                      return 2850;
                                                     }
                                                 }
                                             }
@@ -2827,7 +2827,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010x10xxxx0xx000xxxxx000xx
                                                                          smlall.  */
-                                                                      return 2678;
+                                                                      return 2681;
                                                                     }
                                                                   else
                                                                     {
@@ -2835,7 +2835,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010x11xxxx0xx000xxxxx000xx
                                                                          smlall.  */
-                                                                      return 2679;
+                                                                      return 2682;
                                                                     }
                                                                 }
                                                               else
@@ -2846,7 +2846,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000011x1xxxx00xx000xxxxx000xx
                                                                          smlall.  */
-                                                                      return 2680;
+                                                                      return 2683;
                                                                     }
                                                                   else
                                                                     {
@@ -2854,7 +2854,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000011x1xxxx10xx000xxxxx000xx
                                                                          smlall.  */
-                                                                      return 2681;
+                                                                      return 2684;
                                                                     }
                                                                 }
                                                             }
@@ -2868,7 +2868,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010x10xxxx0xx000xxxxx001xx
                                                                          usmlall.  */
-                                                                      return 2883;
+                                                                      return 2886;
                                                                     }
                                                                   else
                                                                     {
@@ -2876,7 +2876,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010x11xxxx0xx000xxxxx001xx
                                                                          usmlall.  */
-                                                                      return 2884;
+                                                                      return 2887;
                                                                     }
                                                                 }
                                                               else
@@ -2887,7 +2887,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000011x1xxxx00xx000xxxxx001xx
                                                                          usmlall.  */
-                                                                      return 2885;
+                                                                      return 2888;
                                                                     }
                                                                   else
                                                                     {
@@ -2895,7 +2895,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000011x1xxxx10xx000xxxxx001xx
                                                                          usmlall.  */
-                                                                      return 2886;
+                                                                      return 2889;
                                                                     }
                                                                 }
                                                             }
@@ -2910,7 +2910,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx100xxxxx00xxx
                                                                      fdot.  */
-                                                                  return 2489;
+                                                                  return 2492;
                                                                 }
                                                               else
                                                                 {
@@ -2918,7 +2918,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx100xxxxx00xxx
                                                                      fdot.  */
-                                                                  return 2490;
+                                                                  return 2493;
                                                                 }
                                                             }
                                                           else
@@ -2929,7 +2929,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx100xxxxx00xxx
                                                                      fdot.  */
-                                                                  return 2491;
+                                                                  return 2494;
                                                                 }
                                                               else
                                                                 {
@@ -2937,7 +2937,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx100xxxxx00xxx
                                                                      fdot.  */
-                                                                  return 2492;
+                                                                  return 2495;
                                                                 }
                                                             }
                                                         }
@@ -2956,7 +2956,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010010xxxx0xx010xxxxx00xxx
                                                                          fmlal.  */
-                                                                      return 2519;
+                                                                      return 2522;
                                                                     }
                                                                   else
                                                                     {
@@ -2964,7 +2964,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010011xxxx0xx010xxxxx00xxx
                                                                          fmlal.  */
-                                                                      return 2520;
+                                                                      return 2523;
                                                                     }
                                                                 }
                                                               else
@@ -2975,7 +2975,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx00xx010xxxxx00xxx
                                                                          fmlal.  */
-                                                                      return 2521;
+                                                                      return 2524;
                                                                     }
                                                                   else
                                                                     {
@@ -2983,7 +2983,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx10xx010xxxxx00xxx
                                                                          fmlal.  */
-                                                                      return 2522;
+                                                                      return 2525;
                                                                     }
                                                                 }
                                                             }
@@ -2997,7 +2997,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010110xxxx0xx010xxxxx00xxx
                                                                          smlal.  */
-                                                                      return 2670;
+                                                                      return 2673;
                                                                     }
                                                                   else
                                                                     {
@@ -3005,7 +3005,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010111xxxx0xx010xxxxx00xxx
                                                                          smlal.  */
-                                                                      return 2671;
+                                                                      return 2674;
                                                                     }
                                                                 }
                                                               else
@@ -3016,7 +3016,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx00xx010xxxxx00xxx
                                                                          smlal.  */
-                                                                      return 2672;
+                                                                      return 2675;
                                                                     }
                                                                   else
                                                                     {
@@ -3024,7 +3024,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx10xx010xxxxx00xxx
                                                                          smlal.  */
-                                                                      return 2673;
+                                                                      return 2676;
                                                                     }
                                                                 }
                                                             }
@@ -3039,7 +3039,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx110xxxxx00xxx
                                                                      fmla.  */
-                                                                  return 2511;
+                                                                  return 2514;
                                                                 }
                                                               else
                                                                 {
@@ -3047,7 +3047,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx110xxxxx00xxx
                                                                      fmla.  */
-                                                                  return 2512;
+                                                                  return 2515;
                                                                 }
                                                             }
                                                           else
@@ -3058,7 +3058,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx110xxxxx00xxx
                                                                      fmla.  */
-                                                                  return 2513;
+                                                                  return 2516;
                                                                 }
                                                               else
                                                                 {
@@ -3066,7 +3066,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx110xxxxx00xxx
                                                                      fmla.  */
-                                                                  return 2514;
+                                                                  return 2517;
                                                                 }
                                                             }
                                                         }
@@ -3084,7 +3084,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx0xx001xxxxx000xx
                                                                  smlall.  */
-                                                              return 2677;
+                                                              return 2680;
                                                             }
                                                           else
                                                             {
@@ -3092,7 +3092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx0xx001xxxxx001xx
                                                                  usmlall.  */
-                                                              return 2882;
+                                                              return 2885;
                                                             }
                                                         }
                                                       else
@@ -3105,7 +3105,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx101xxxxx00xxx
                                                                      sdot.  */
-                                                                  return 2652;
+                                                                  return 2655;
                                                                 }
                                                               else
                                                                 {
@@ -3113,7 +3113,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx101xxxxx00xxx
                                                                      sdot.  */
-                                                                  return 2653;
+                                                                  return 2656;
                                                                 }
                                                             }
                                                           else
@@ -3124,7 +3124,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx101xxxxx00xxx
                                                                      sdot.  */
-                                                                  return 2654;
+                                                                  return 2657;
                                                                 }
                                                               else
                                                                 {
@@ -3132,7 +3132,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx101xxxxx00xxx
                                                                      sdot.  */
-                                                                  return 2655;
+                                                                  return 2658;
                                                                 }
                                                             }
                                                         }
@@ -3147,7 +3147,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x01xxxxx0xx011xxxxx00xxx
                                                                  fmlal.  */
-                                                              return 2518;
+                                                              return 2521;
                                                             }
                                                           else
                                                             {
@@ -3155,7 +3155,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x11xxxxx0xx011xxxxx00xxx
                                                                  smlal.  */
-                                                              return 2669;
+                                                              return 2672;
                                                             }
                                                         }
                                                       else
@@ -3166,7 +3166,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx00xx111xxxxx00xxx
                                                                  fadd.  */
-                                                              return 2477;
+                                                              return 2480;
                                                             }
                                                           else
                                                             {
@@ -3174,7 +3174,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx10xx111xxxxx00xxx
                                                                  fadd.  */
-                                                              return 2478;
+                                                              return 2481;
                                                             }
                                                         }
                                                     }
@@ -3198,7 +3198,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010x10xxxx0xx000xxxxx100xx
                                                                          umlall.  */
-                                                                      return 2841;
+                                                                      return 2844;
                                                                     }
                                                                   else
                                                                     {
@@ -3206,7 +3206,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010x11xxxx0xx000xxxxx100xx
                                                                          umlall.  */
-                                                                      return 2842;
+                                                                      return 2845;
                                                                     }
                                                                 }
                                                               else
@@ -3217,7 +3217,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000011x1xxxx00xx000xxxxx100xx
                                                                          umlall.  */
-                                                                      return 2843;
+                                                                      return 2846;
                                                                     }
                                                                   else
                                                                     {
@@ -3225,7 +3225,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000011x1xxxx10xx000xxxxx100xx
                                                                          umlall.  */
-                                                                      return 2844;
+                                                                      return 2847;
                                                                     }
                                                                 }
                                                             }
@@ -3237,7 +3237,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx10xxxx0xx000xxxxx101xx
                                                                      sumlall.  */
-                                                                  return 2798;
+                                                                  return 2801;
                                                                 }
                                                               else
                                                                 {
@@ -3245,7 +3245,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx11xxxx0xx000xxxxx101xx
                                                                      sumlall.  */
-                                                                  return 2799;
+                                                                  return 2802;
                                                                 }
                                                             }
                                                         }
@@ -3259,7 +3259,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx100xxxxx10xxx
                                                                      bfdot.  */
-                                                                  return 2453;
+                                                                  return 2456;
                                                                 }
                                                               else
                                                                 {
@@ -3267,7 +3267,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx100xxxxx10xxx
                                                                      bfdot.  */
-                                                                  return 2454;
+                                                                  return 2457;
                                                                 }
                                                             }
                                                           else
@@ -3278,7 +3278,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx100xxxxx10xxx
                                                                      bfdot.  */
-                                                                  return 2455;
+                                                                  return 2458;
                                                                 }
                                                               else
                                                                 {
@@ -3286,7 +3286,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx100xxxxx10xxx
                                                                      bfdot.  */
-                                                                  return 2456;
+                                                                  return 2459;
                                                                 }
                                                             }
                                                         }
@@ -3305,7 +3305,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010010xxxx0xx010xxxxx10xxx
                                                                          bfmlal.  */
-                                                                      return 2461;
+                                                                      return 2464;
                                                                     }
                                                                   else
                                                                     {
@@ -3313,7 +3313,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010011xxxx0xx010xxxxx10xxx
                                                                          bfmlal.  */
-                                                                      return 2462;
+                                                                      return 2465;
                                                                     }
                                                                 }
                                                               else
@@ -3324,7 +3324,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx00xx010xxxxx10xxx
                                                                          bfmlal.  */
-                                                                      return 2463;
+                                                                      return 2466;
                                                                     }
                                                                   else
                                                                     {
@@ -3332,7 +3332,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx10xx010xxxxx10xxx
                                                                          bfmlal.  */
-                                                                      return 2464;
+                                                                      return 2467;
                                                                     }
                                                                 }
                                                             }
@@ -3346,7 +3346,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010110xxxx0xx010xxxxx10xxx
                                                                          umlal.  */
-                                                                      return 2833;
+                                                                      return 2836;
                                                                     }
                                                                   else
                                                                     {
@@ -3354,7 +3354,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010111xxxx0xx010xxxxx10xxx
                                                                          umlal.  */
-                                                                      return 2834;
+                                                                      return 2837;
                                                                     }
                                                                 }
                                                               else
@@ -3365,7 +3365,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx00xx010xxxxx10xxx
                                                                          umlal.  */
-                                                                      return 2835;
+                                                                      return 2838;
                                                                     }
                                                                   else
                                                                     {
@@ -3373,7 +3373,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx10xx010xxxxx10xxx
                                                                          umlal.  */
-                                                                      return 2836;
+                                                                      return 2839;
                                                                     }
                                                                 }
                                                             }
@@ -3388,7 +3388,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx110xxxxx10xxx
                                                                      add.  */
-                                                                  return 2443;
+                                                                  return 2446;
                                                                 }
                                                               else
                                                                 {
@@ -3396,7 +3396,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx110xxxxx10xxx
                                                                      add.  */
-                                                                  return 2444;
+                                                                  return 2447;
                                                                 }
                                                             }
                                                           else
@@ -3407,7 +3407,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx110xxxxx10xxx
                                                                      add.  */
-                                                                  return 2445;
+                                                                  return 2448;
                                                                 }
                                                               else
                                                                 {
@@ -3415,7 +3415,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx110xxxxx10xxx
                                                                      add.  */
-                                                                  return 2446;
+                                                                  return 2449;
                                                                 }
                                                             }
                                                         }
@@ -3431,7 +3431,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000001xx1xxxxx0xx001xxxxx10xxx
                                                              umlall.  */
-                                                          return 2840;
+                                                          return 2843;
                                                         }
                                                       else
                                                         {
@@ -3443,7 +3443,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx101xxxxx10xxx
                                                                      udot.  */
-                                                                  return 2817;
+                                                                  return 2820;
                                                                 }
                                                               else
                                                                 {
@@ -3451,7 +3451,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx101xxxxx10xxx
                                                                      udot.  */
-                                                                  return 2818;
+                                                                  return 2821;
                                                                 }
                                                             }
                                                           else
@@ -3462,7 +3462,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx101xxxxx10xxx
                                                                      udot.  */
-                                                                  return 2819;
+                                                                  return 2822;
                                                                 }
                                                               else
                                                                 {
@@ -3470,7 +3470,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx101xxxxx10xxx
                                                                      udot.  */
-                                                                  return 2820;
+                                                                  return 2823;
                                                                 }
                                                             }
                                                         }
@@ -3485,7 +3485,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x01xxxxx0xx011xxxxx10xxx
                                                                  bfmlal.  */
-                                                              return 2460;
+                                                              return 2463;
                                                             }
                                                           else
                                                             {
@@ -3493,7 +3493,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x11xxxxx0xx011xxxxx10xxx
                                                                  umlal.  */
-                                                              return 2832;
+                                                              return 2835;
                                                             }
                                                         }
                                                       else
@@ -3504,7 +3504,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx00xx111xxxxx10xxx
                                                                  add.  */
-                                                              return 2441;
+                                                              return 2444;
                                                             }
                                                           else
                                                             {
@@ -3512,7 +3512,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx10xx111xxxxx10xxx
                                                                  add.  */
-                                                              return 2442;
+                                                              return 2445;
                                                             }
                                                         }
                                                     }
@@ -3535,7 +3535,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000010x10xxxx0xxx00xxxxx01xxx
                                                                  smlsll.  */
-                                                              return 2694;
+                                                              return 2697;
                                                             }
                                                           else
                                                             {
@@ -3543,7 +3543,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000010x11xxxx0xxx00xxxxx01xxx
                                                                  smlsll.  */
-                                                              return 2695;
+                                                              return 2698;
                                                             }
                                                         }
                                                       else
@@ -3554,7 +3554,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011x1xxxx00xxx00xxxxx01xxx
                                                                  smlsll.  */
-                                                              return 2696;
+                                                              return 2699;
                                                             }
                                                           else
                                                             {
@@ -3562,7 +3562,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011x1xxxx10xxx00xxxxx01xxx
                                                                  smlsll.  */
-                                                              return 2697;
+                                                              return 2700;
                                                             }
                                                         }
                                                     }
@@ -3580,7 +3580,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010010xxxx0xx010xxxxx01xxx
                                                                          fmlsl.  */
-                                                                      return 2533;
+                                                                      return 2536;
                                                                     }
                                                                   else
                                                                     {
@@ -3588,7 +3588,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010011xxxx0xx010xxxxx01xxx
                                                                          fmlsl.  */
-                                                                      return 2534;
+                                                                      return 2537;
                                                                     }
                                                                 }
                                                               else
@@ -3599,7 +3599,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx00xx010xxxxx01xxx
                                                                          fmlsl.  */
-                                                                      return 2535;
+                                                                      return 2538;
                                                                     }
                                                                   else
                                                                     {
@@ -3607,7 +3607,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx10xx010xxxxx01xxx
                                                                          fmlsl.  */
-                                                                      return 2536;
+                                                                      return 2539;
                                                                     }
                                                                 }
                                                             }
@@ -3621,7 +3621,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010110xxxx0xx010xxxxx01xxx
                                                                          smlsl.  */
-                                                                      return 2686;
+                                                                      return 2689;
                                                                     }
                                                                   else
                                                                     {
@@ -3629,7 +3629,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010111xxxx0xx010xxxxx01xxx
                                                                          smlsl.  */
-                                                                      return 2687;
+                                                                      return 2690;
                                                                     }
                                                                 }
                                                               else
@@ -3640,7 +3640,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx00xx010xxxxx01xxx
                                                                          smlsl.  */
-                                                                      return 2688;
+                                                                      return 2691;
                                                                     }
                                                                   else
                                                                     {
@@ -3648,7 +3648,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx10xx010xxxxx01xxx
                                                                          smlsl.  */
-                                                                      return 2689;
+                                                                      return 2692;
                                                                     }
                                                                 }
                                                             }
@@ -3663,7 +3663,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx110xxxxx01xxx
                                                                      fmls.  */
-                                                                  return 2525;
+                                                                  return 2528;
                                                                 }
                                                               else
                                                                 {
@@ -3671,7 +3671,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx110xxxxx01xxx
                                                                      fmls.  */
-                                                                  return 2526;
+                                                                  return 2529;
                                                                 }
                                                             }
                                                           else
@@ -3682,7 +3682,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx110xxxxx01xxx
                                                                      fmls.  */
-                                                                  return 2527;
+                                                                  return 2530;
                                                                 }
                                                               else
                                                                 {
@@ -3690,7 +3690,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx110xxxxx01xxx
                                                                      fmls.  */
-                                                                  return 2528;
+                                                                  return 2531;
                                                                 }
                                                             }
                                                         }
@@ -3706,7 +3706,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000001xx1xxxxx0xx001xxxxx01xxx
                                                              smlsll.  */
-                                                          return 2693;
+                                                          return 2696;
                                                         }
                                                       else
                                                         {
@@ -3720,7 +3720,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010010xxxx0xx101xxxxx01xxx
                                                                          usdot.  */
-                                                                      return 2875;
+                                                                      return 2878;
                                                                     }
                                                                   else
                                                                     {
@@ -3728,7 +3728,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010011xxxx0xx101xxxxx01xxx
                                                                          usdot.  */
-                                                                      return 2876;
+                                                                      return 2879;
                                                                     }
                                                                 }
                                                               else
@@ -3739,7 +3739,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx00xx101xxxxx01xxx
                                                                          usdot.  */
-                                                                      return 2877;
+                                                                      return 2880;
                                                                     }
                                                                   else
                                                                     {
@@ -3747,7 +3747,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx10xx101xxxxx01xxx
                                                                          usdot.  */
-                                                                      return 2878;
+                                                                      return 2881;
                                                                     }
                                                                 }
                                                             }
@@ -3761,7 +3761,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010110xxxx0xx101xxxxx01xxx
                                                                          sdot.  */
-                                                                      return 2646;
+                                                                      return 2649;
                                                                     }
                                                                   else
                                                                     {
@@ -3769,7 +3769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010111xxxx0xx101xxxxx01xxx
                                                                          sdot.  */
-                                                                      return 2647;
+                                                                      return 2650;
                                                                     }
                                                                 }
                                                               else
@@ -3780,7 +3780,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx00xx101xxxxx01xxx
                                                                          sdot.  */
-                                                                      return 2648;
+                                                                      return 2651;
                                                                     }
                                                                   else
                                                                     {
@@ -3788,7 +3788,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx10xx101xxxxx01xxx
                                                                          sdot.  */
-                                                                      return 2649;
+                                                                      return 2652;
                                                                     }
                                                                 }
                                                             }
@@ -3804,7 +3804,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x01xxxxx0xx011xxxxx01xxx
                                                                  fmlsl.  */
-                                                              return 2532;
+                                                              return 2535;
                                                             }
                                                           else
                                                             {
@@ -3812,7 +3812,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x11xxxxx0xx011xxxxx01xxx
                                                                  smlsl.  */
-                                                              return 2685;
+                                                              return 2688;
                                                             }
                                                         }
                                                       else
@@ -3823,7 +3823,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx00xx111xxxxx01xxx
                                                                  fsub.  */
-                                                              return 2545;
+                                                              return 2548;
                                                             }
                                                           else
                                                             {
@@ -3831,7 +3831,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx10xx111xxxxx01xxx
                                                                  fsub.  */
-                                                              return 2546;
+                                                              return 2549;
                                                             }
                                                         }
                                                     }
@@ -3851,7 +3851,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000010x10xxxx0xxx00xxxxx11xxx
                                                                  umlsll.  */
-                                                              return 2857;
+                                                              return 2860;
                                                             }
                                                           else
                                                             {
@@ -3859,7 +3859,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000010x11xxxx0xxx00xxxxx11xxx
                                                                  umlsll.  */
-                                                              return 2858;
+                                                              return 2861;
                                                             }
                                                         }
                                                       else
@@ -3870,7 +3870,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011x1xxxx00xxx00xxxxx11xxx
                                                                  umlsll.  */
-                                                              return 2859;
+                                                              return 2862;
                                                             }
                                                           else
                                                             {
@@ -3878,7 +3878,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10000011x1xxxx10xxx00xxxxx11xxx
                                                                  umlsll.  */
-                                                              return 2860;
+                                                              return 2863;
                                                             }
                                                         }
                                                     }
@@ -3896,7 +3896,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010010xxxx0xx010xxxxx11xxx
                                                                          bfmlsl.  */
-                                                                      return 2469;
+                                                                      return 2472;
                                                                     }
                                                                   else
                                                                     {
@@ -3904,7 +3904,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010011xxxx0xx010xxxxx11xxx
                                                                          bfmlsl.  */
-                                                                      return 2470;
+                                                                      return 2473;
                                                                     }
                                                                 }
                                                               else
@@ -3915,7 +3915,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx00xx010xxxxx11xxx
                                                                          bfmlsl.  */
-                                                                      return 2471;
+                                                                      return 2474;
                                                                     }
                                                                   else
                                                                     {
@@ -3923,7 +3923,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001101xxxx10xx010xxxxx11xxx
                                                                          bfmlsl.  */
-                                                                      return 2472;
+                                                                      return 2475;
                                                                     }
                                                                 }
                                                             }
@@ -3937,7 +3937,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010110xxxx0xx010xxxxx11xxx
                                                                          umlsl.  */
-                                                                      return 2849;
+                                                                      return 2852;
                                                                     }
                                                                   else
                                                                     {
@@ -3945,7 +3945,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010111xxxx0xx010xxxxx11xxx
                                                                          umlsl.  */
-                                                                      return 2850;
+                                                                      return 2853;
                                                                     }
                                                                 }
                                                               else
@@ -3956,7 +3956,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx00xx010xxxxx11xxx
                                                                          umlsl.  */
-                                                                      return 2851;
+                                                                      return 2854;
                                                                     }
                                                                   else
                                                                     {
@@ -3964,7 +3964,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx10xx010xxxxx11xxx
                                                                          umlsl.  */
-                                                                      return 2852;
+                                                                      return 2855;
                                                                     }
                                                                 }
                                                             }
@@ -3979,7 +3979,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x10xxxx0xx110xxxxx11xxx
                                                                      sub.  */
-                                                                  return 2787;
+                                                                  return 2790;
                                                                 }
                                                               else
                                                                 {
@@ -3987,7 +3987,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000010x11xxxx0xx110xxxxx11xxx
                                                                      sub.  */
-                                                                  return 2788;
+                                                                  return 2791;
                                                                 }
                                                             }
                                                           else
@@ -3998,7 +3998,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx00xx110xxxxx11xxx
                                                                      sub.  */
-                                                                  return 2789;
+                                                                  return 2792;
                                                                 }
                                                               else
                                                                 {
@@ -4006,7 +4006,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x10000011x1xxxx10xx110xxxxx11xxx
                                                                      sub.  */
-                                                                  return 2790;
+                                                                  return 2793;
                                                                 }
                                                             }
                                                         }
@@ -4022,7 +4022,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000001xx1xxxxx0xx001xxxxx11xxx
                                                              umlsll.  */
-                                                          return 2856;
+                                                          return 2859;
                                                         }
                                                       else
                                                         {
@@ -4034,7 +4034,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001x010xxxx0xx101xxxxx11xxx
                                                                      sudot.  */
-                                                                  return 2793;
+                                                                  return 2796;
                                                                 }
                                                               else
                                                                 {
@@ -4042,7 +4042,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001x011xxxx0xx101xxxxx11xxx
                                                                      sudot.  */
-                                                                  return 2794;
+                                                                  return 2797;
                                                                 }
                                                             }
                                                           else
@@ -4055,7 +4055,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010110xxxx0xx101xxxxx11xxx
                                                                          udot.  */
-                                                                      return 2811;
+                                                                      return 2814;
                                                                     }
                                                                   else
                                                                     {
@@ -4063,7 +4063,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x10000010111xxxx0xx101xxxxx11xxx
                                                                          udot.  */
-                                                                      return 2812;
+                                                                      return 2815;
                                                                     }
                                                                 }
                                                               else
@@ -4074,7 +4074,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx00xx101xxxxx11xxx
                                                                          udot.  */
-                                                                      return 2813;
+                                                                      return 2816;
                                                                     }
                                                                   else
                                                                     {
@@ -4082,7 +4082,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001111xxxx10xx101xxxxx11xxx
                                                                          udot.  */
-                                                                      return 2814;
+                                                                      return 2817;
                                                                     }
                                                                 }
                                                             }
@@ -4098,7 +4098,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x01xxxxx0xx011xxxxx11xxx
                                                                  bfmlsl.  */
-                                                              return 2468;
+                                                              return 2471;
                                                             }
                                                           else
                                                             {
@@ -4106,7 +4106,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001x11xxxxx0xx011xxxxx11xxx
                                                                  umlsl.  */
-                                                              return 2848;
+                                                              return 2851;
                                                             }
                                                         }
                                                       else
@@ -4117,7 +4117,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx00xx111xxxxx11xxx
                                                                  sub.  */
-                                                              return 2785;
+                                                              return 2788;
                                                             }
                                                           else
                                                             {
@@ -4125,7 +4125,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxx10xx111xxxxx11xxx
                                                                  sub.  */
-                                                              return 2786;
+                                                              return 2789;
                                                             }
                                                         }
                                                     }
@@ -4145,7 +4145,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000001xx1xxxx0100xxxxxxxxxxxxx
                                                      sel.  */
-                                                  return 2656;
+                                                  return 2659;
                                                 }
                                               else
                                                 {
@@ -4153,7 +4153,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1000001xx1xxxx1100xxxxxxxxxxxxx
                                                      sel.  */
-                                                  return 2657;
+                                                  return 2660;
                                                 }
                                             }
                                           else
@@ -4170,7 +4170,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110000xxxxxxxxx0
                                                                  fclamp.  */
-                                                              return 2479;
+                                                              return 2482;
                                                             }
                                                           else
                                                             {
@@ -4178,7 +4178,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110100xxxxxxxxx0
                                                                  zip.  */
-                                                              return 2905;
+                                                              return 2908;
                                                             }
                                                         }
                                                       else
@@ -4187,7 +4187,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000001xx1xxxxx110x00xxxxxxxxx1
                                                              uzp.  */
-                                                          return 2892;
+                                                          return 2895;
                                                         }
                                                     }
                                                   else
@@ -4198,7 +4198,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1000001xx1xxxxx110010xxxxxxxxxx
                                                              fclamp.  */
-                                                          return 2480;
+                                                          return 2483;
                                                         }
                                                       else
                                                         {
@@ -4210,7 +4210,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx110110xxx00xxxxx
                                                                      sqrshr.  */
-                                                                  return 2711;
+                                                                  return 2714;
                                                                 }
                                                               else
                                                                 {
@@ -4218,7 +4218,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx110110xxx10xxxxx
                                                                      sqrshru.  */
-                                                                  return 2714;
+                                                                  return 2717;
                                                                 }
                                                             }
                                                           else
@@ -4227,7 +4227,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110110xxxx1xxxxx
                                                                  uqrshr.  */
-                                                              return 2867;
+                                                              return 2870;
                                                             }
                                                         }
                                                     }
@@ -4244,7 +4244,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110001xxxxxxxxx0
                                                                  sclamp.  */
-                                                              return 2640;
+                                                              return 2643;
                                                             }
                                                           else
                                                             {
@@ -4252,7 +4252,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110001xxxxxxxxx1
                                                                  uclamp.  */
-                                                              return 2805;
+                                                              return 2808;
                                                             }
                                                         }
                                                       else
@@ -4265,7 +4265,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001x01xxxxx110101xxxxxxxxx0
                                                                      zip.  */
-                                                                  return 2906;
+                                                                  return 2909;
                                                                 }
                                                               else
                                                                 {
@@ -4273,7 +4273,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001x01xxxxx110101xxxxxxxxx1
                                                                      uzp.  */
-                                                                  return 2893;
+                                                                  return 2896;
                                                                 }
                                                             }
                                                           else
@@ -4286,7 +4286,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001x110xxxx110101xxxx0xxxxx
                                                                          sqrshr.  */
-                                                                      return 2710;
+                                                                      return 2713;
                                                                     }
                                                                   else
                                                                     {
@@ -4294,7 +4294,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001x111xxxx110101xxxx0xxxxx
                                                                          sqrshru.  */
-                                                                      return 2713;
+                                                                      return 2716;
                                                                     }
                                                                 }
                                                               else
@@ -4303,7 +4303,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001x11xxxxx110101xxxx1xxxxx
                                                                      uqrshr.  */
-                                                                  return 2866;
+                                                                  return 2869;
                                                                 }
                                                             }
                                                         }
@@ -4318,7 +4318,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110011xxxxxxxxx0
                                                                  sclamp.  */
-                                                              return 2641;
+                                                              return 2644;
                                                             }
                                                           else
                                                             {
@@ -4326,7 +4326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110011xxxxxxxxx1
                                                                  uclamp.  */
-                                                              return 2806;
+                                                              return 2809;
                                                             }
                                                         }
                                                       else
@@ -4339,7 +4339,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx110111xxx00xxxxx
                                                                      sqrshrn.  */
-                                                                  return 2712;
+                                                                  return 2715;
                                                                 }
                                                               else
                                                                 {
@@ -4347,7 +4347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx110111xxx10xxxxx
                                                                      sqrshrun.  */
-                                                                  return 2715;
+                                                                  return 2718;
                                                                 }
                                                             }
                                                           else
@@ -4356,7 +4356,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1000001xx1xxxxx110111xxxx1xxxxx
                                                                  uqrshrn.  */
-                                                              return 2868;
+                                                              return 2871;
                                                             }
                                                         }
                                                     }
@@ -4383,7 +4383,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx101000x0xx0xxxx0
                                                                          smax.  */
-                                                                      return 2658;
+                                                                      return 2661;
                                                                     }
                                                                   else
                                                                     {
@@ -4393,7 +4393,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx1xxxxx10100001xx0xxxx0
                                                                              fmax.  */
-                                                                          return 2493;
+                                                                          return 2496;
                                                                         }
                                                                       else
                                                                         {
@@ -4401,7 +4401,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx1xxxxx10100011xx0xxxx0
                                                                              add.  */
-                                                                          return 2447;
+                                                                          return 2450;
                                                                         }
                                                                     }
                                                                 }
@@ -4415,7 +4415,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx1xxxxx10100000xx1xxxx0
                                                                              smin.  */
-                                                                          return 2662;
+                                                                          return 2665;
                                                                         }
                                                                       else
                                                                         {
@@ -4423,7 +4423,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx1xxxxx10100010xx1xxxx0
                                                                              srshl.  */
-                                                                          return 2716;
+                                                                          return 2719;
                                                                         }
                                                                     }
                                                                   else
@@ -4432,7 +4432,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx101000x1xx1xxxx0
                                                                          fmaxnm.  */
-                                                                      return 2497;
+                                                                      return 2500;
                                                                     }
                                                                 }
                                                             }
@@ -4446,7 +4446,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx101000x0xx0xxxx1
                                                                          umax.  */
-                                                                      return 2821;
+                                                                      return 2824;
                                                                     }
                                                                   else
                                                                     {
@@ -4454,7 +4454,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx101000x1xx0xxxx1
                                                                          fmin.  */
-                                                                      return 2501;
+                                                                      return 2504;
                                                                     }
                                                                 }
                                                               else
@@ -4467,7 +4467,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx1xxxxx10100000xx1xxxx1
                                                                              umin.  */
-                                                                          return 2825;
+                                                                          return 2828;
                                                                         }
                                                                       else
                                                                         {
@@ -4475,7 +4475,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx1xxxxx10100010xx1xxxx1
                                                                              urshl.  */
-                                                                          return 2869;
+                                                                          return 2872;
                                                                         }
                                                                     }
                                                                   else
@@ -4484,7 +4484,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx101000x1xx1xxxx1
                                                                          fminnm.  */
-                                                                      return 2505;
+                                                                      return 2508;
                                                                     }
                                                                 }
                                                             }
@@ -4507,7 +4507,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001x01x0000111000xxxx0xxxxx
                                                                                      fcvt.  */
-                                                                                  return 2481;
+                                                                                  return 2484;
                                                                                 }
                                                                               else
                                                                                 {
@@ -4515,7 +4515,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001x11x0000111000xxxx0xxxxx
                                                                                      bfcvt.  */
-                                                                                  return 2449;
+                                                                                  return 2452;
                                                                                 }
                                                                             }
                                                                           else
@@ -4526,7 +4526,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx101000111000xxxx0xxxxx
                                                                                      frintn.  */
-                                                                                  return 2541;
+                                                                                  return 2544;
                                                                                 }
                                                                               else
                                                                                 {
@@ -4534,7 +4534,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx111000111000xxxx0xxxxx
                                                                                      frintn.  */
-                                                                                  return 2542;
+                                                                                  return 2545;
                                                                                 }
                                                                             }
                                                                         }
@@ -4546,7 +4546,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx10x100111000xxxx0xxxxx
                                                                                  frinta.  */
-                                                                              return 2537;
+                                                                              return 2540;
                                                                             }
                                                                           else
                                                                             {
@@ -4554,7 +4554,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx11x100111000xxxx0xxxxx
                                                                                  frinta.  */
-                                                                              return 2538;
+                                                                              return 2541;
                                                                             }
                                                                         }
                                                                     }
@@ -4570,7 +4570,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx100010111000xxxx0xxxxx
                                                                                      scvtf.  */
-                                                                                  return 2642;
+                                                                                  return 2645;
                                                                                 }
                                                                               else
                                                                                 {
@@ -4578,7 +4578,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx110010111000xxxx0xxxxx
                                                                                      scvtf.  */
-                                                                                  return 2643;
+                                                                                  return 2646;
                                                                                 }
                                                                             }
                                                                           else
@@ -4589,7 +4589,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx101010111000xxxx0xxxxx
                                                                                      frintm.  */
-                                                                                  return 2539;
+                                                                                  return 2542;
                                                                                 }
                                                                               else
                                                                                 {
@@ -4597,7 +4597,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx111010111000xxxx0xxxxx
                                                                                      frintm.  */
-                                                                                  return 2540;
+                                                                                  return 2543;
                                                                                 }
                                                                             }
                                                                         }
@@ -4609,7 +4609,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx1xx110111000xxxx0xxx0x
                                                                                  zip.  */
-                                                                              return 2907;
+                                                                              return 2910;
                                                                             }
                                                                           else
                                                                             {
@@ -4617,7 +4617,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx1xx110111000xxxx0xxx1x
                                                                                  uzp.  */
-                                                                              return 2894;
+                                                                              return 2897;
                                                                             }
                                                                         }
                                                                     }
@@ -4632,7 +4632,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001x01xxx00111000xxxx1xxxxx
                                                                              fcvtn.  */
-                                                                          return 2482;
+                                                                          return 2485;
                                                                         }
                                                                       else
                                                                         {
@@ -4640,7 +4640,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001x11xxx00111000xxxx1xxxxx
                                                                              bfcvtn.  */
-                                                                          return 2450;
+                                                                          return 2453;
                                                                         }
                                                                     }
                                                                   else
@@ -4651,7 +4651,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx10xx10111000xxxx1xxxxx
                                                                              ucvtf.  */
-                                                                          return 2807;
+                                                                          return 2810;
                                                                         }
                                                                       else
                                                                         {
@@ -4659,7 +4659,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx11xx10111000xxxx1xxxxx
                                                                              ucvtf.  */
-                                                                          return 2808;
+                                                                          return 2811;
                                                                         }
                                                                     }
                                                                 }
@@ -4682,7 +4682,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001xx100001111000xxxx0xxxx0
                                                                                          fcvtzs.  */
-                                                                                      return 2483;
+                                                                                      return 2486;
                                                                                     }
                                                                                   else
                                                                                     {
@@ -4690,7 +4690,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001xx110001111000xxxx0xxxx0
                                                                                          fcvtzs.  */
-                                                                                      return 2484;
+                                                                                      return 2487;
                                                                                     }
                                                                                 }
                                                                               else
@@ -4701,7 +4701,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001xx101001111000xxxx0xxxx0
                                                                                          frintp.  */
-                                                                                      return 2543;
+                                                                                      return 2546;
                                                                                     }
                                                                                   else
                                                                                     {
@@ -4709,7 +4709,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001xx111001111000xxxx0xxxx0
                                                                                          frintp.  */
-                                                                                      return 2544;
+                                                                                      return 2547;
                                                                                     }
                                                                                 }
                                                                             }
@@ -4721,7 +4721,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx10x001111000xxxx1xxxx0
                                                                                      fcvtzu.  */
-                                                                                  return 2485;
+                                                                                  return 2488;
                                                                                 }
                                                                               else
                                                                                 {
@@ -4729,7 +4729,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001xx11x001111000xxxx1xxxx0
                                                                                      fcvtzu.  */
-                                                                                  return 2486;
+                                                                                  return 2489;
                                                                                 }
                                                                             }
                                                                         }
@@ -4741,7 +4741,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx10x101111000xxxxxxxxx0
                                                                                  sunpk.  */
-                                                                              return 2800;
+                                                                              return 2803;
                                                                             }
                                                                           else
                                                                             {
@@ -4749,7 +4749,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx11x101111000xxxxxxxxx0
                                                                                  sunpk.  */
-                                                                              return 2801;
+                                                                              return 2804;
                                                                             }
                                                                         }
                                                                     }
@@ -4761,7 +4761,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx10xx01111000xxxxxxxxx1
                                                                              uunpk.  */
-                                                                          return 2888;
+                                                                          return 2891;
                                                                         }
                                                                       else
                                                                         {
@@ -4769,7 +4769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx11xx01111000xxxxxxxxx1
                                                                              uunpk.  */
-                                                                          return 2889;
+                                                                          return 2892;
                                                                         }
                                                                     }
                                                                 }
@@ -4787,7 +4787,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001x010x011111000xxxx0xxxxx
                                                                                      sqcvt.  */
-                                                                                  return 2700;
+                                                                                  return 2703;
                                                                                 }
                                                                               else
                                                                                 {
@@ -4795,7 +4795,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                      10987654321098765432109876543210
                                                                                      x1000001x110x011111000xxxx0xxxxx
                                                                                      sqcvtu.  */
-                                                                                  return 2703;
+                                                                                  return 2706;
                                                                                 }
                                                                             }
                                                                           else
@@ -4808,7 +4808,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001x011x011111000xxx00xxxxx
                                                                                          sqcvt.  */
-                                                                                      return 2701;
+                                                                                      return 2704;
                                                                                     }
                                                                                   else
                                                                                     {
@@ -4816,7 +4816,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001x111x011111000xxx00xxxxx
                                                                                          sqcvtu.  */
-                                                                                      return 2704;
+                                                                                      return 2707;
                                                                                     }
                                                                                 }
                                                                               else
@@ -4827,7 +4827,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001x011x011111000xxx10xxxxx
                                                                                          sqcvtn.  */
-                                                                                      return 2702;
+                                                                                      return 2705;
                                                                                     }
                                                                                   else
                                                                                     {
@@ -4835,7 +4835,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                          10987654321098765432109876543210
                                                                                          x1000001x111x011111000xxx10xxxxx
                                                                                          sqcvtun.  */
-                                                                                      return 2705;
+                                                                                      return 2708;
                                                                                     }
                                                                                 }
                                                                             }
@@ -4848,7 +4848,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx1xx111111000xxxx0xxx0x
                                                                                  zip.  */
-                                                                              return 2908;
+                                                                              return 2911;
                                                                             }
                                                                           else
                                                                             {
@@ -4856,7 +4856,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx1xx111111000xxxx0xxx1x
                                                                                  uzp.  */
-                                                                              return 2895;
+                                                                              return 2898;
                                                                             }
                                                                         }
                                                                     }
@@ -4868,7 +4868,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              x1000001xx10xx11111000xxxx1xxxxx
                                                                              uqcvt.  */
-                                                                          return 2863;
+                                                                          return 2866;
                                                                         }
                                                                       else
                                                                         {
@@ -4878,7 +4878,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx11xx11111000xxx01xxxxx
                                                                                  uqcvt.  */
-                                                                              return 2864;
+                                                                              return 2867;
                                                                             }
                                                                           else
                                                                             {
@@ -4886,7 +4886,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  x1000001xx11xx11111000xxx11xxxxx
                                                                                  uqcvtn.  */
-                                                                              return 2865;
+                                                                              return 2868;
                                                                             }
                                                                         }
                                                                     }
@@ -4906,7 +4906,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1100x0xx0xxxx0
                                                                      smax.  */
-                                                                  return 2660;
+                                                                  return 2663;
                                                                 }
                                                               else
                                                                 {
@@ -4914,7 +4914,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1100x1xx0xxxx0
                                                                      fmax.  */
-                                                                  return 2495;
+                                                                  return 2498;
                                                                 }
                                                             }
                                                           else
@@ -4927,7 +4927,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x110000xx1xxxx0
                                                                          smin.  */
-                                                                      return 2664;
+                                                                      return 2667;
                                                                     }
                                                                   else
                                                                     {
@@ -4935,7 +4935,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x110010xx1xxxx0
                                                                          srshl.  */
-                                                                      return 2718;
+                                                                      return 2721;
                                                                     }
                                                                 }
                                                               else
@@ -4944,7 +4944,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1100x1xx1xxxx0
                                                                      fmaxnm.  */
-                                                                  return 2499;
+                                                                  return 2502;
                                                                 }
                                                             }
                                                         }
@@ -4958,7 +4958,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1100x0xx0xxxx1
                                                                      umax.  */
-                                                                  return 2823;
+                                                                  return 2826;
                                                                 }
                                                               else
                                                                 {
@@ -4966,7 +4966,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1100x1xx0xxxx1
                                                                      fmin.  */
-                                                                  return 2503;
+                                                                  return 2506;
                                                                 }
                                                             }
                                                           else
@@ -4979,7 +4979,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x110000xx1xxxx1
                                                                          umin.  */
-                                                                      return 2827;
+                                                                      return 2830;
                                                                     }
                                                                   else
                                                                     {
@@ -4987,7 +4987,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x110010xx1xxxx1
                                                                          urshl.  */
-                                                                      return 2871;
+                                                                      return 2874;
                                                                     }
                                                                 }
                                                               else
@@ -4996,7 +4996,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1100x1xx1xxxx1
                                                                      fminnm.  */
-                                                                  return 2507;
+                                                                  return 2510;
                                                                 }
                                                             }
                                                         }
@@ -5016,7 +5016,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1010x0xx0xxxx0
                                                                      smax.  */
-                                                                  return 2659;
+                                                                  return 2662;
                                                                 }
                                                               else
                                                                 {
@@ -5024,7 +5024,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1110x0xx0xxxx0
                                                                      smax.  */
-                                                                  return 2661;
+                                                                  return 2664;
                                                                 }
                                                             }
                                                           else
@@ -5037,7 +5037,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x101001xx0xxxx0
                                                                          fmax.  */
-                                                                      return 2494;
+                                                                      return 2497;
                                                                     }
                                                                   else
                                                                     {
@@ -5045,7 +5045,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x111001xx0xxxx0
                                                                          fmax.  */
-                                                                      return 2496;
+                                                                      return 2499;
                                                                     }
                                                                 }
                                                               else
@@ -5054,7 +5054,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1x1011xx0xxxx0
                                                                      add.  */
-                                                                  return 2448;
+                                                                  return 2451;
                                                                 }
                                                             }
                                                         }
@@ -5070,7 +5070,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x101000xx1xxxx0
                                                                          smin.  */
-                                                                      return 2663;
+                                                                      return 2666;
                                                                     }
                                                                   else
                                                                     {
@@ -5078,7 +5078,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x111000xx1xxxx0
                                                                          smin.  */
-                                                                      return 2665;
+                                                                      return 2668;
                                                                     }
                                                                 }
                                                               else
@@ -5089,7 +5089,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x101010xx1xxxx0
                                                                          srshl.  */
-                                                                      return 2717;
+                                                                      return 2720;
                                                                     }
                                                                   else
                                                                     {
@@ -5097,7 +5097,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x111010xx1xxxx0
                                                                          srshl.  */
-                                                                      return 2719;
+                                                                      return 2722;
                                                                     }
                                                                 }
                                                             }
@@ -5109,7 +5109,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1010x1xx1xxxx0
                                                                      fmaxnm.  */
-                                                                  return 2498;
+                                                                  return 2501;
                                                                 }
                                                               else
                                                                 {
@@ -5117,7 +5117,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1110x1xx1xxxx0
                                                                      fmaxnm.  */
-                                                                  return 2500;
+                                                                  return 2503;
                                                                 }
                                                             }
                                                         }
@@ -5134,7 +5134,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1010x0xx0xxxx1
                                                                      umax.  */
-                                                                  return 2822;
+                                                                  return 2825;
                                                                 }
                                                               else
                                                                 {
@@ -5142,7 +5142,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1110x0xx0xxxx1
                                                                      umax.  */
-                                                                  return 2824;
+                                                                  return 2827;
                                                                 }
                                                             }
                                                           else
@@ -5153,7 +5153,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1010x1xx0xxxx1
                                                                      fmin.  */
-                                                                  return 2502;
+                                                                  return 2505;
                                                                 }
                                                               else
                                                                 {
@@ -5161,7 +5161,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1110x1xx0xxxx1
                                                                      fmin.  */
-                                                                  return 2504;
+                                                                  return 2507;
                                                                 }
                                                             }
                                                         }
@@ -5177,7 +5177,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x101000xx1xxxx1
                                                                          umin.  */
-                                                                      return 2826;
+                                                                      return 2829;
                                                                     }
                                                                   else
                                                                     {
@@ -5185,7 +5185,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x111000xx1xxxx1
                                                                          umin.  */
-                                                                      return 2828;
+                                                                      return 2831;
                                                                     }
                                                                 }
                                                               else
@@ -5196,7 +5196,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x101010xx1xxxx1
                                                                          urshl.  */
-                                                                      return 2870;
+                                                                      return 2873;
                                                                     }
                                                                   else
                                                                     {
@@ -5204,7 +5204,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          x1000001xx1xxxxx1x111010xx1xxxx1
                                                                          urshl.  */
-                                                                      return 2872;
+                                                                      return 2875;
                                                                     }
                                                                 }
                                                             }
@@ -5216,7 +5216,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1010x1xx1xxxx1
                                                                      fminnm.  */
-                                                                  return 2506;
+                                                                  return 2509;
                                                                 }
                                                               else
                                                                 {
@@ -5224,7 +5224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      x1000001xx1xxxxx1x1110x1xx1xxxx1
                                                                      fminnm.  */
-                                                                  return 2508;
+                                                                  return 2511;
                                                                 }
                                                             }
                                                         }
@@ -5241,7 +5241,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000001xx1xxxxx1x1001xxxxxxxxxx
                                                          sqdmulh.  */
-                                                      return 2706;
+                                                      return 2709;
                                                     }
                                                   else
                                                     {
@@ -5249,7 +5249,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000001xx1xxxxx1x1101xxxxxxxxxx
                                                          sqdmulh.  */
-                                                      return 2708;
+                                                      return 2711;
                                                     }
                                                 }
                                               else
@@ -5260,7 +5260,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000001xx1xxxxx1x1011xxxxxxxxxx
                                                          sqdmulh.  */
-                                                      return 2707;
+                                                      return 2710;
                                                     }
                                                   else
                                                     {
@@ -5268,7 +5268,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x1000001xx1xxxxx1x1111xxxxxxxxxx
                                                          sqdmulh.  */
-                                                      return 2709;
+                                                      return 2712;
                                                     }
                                                 }
                                             }
@@ -5296,7 +5296,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx000xxxxxxxxx0xxx
                                                              st1b.  */
-                                                          return 2726;
+                                                          return 2729;
                                                         }
                                                       else
                                                         {
@@ -5304,7 +5304,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx010xxxxxxxxx0xxx
                                                              st1w.  */
-                                                          return 2750;
+                                                          return 2753;
                                                         }
                                                     }
                                                   else
@@ -5315,7 +5315,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx001xxxxxxxxx0xxx
                                                              st1h.  */
-                                                          return 2742;
+                                                          return 2745;
                                                         }
                                                       else
                                                         {
@@ -5323,7 +5323,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx011xxxxxxxxx0xxx
                                                              st1d.  */
-                                                          return 2734;
+                                                          return 2737;
                                                         }
                                                     }
                                                 }
@@ -5337,7 +5337,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx000xxxxxxxxx1xxx
                                                              stnt1b.  */
-                                                          return 2758;
+                                                          return 2761;
                                                         }
                                                       else
                                                         {
@@ -5345,7 +5345,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx010xxxxxxxxx1xxx
                                                              stnt1w.  */
-                                                          return 2782;
+                                                          return 2785;
                                                         }
                                                     }
                                                   else
@@ -5356,7 +5356,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx001xxxxxxxxx1xxx
                                                              stnt1h.  */
-                                                          return 2774;
+                                                          return 2777;
                                                         }
                                                       else
                                                         {
@@ -5364,7 +5364,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx011xxxxxxxxx1xxx
                                                              stnt1d.  */
-                                                          return 2766;
+                                                          return 2769;
                                                         }
                                                     }
                                                 }
@@ -5392,7 +5392,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x0100001001xxxxx100xxxxxxxxx0xxx
                                                              st1b.  */
-                                                          return 2727;
+                                                          return 2730;
                                                         }
                                                       else
                                                         {
@@ -5400,7 +5400,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x1100001001xxxxx100xxxxxxxxx0xxx
                                                              str.  */
-                                                          return 2784;
+                                                          return 2787;
                                                         }
                                                     }
                                                   else
@@ -5409,7 +5409,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx110xxxxxxxxx0xxx
                                                          st1w.  */
-                                                      return 2751;
+                                                      return 2754;
                                                     }
                                                 }
                                               else
@@ -5420,7 +5420,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx101xxxxxxxxx0xxx
                                                          st1h.  */
-                                                      return 2743;
+                                                      return 2746;
                                                     }
                                                   else
                                                     {
@@ -5428,7 +5428,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx111xxxxxxxxx0xxx
                                                          st1d.  */
-                                                      return 2735;
+                                                      return 2738;
                                                     }
                                                 }
                                             }
@@ -5442,7 +5442,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx100xxxxxxxxx1xxx
                                                          stnt1b.  */
-                                                      return 2759;
+                                                      return 2762;
                                                     }
                                                   else
                                                     {
@@ -5450,7 +5450,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx110xxxxxxxxx1xxx
                                                          stnt1w.  */
-                                                      return 2783;
+                                                      return 2786;
                                                     }
                                                 }
                                               else
@@ -5461,7 +5461,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx101xxxxxxxxx1xxx
                                                          stnt1h.  */
-                                                      return 2775;
+                                                      return 2778;
                                                     }
                                                   else
                                                     {
@@ -5469,7 +5469,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001001xxxxx111xxxxxxxxx1xxx
                                                          stnt1d.  */
-                                                      return 2767;
+                                                      return 2770;
                                                     }
                                                 }
                                             }
@@ -5511,7 +5511,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx000xxxxxxxxx0xxx
                                                          st1b.  */
-                                                      return 2722;
+                                                      return 2725;
                                                     }
                                                   else
                                                     {
@@ -5519,7 +5519,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx100xxxxxxxxx0xxx
                                                          st1b.  */
-                                                      return 2723;
+                                                      return 2726;
                                                     }
                                                 }
                                               else
@@ -5530,7 +5530,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx010xxxxxxxxx0xxx
                                                          st1w.  */
-                                                      return 2746;
+                                                      return 2749;
                                                     }
                                                   else
                                                     {
@@ -5538,7 +5538,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx110xxxxxxxxx0xxx
                                                          st1w.  */
-                                                      return 2747;
+                                                      return 2750;
                                                     }
                                                 }
                                             }
@@ -5552,7 +5552,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx001xxxxxxxxx0xxx
                                                          st1h.  */
-                                                      return 2738;
+                                                      return 2741;
                                                     }
                                                   else
                                                     {
@@ -5560,7 +5560,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx101xxxxxxxxx0xxx
                                                          st1h.  */
-                                                      return 2739;
+                                                      return 2742;
                                                     }
                                                 }
                                               else
@@ -5571,7 +5571,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx011xxxxxxxxx0xxx
                                                          st1d.  */
-                                                      return 2730;
+                                                      return 2733;
                                                     }
                                                   else
                                                     {
@@ -5579,7 +5579,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx111xxxxxxxxx0xxx
                                                          st1d.  */
-                                                      return 2731;
+                                                      return 2734;
                                                     }
                                                 }
                                             }
@@ -5596,7 +5596,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx000xxxxxxxxx1xxx
                                                          stnt1b.  */
-                                                      return 2754;
+                                                      return 2757;
                                                     }
                                                   else
                                                     {
@@ -5604,7 +5604,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx100xxxxxxxxx1xxx
                                                          stnt1b.  */
-                                                      return 2755;
+                                                      return 2758;
                                                     }
                                                 }
                                               else
@@ -5615,7 +5615,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx010xxxxxxxxx1xxx
                                                          stnt1w.  */
-                                                      return 2778;
+                                                      return 2781;
                                                     }
                                                   else
                                                     {
@@ -5623,7 +5623,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx110xxxxxxxxx1xxx
                                                          stnt1w.  */
-                                                      return 2779;
+                                                      return 2782;
                                                     }
                                                 }
                                             }
@@ -5637,7 +5637,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx001xxxxxxxxx1xxx
                                                          stnt1h.  */
-                                                      return 2770;
+                                                      return 2773;
                                                     }
                                                   else
                                                     {
@@ -5645,7 +5645,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx101xxxxxxxxx1xxx
                                                          stnt1h.  */
-                                                      return 2771;
+                                                      return 2774;
                                                     }
                                                 }
                                               else
@@ -5656,7 +5656,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx011xxxxxxxxx1xxx
                                                          stnt1d.  */
-                                                      return 2762;
+                                                      return 2765;
                                                     }
                                                   else
                                                     {
@@ -5664,7 +5664,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx100001011xxxxx111xxxxxxxxx1xxx
                                                          stnt1d.  */
-                                                      return 2763;
+                                                      return 2766;
                                                     }
                                                 }
                                             }
@@ -8066,7 +8066,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          00011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlurb.  */
-                                                      return 2971;
+                                                      return 2974;
                                                     }
                                                   else
                                                     {
@@ -8074,7 +8074,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          10011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlur.  */
-                                                      return 2979;
+                                                      return 2982;
                                                     }
                                                 }
                                               else
@@ -8085,7 +8085,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          01011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlurh.  */
-                                                      return 2975;
+                                                      return 2978;
                                                     }
                                                   else
                                                     {
@@ -8093,7 +8093,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          11011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlur.  */
-                                                      return 2982;
+                                                      return 2985;
                                                     }
                                                 }
                                             }
@@ -8131,7 +8131,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0000x1xxxxxxxxxx
                                                              cpyfp.  */
-                                                          return 3031;
+                                                          return 3034;
                                                         }
                                                       else
                                                         {
@@ -8139,7 +8139,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1000x1xxxxxxxxxx
                                                              cpyfprn.  */
-                                                          return 3037;
+                                                          return 3040;
                                                         }
                                                     }
                                                   else
@@ -8150,7 +8150,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0100x1xxxxxxxxxx
                                                              cpyfpwn.  */
-                                                          return 3034;
+                                                          return 3037;
                                                         }
                                                       else
                                                         {
@@ -8158,7 +8158,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1100x1xxxxxxxxxx
                                                              cpyfpn.  */
-                                                          return 3040;
+                                                          return 3043;
                                                         }
                                                     }
                                                 }
@@ -8172,7 +8172,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0010x1xxxxxxxxxx
                                                              cpyfprt.  */
-                                                          return 3055;
+                                                          return 3058;
                                                         }
                                                       else
                                                         {
@@ -8180,7 +8180,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1010x1xxxxxxxxxx
                                                              cpyfprtrn.  */
-                                                          return 3061;
+                                                          return 3064;
                                                         }
                                                     }
                                                   else
@@ -8191,7 +8191,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0110x1xxxxxxxxxx
                                                              cpyfprtwn.  */
-                                                          return 3058;
+                                                          return 3061;
                                                         }
                                                       else
                                                         {
@@ -8199,7 +8199,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1110x1xxxxxxxxxx
                                                              cpyfprtn.  */
-                                                          return 3064;
+                                                          return 3067;
                                                         }
                                                     }
                                                 }
@@ -8216,7 +8216,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0001x1xxxxxxxxxx
                                                              cpyfpwt.  */
-                                                          return 3043;
+                                                          return 3046;
                                                         }
                                                       else
                                                         {
@@ -8224,7 +8224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1001x1xxxxxxxxxx
                                                              cpyfpwtrn.  */
-                                                          return 3049;
+                                                          return 3052;
                                                         }
                                                     }
                                                   else
@@ -8235,7 +8235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0101x1xxxxxxxxxx
                                                              cpyfpwtwn.  */
-                                                          return 3046;
+                                                          return 3049;
                                                         }
                                                       else
                                                         {
@@ -8243,7 +8243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1101x1xxxxxxxxxx
                                                              cpyfpwtn.  */
-                                                          return 3052;
+                                                          return 3055;
                                                         }
                                                     }
                                                 }
@@ -8257,7 +8257,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0011x1xxxxxxxxxx
                                                              cpyfpt.  */
-                                                          return 3067;
+                                                          return 3070;
                                                         }
                                                       else
                                                         {
@@ -8265,7 +8265,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1011x1xxxxxxxxxx
                                                              cpyfptrn.  */
-                                                          return 3073;
+                                                          return 3076;
                                                         }
                                                     }
                                                   else
@@ -8276,7 +8276,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx0111x1xxxxxxxxxx
                                                              cpyfptwn.  */
-                                                          return 3070;
+                                                          return 3073;
                                                         }
                                                       else
                                                         {
@@ -8284,7 +8284,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001000xxxxx1111x1xxxxxxxxxx
                                                              cpyfptn.  */
-                                                          return 3076;
+                                                          return 3079;
                                                         }
                                                     }
                                                 }
@@ -8349,7 +8349,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          00011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapurb.  */
-                                                      return 2972;
+                                                      return 2975;
                                                     }
                                                   else
                                                     {
@@ -8357,7 +8357,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          10011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapur.  */
-                                                      return 2980;
+                                                      return 2983;
                                                     }
                                                 }
                                               else
@@ -8368,7 +8368,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          01011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapurh.  */
-                                                      return 2976;
+                                                      return 2979;
                                                     }
                                                   else
                                                     {
@@ -8376,7 +8376,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          11011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapur.  */
-                                                      return 2983;
+                                                      return 2986;
                                                     }
                                                 }
                                             }
@@ -8414,7 +8414,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0000x1xxxxxxxxxx
                                                              cpyfm.  */
-                                                          return 3032;
+                                                          return 3035;
                                                         }
                                                       else
                                                         {
@@ -8422,7 +8422,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1000x1xxxxxxxxxx
                                                              cpyfmrn.  */
-                                                          return 3038;
+                                                          return 3041;
                                                         }
                                                     }
                                                   else
@@ -8433,7 +8433,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0100x1xxxxxxxxxx
                                                              cpyfmwn.  */
-                                                          return 3035;
+                                                          return 3038;
                                                         }
                                                       else
                                                         {
@@ -8441,7 +8441,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1100x1xxxxxxxxxx
                                                              cpyfmn.  */
-                                                          return 3041;
+                                                          return 3044;
                                                         }
                                                     }
                                                 }
@@ -8455,7 +8455,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0010x1xxxxxxxxxx
                                                              cpyfmrt.  */
-                                                          return 3056;
+                                                          return 3059;
                                                         }
                                                       else
                                                         {
@@ -8463,7 +8463,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1010x1xxxxxxxxxx
                                                              cpyfmrtrn.  */
-                                                          return 3062;
+                                                          return 3065;
                                                         }
                                                     }
                                                   else
@@ -8474,7 +8474,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0110x1xxxxxxxxxx
                                                              cpyfmrtwn.  */
-                                                          return 3059;
+                                                          return 3062;
                                                         }
                                                       else
                                                         {
@@ -8482,7 +8482,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1110x1xxxxxxxxxx
                                                              cpyfmrtn.  */
-                                                          return 3065;
+                                                          return 3068;
                                                         }
                                                     }
                                                 }
@@ -8499,7 +8499,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0001x1xxxxxxxxxx
                                                              cpyfmwt.  */
-                                                          return 3044;
+                                                          return 3047;
                                                         }
                                                       else
                                                         {
@@ -8507,7 +8507,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1001x1xxxxxxxxxx
                                                              cpyfmwtrn.  */
-                                                          return 3050;
+                                                          return 3053;
                                                         }
                                                     }
                                                   else
@@ -8518,7 +8518,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0101x1xxxxxxxxxx
                                                              cpyfmwtwn.  */
-                                                          return 3047;
+                                                          return 3050;
                                                         }
                                                       else
                                                         {
@@ -8526,7 +8526,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1101x1xxxxxxxxxx
                                                              cpyfmwtn.  */
-                                                          return 3053;
+                                                          return 3056;
                                                         }
                                                     }
                                                 }
@@ -8540,7 +8540,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0011x1xxxxxxxxxx
                                                              cpyfmt.  */
-                                                          return 3068;
+                                                          return 3071;
                                                         }
                                                       else
                                                         {
@@ -8548,7 +8548,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1011x1xxxxxxxxxx
                                                              cpyfmtrn.  */
-                                                          return 3074;
+                                                          return 3077;
                                                         }
                                                     }
                                                   else
@@ -8559,7 +8559,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx0111x1xxxxxxxxxx
                                                              cpyfmtwn.  */
-                                                          return 3071;
+                                                          return 3074;
                                                         }
                                                       else
                                                         {
@@ -8567,7 +8567,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001010xxxxx1111x1xxxxxxxxxx
                                                              cpyfmtn.  */
-                                                          return 3077;
+                                                          return 3080;
                                                         }
                                                     }
                                                 }
@@ -8635,7 +8635,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          00011001100xxxxxxxxx00xxxxxxxxxx
                                                          ldapursb.  */
-                                                      return 2974;
+                                                      return 2977;
                                                     }
                                                   else
                                                     {
@@ -8643,7 +8643,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          10011001100xxxxxxxxx00xxxxxxxxxx
                                                          ldapursw.  */
-                                                      return 2981;
+                                                      return 2984;
                                                     }
                                                 }
                                               else
@@ -8652,7 +8652,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1011001100xxxxxxxxx00xxxxxxxxxx
                                                      ldapursh.  */
-                                                  return 2978;
+                                                  return 2981;
                                                 }
                                             }
                                           else
@@ -8663,7 +8663,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0011001110xxxxxxxxx00xxxxxxxxxx
                                                      ldapursb.  */
-                                                  return 2973;
+                                                  return 2976;
                                                 }
                                               else
                                                 {
@@ -8671,7 +8671,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1011001110xxxxxxxxx00xxxxxxxxxx
                                                      ldapursh.  */
-                                                  return 2977;
+                                                  return 2980;
                                                 }
                                             }
                                         }
@@ -8733,7 +8733,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0000x1xxxxxxxxxx
                                                              cpyfe.  */
-                                                          return 3033;
+                                                          return 3036;
                                                         }
                                                       else
                                                         {
@@ -8741,7 +8741,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0000x1xxxxxxxxxx
                                                              setp.  */
-                                                          return 3127;
+                                                          return 3130;
                                                         }
                                                     }
                                                   else
@@ -8752,7 +8752,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx1000x1xxxxxxxxxx
                                                              cpyfern.  */
-                                                          return 3039;
+                                                          return 3042;
                                                         }
                                                       else
                                                         {
@@ -8760,7 +8760,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx1000x1xxxxxxxxxx
                                                              sete.  */
-                                                          return 3129;
+                                                          return 3132;
                                                         }
                                                     }
                                                 }
@@ -8774,7 +8774,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0100x1xxxxxxxxxx
                                                              cpyfewn.  */
-                                                          return 3036;
+                                                          return 3039;
                                                         }
                                                       else
                                                         {
@@ -8782,7 +8782,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0100x1xxxxxxxxxx
                                                              setm.  */
-                                                          return 3128;
+                                                          return 3131;
                                                         }
                                                     }
                                                   else
@@ -8791,7 +8791,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0110011x0xxxxx1100x1xxxxxxxxxx
                                                          cpyfen.  */
-                                                      return 3042;
+                                                      return 3045;
                                                     }
                                                 }
                                             }
@@ -8807,7 +8807,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0010x1xxxxxxxxxx
                                                              cpyfert.  */
-                                                          return 3057;
+                                                          return 3060;
                                                         }
                                                       else
                                                         {
@@ -8815,7 +8815,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0010x1xxxxxxxxxx
                                                              setpn.  */
-                                                          return 3133;
+                                                          return 3136;
                                                         }
                                                     }
                                                   else
@@ -8826,7 +8826,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx1010x1xxxxxxxxxx
                                                              cpyfertrn.  */
-                                                          return 3063;
+                                                          return 3066;
                                                         }
                                                       else
                                                         {
@@ -8834,7 +8834,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx1010x1xxxxxxxxxx
                                                              seten.  */
-                                                          return 3135;
+                                                          return 3138;
                                                         }
                                                     }
                                                 }
@@ -8848,7 +8848,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0110x1xxxxxxxxxx
                                                              cpyfertwn.  */
-                                                          return 3060;
+                                                          return 3063;
                                                         }
                                                       else
                                                         {
@@ -8856,7 +8856,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0110x1xxxxxxxxxx
                                                              setmn.  */
-                                                          return 3134;
+                                                          return 3137;
                                                         }
                                                     }
                                                   else
@@ -8865,7 +8865,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0110011x0xxxxx1110x1xxxxxxxxxx
                                                          cpyfertn.  */
-                                                      return 3066;
+                                                      return 3069;
                                                     }
                                                 }
                                             }
@@ -8884,7 +8884,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0001x1xxxxxxxxxx
                                                              cpyfewt.  */
-                                                          return 3045;
+                                                          return 3048;
                                                         }
                                                       else
                                                         {
@@ -8892,7 +8892,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0001x1xxxxxxxxxx
                                                              setpt.  */
-                                                          return 3130;
+                                                          return 3133;
                                                         }
                                                     }
                                                   else
@@ -8903,7 +8903,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx1001x1xxxxxxxxxx
                                                              cpyfewtrn.  */
-                                                          return 3051;
+                                                          return 3054;
                                                         }
                                                       else
                                                         {
@@ -8911,7 +8911,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx1001x1xxxxxxxxxx
                                                              setet.  */
-                                                          return 3132;
+                                                          return 3135;
                                                         }
                                                     }
                                                 }
@@ -8925,7 +8925,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0101x1xxxxxxxxxx
                                                              cpyfewtwn.  */
-                                                          return 3048;
+                                                          return 3051;
                                                         }
                                                       else
                                                         {
@@ -8933,7 +8933,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0101x1xxxxxxxxxx
                                                              setmt.  */
-                                                          return 3131;
+                                                          return 3134;
                                                         }
                                                     }
                                                   else
@@ -8942,7 +8942,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0110011x0xxxxx1101x1xxxxxxxxxx
                                                          cpyfewtn.  */
-                                                      return 3054;
+                                                      return 3057;
                                                     }
                                                 }
                                             }
@@ -8958,7 +8958,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0011x1xxxxxxxxxx
                                                              cpyfet.  */
-                                                          return 3069;
+                                                          return 3072;
                                                         }
                                                       else
                                                         {
@@ -8966,7 +8966,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0011x1xxxxxxxxxx
                                                              setptn.  */
-                                                          return 3136;
+                                                          return 3139;
                                                         }
                                                     }
                                                   else
@@ -8977,7 +8977,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx1011x1xxxxxxxxxx
                                                              cpyfetrn.  */
-                                                          return 3075;
+                                                          return 3078;
                                                         }
                                                       else
                                                         {
@@ -8985,7 +8985,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx1011x1xxxxxxxxxx
                                                              setetn.  */
-                                                          return 3138;
+                                                          return 3141;
                                                         }
                                                     }
                                                 }
@@ -8999,7 +8999,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001100xxxxx0111x1xxxxxxxxxx
                                                              cpyfetwn.  */
-                                                          return 3072;
+                                                          return 3075;
                                                         }
                                                       else
                                                         {
@@ -9007,7 +9007,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xx011001110xxxxx0111x1xxxxxxxxxx
                                                              setmtn.  */
-                                                          return 3137;
+                                                          return 3140;
                                                         }
                                                     }
                                                   else
@@ -9016,7 +9016,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx0110011x0xxxxx1111x1xxxxxxxxxx
                                                          cpyfetn.  */
-                                                      return 3078;
+                                                      return 3081;
                                                     }
                                                 }
                                             }
@@ -9389,7 +9389,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x1x11010110xxxx0x01000xxxxxxxxxx
                                                                  abs.  */
-                                                              return 3156;
+                                                              return 3159;
                                                             }
                                                           else
                                                             {
@@ -9407,7 +9407,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx11010110xxxxxx11000xxxxxxxxxx
                                                          smax.  */
-                                                      return 3159;
+                                                      return 3162;
                                                     }
                                                 }
                                             }
@@ -9487,7 +9487,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              xxx11010x00xxxxxx0xx10xxxxxxxxxx
                                              setf8.  */
-                                          return 2969;
+                                          return 2972;
                                         }
                                       else
                                         {
@@ -9495,7 +9495,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              xxx11010x00xxxxxx1xx10xxxxxxxxxx
                                              setf16.  */
-                                          return 2970;
+                                          return 2973;
                                         }
                                     }
                                   else
@@ -9602,7 +9602,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xxx11010110xxxxxx11010xxxxxxxxxx
                                                          smin.  */
-                                                      return 3161;
+                                                      return 3164;
                                                     }
                                                 }
                                             }
@@ -9618,7 +9618,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              xxx11010110xxxx0x00110xxxxxxxxxx
                                                              ctz.  */
-                                                          return 3158;
+                                                          return 3161;
                                                         }
                                                       else
                                                         {
@@ -9663,7 +9663,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              xxx11010000xxxxxxxxx01xxxxxxxxxx
                                              rmif.  */
-                                          return 2968;
+                                          return 2971;
                                         }
                                       else
                                         {
@@ -9757,7 +9757,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xxx11010x10xxxxxx11001xxxxxxxxxx
                                                      umax.  */
-                                                  return 3160;
+                                                  return 3163;
                                                 }
                                             }
                                         }
@@ -9887,7 +9887,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xxx11010xx0xxxxxx11011xxxxxxxxxx
                                                  umin.  */
-                                              return 3162;
+                                              return 3165;
                                             }
                                         }
                                     }
@@ -9903,7 +9903,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xxx11010xx0xxxx0x00111xxxxxxxxxx
                                                      cnt.  */
-                                                  return 3157;
+                                                  return 3160;
                                                 }
                                               else
                                                 {
@@ -10745,7 +10745,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x01x1xxxxx000110xxxxxxxxxx
                                                                  usdot.  */
-                                                              return 2988;
+                                                              return 2991;
                                                             }
                                                         }
                                                     }
@@ -10819,7 +10819,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x01x1xxxxx000111xxxxxxxxxx
                                                                  sudot.  */
-                                                              return 2989;
+                                                              return 2992;
                                                             }
                                                         }
                                                     }
@@ -12272,7 +12272,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x0xxxxx110x11xxxxxxxxxx
                                                              udot.  */
-                                                          return 2431;
+                                                          return 2433;
                                                         }
                                                       else
                                                         {
@@ -12280,7 +12280,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x01x0xxxxx110x11xxxxxxxxxx
                                                              udot.  */
-                                                          return 2430;
+                                                          return 2432;
                                                         }
                                                     }
                                                 }
@@ -13537,7 +13537,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011110xxxxxxxxxx
                                                              usdot.  */
-                                                          return 2987;
+                                                          return 2990;
                                                         }
                                                     }
                                                 }
@@ -15241,7 +15241,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x0100xxx10101xxxxxxxxxxxxx
                                                                  bfcvtnt.  */
-                                                              return 3016;
+                                                              return 3019;
                                                             }
                                                         }
                                                       else
@@ -15484,7 +15484,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  101001x00x1xxxxxx00xxxxxxxxxxxxx
                                                  ld1rob.  */
-                                              return 2992;
+                                              return 2995;
                                             }
                                           else
                                             {
@@ -15492,7 +15492,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  101001x01x1xxxxxx00xxxxxxxxxxxxx
                                                  ld1roh.  */
-                                              return 2993;
+                                              return 2996;
                                             }
                                         }
                                       else
@@ -15735,7 +15735,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0011xxxxx010xxxxxxxxxxxxx
                                                          bfdot.  */
-                                                      return 3013;
+                                                      return 3016;
                                                     }
                                                   else
                                                     {
@@ -15756,7 +15756,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0111xxxxx010xx0xxxxxxxxxx
                                                              bfmlalb.  */
-                                                          return 3020;
+                                                          return 3023;
                                                         }
                                                       else
                                                         {
@@ -15764,7 +15764,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0111xxxxx010xx1xxxxxxxxxx
                                                              bfmlalt.  */
-                                                          return 3019;
+                                                          return 3022;
                                                         }
                                                     }
                                                   else
@@ -15830,7 +15830,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x11001x0011xxxxx1x0xxxxxxxxxxxxx
                                                  bfdot.  */
-                                              return 3012;
+                                              return 3015;
                                             }
                                           else
                                             {
@@ -15842,7 +15842,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0111xxxxx1x0xx0xxxxxxxxxx
                                                          bfmlalb.  */
-                                                      return 3018;
+                                                      return 3021;
                                                     }
                                                   else
                                                     {
@@ -15850,7 +15850,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0111xxxxx1x0xx1xxxxxxxxxx
                                                          bfmlalt.  */
-                                                      return 3017;
+                                                      return 3020;
                                                     }
                                                 }
                                               else
@@ -15901,7 +15901,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x00x1xxxxx001xxxxxxxxxxxxx
                                                      ld1rob.  */
-                                                  return 2996;
+                                                  return 2999;
                                                 }
                                               else
                                                 {
@@ -15909,7 +15909,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x01x1xxxxx001xxxxxxxxxxxxx
                                                      ld1roh.  */
-                                                  return 2997;
+                                                  return 3000;
                                                 }
                                             }
                                           else
@@ -16312,7 +16312,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0101xxxxx111xxxxxxxxxxxxx
                                                          fmmla.  */
-                                                      return 2990;
+                                                      return 2993;
                                                     }
                                                   else
                                                     {
@@ -16345,7 +16345,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0011xxxxx111xxxxxxxxxxxxx
                                                          bfmmla.  */
-                                                      return 3014;
+                                                      return 3017;
                                                     }
                                                   else
                                                     {
@@ -16375,7 +16375,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0111xxxxx111xxxxxxxxxxxxx
                                                          fmmla.  */
-                                                      return 2991;
+                                                      return 2994;
                                                     }
                                                   else
                                                     {
@@ -16504,7 +16504,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1101xxxxx000x00xxxxxxxxxx
                                                                  zip1.  */
-                                                              return 3000;
+                                                              return 3003;
                                                             }
                                                           else
                                                             {
@@ -16514,7 +16514,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000010xxxxxxxxxx
                                                                      uzp1.  */
-                                                                  return 3002;
+                                                                  return 3005;
                                                                 }
                                                               else
                                                                 {
@@ -16522,7 +16522,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000110xxxxxxxxxx
                                                                      trn1.  */
-                                                                  return 3004;
+                                                                  return 3007;
                                                                 }
                                                             }
                                                         }
@@ -16534,7 +16534,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1101xxxxx000x01xxxxxxxxxx
                                                                  zip2.  */
-                                                              return 3001;
+                                                              return 3004;
                                                             }
                                                           else
                                                             {
@@ -16544,7 +16544,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000011xxxxxxxxxx
                                                                      uzp2.  */
-                                                                  return 3003;
+                                                                  return 3006;
                                                                 }
                                                               else
                                                                 {
@@ -16552,7 +16552,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000111xxxxxxxxxx
                                                                      trn2.  */
-                                                                  return 3005;
+                                                                  return 3008;
                                                                 }
                                                             }
                                                         }
@@ -17469,98 +17469,109 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                         }
                                       else
                                         {
-                                          if (((word >> 31) & 0x1) == 0)
+                                          if (((word >> 23) & 0x1) == 0)
                                             {
-                                              if (((word >> 10) & 0x1) == 0)
+                                              if (((word >> 31) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 11) & 0x1) == 0)
+                                                  if (((word >> 10) & 0x1) == 0)
                                                     {
-                                                      if (((word >> 12) & 0x1) == 0)
+                                                      if (((word >> 11) & 0x1) == 0)
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000000xxxxxxxxxx
-                                                             sqshrunb.  */
-                                                          return 2236;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000000xxxxxxxxxx
+                                                                 sqshrunb.  */
+                                                              return 2236;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000100xxxxxxxxxx
+                                                                 shrnb.  */
+                                                              return 2154;
+                                                            }
                                                         }
                                                       else
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000100xxxxxxxxxx
-                                                             shrnb.  */
-                                                          return 2154;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000010xxxxxxxxxx
+                                                                 sqrshrunb.  */
+                                                              return 2228;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000110xxxxxxxxxx
+                                                                 rshrnb.  */
+                                                              return 2136;
+                                                            }
                                                         }
                                                     }
                                                   else
                                                     {
-                                                      if (((word >> 12) & 0x1) == 0)
+                                                      if (((word >> 11) & 0x1) == 0)
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000010xxxxxxxxxx
-                                                             sqrshrunb.  */
-                                                          return 2228;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000001xxxxxxxxxx
+                                                                 sqshrunt.  */
+                                                              return 2237;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000101xxxxxxxxxx
+                                                                 shrnt.  */
+                                                              return 2155;
+                                                            }
                                                         }
                                                       else
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000110xxxxxxxxxx
-                                                             rshrnb.  */
-                                                          return 2136;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000011xxxxxxxxxx
+                                                                 sqrshrunt.  */
+                                                              return 2229;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx000111xxxxxxxxxx
+                                                                 rshrnt.  */
+                                                              return 2137;
+                                                            }
                                                         }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 11) & 0x1) == 0)
-                                                    {
-                                                      if (((word >> 12) & 0x1) == 0)
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000001xxxxxxxxxx
-                                                             sqshrunt.  */
-                                                          return 2237;
-                                                        }
-                                                      else
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000101xxxxxxxxxx
-                                                             shrnt.  */
-                                                          return 2155;
-                                                        }
-                                                    }
-                                                  else
-                                                    {
-                                                      if (((word >> 12) & 0x1) == 0)
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000011xxxxxxxxxx
-                                                             sqrshrunt.  */
-                                                          return 2229;
-                                                        }
-                                                      else
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx000111xxxxxxxxxx
-                                                             rshrnt.  */
-                                                          return 2137;
-                                                        }
-                                                    }
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     110001x10x1xxxxx000xxxxxxxxxxxxx
+                                                     ld1sw.  */
+                                                  return 1600;
                                                 }
                                             }
                                           else
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 110001x1xx1xxxxx000xxxxxxxxxxxxx
-                                                 ld1sw.  */
-                                              return 1600;
+                                                 x10001x11x1xxxxx000xxxxxxxxxxxxx
+                                                 sqrshrun.  */
+                                              return 2431;
                                             }
                                         }
                                     }
@@ -17611,7 +17622,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1000xxxxx100110xxxxxxxxxx
                                                                      smmla.  */
-                                                                  return 2984;
+                                                                  return 2987;
                                                                 }
                                                               else
                                                                 {
@@ -17619,7 +17630,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1100xxxxx100110xxxxxxxxxx
                                                                      usmmla.  */
-                                                                  return 2986;
+                                                                  return 2989;
                                                                 }
                                                             }
                                                           else
@@ -17628,7 +17639,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1x10xxxxx100110xxxxxxxxxx
                                                                  ummla.  */
-                                                              return 2985;
+                                                              return 2988;
                                                             }
                                                         }
                                                     }
@@ -17892,7 +17903,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x1xxxx1010x10xxxxxxxxxx
                                                                  uqcvtn.  */
-                                                              return 2432;
+                                                              return 2434;
                                                             }
                                                         }
                                                     }
@@ -18214,98 +18225,120 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                         }
                                       else
                                         {
-                                          if (((word >> 31) & 0x1) == 0)
+                                          if (((word >> 23) & 0x1) == 0)
                                             {
-                                              if (((word >> 10) & 0x1) == 0)
+                                              if (((word >> 31) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 11) & 0x1) == 0)
+                                                  if (((word >> 10) & 0x1) == 0)
                                                     {
-                                                      if (((word >> 12) & 0x1) == 0)
+                                                      if (((word >> 11) & 0x1) == 0)
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001000xxxxxxxxxx
-                                                             sqshrnb.  */
-                                                          return 2234;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001000xxxxxxxxxx
+                                                                 sqshrnb.  */
+                                                              return 2234;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001100xxxxxxxxxx
+                                                                 uqshrnb.  */
+                                                              return 2313;
+                                                            }
                                                         }
                                                       else
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001100xxxxxxxxxx
-                                                             uqshrnb.  */
-                                                          return 2313;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001010xxxxxxxxxx
+                                                                 sqrshrnb.  */
+                                                              return 2226;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001110xxxxxxxxxx
+                                                                 uqrshrnb.  */
+                                                              return 2308;
+                                                            }
                                                         }
                                                     }
                                                   else
                                                     {
-                                                      if (((word >> 12) & 0x1) == 0)
+                                                      if (((word >> 11) & 0x1) == 0)
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001010xxxxxxxxxx
-                                                             sqrshrnb.  */
-                                                          return 2226;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001001xxxxxxxxxx
+                                                                 sqshrnt.  */
+                                                              return 2235;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001101xxxxxxxxxx
+                                                                 uqshrnt.  */
+                                                              return 2314;
+                                                            }
                                                         }
                                                       else
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001110xxxxxxxxxx
-                                                             uqrshrnb.  */
-                                                          return 2308;
+                                                          if (((word >> 12) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001011xxxxxxxxxx
+                                                                 sqrshrnt.  */
+                                                              return 2227;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 010001x10x1xxxxx001111xxxxxxxxxx
+                                                                 uqrshrnt.  */
+                                                              return 2309;
+                                                            }
                                                         }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 11) & 0x1) == 0)
-                                                    {
-                                                      if (((word >> 12) & 0x1) == 0)
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001001xxxxxxxxxx
-                                                             sqshrnt.  */
-                                                          return 2235;
-                                                        }
-                                                      else
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001101xxxxxxxxxx
-                                                             uqshrnt.  */
-                                                          return 2314;
-                                                        }
-                                                    }
-                                                  else
-                                                    {
-                                                      if (((word >> 12) & 0x1) == 0)
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001011xxxxxxxxxx
-                                                             sqrshrnt.  */
-                                                          return 2227;
-                                                        }
-                                                      else
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             010001x1xx1xxxxx001111xxxxxxxxxx
-                                                             uqrshrnt.  */
-                                                          return 2309;
-                                                        }
-                                                    }
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     110001x10x1xxxxx001xxxxxxxxxxxxx
+                                                     ldff1sw.  */
+                                                  return 1701;
                                                 }
                                             }
                                           else
                                             {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 110001x1xx1xxxxx001xxxxxxxxxxxxx
-                                                 ldff1sw.  */
-                                              return 1701;
+                                              if (((word >> 12) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x10001x11x1xxxxx0010xxxxxxxxxxxx
+                                                     sqrshrn.  */
+                                                  return 2430;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x10001x11x1xxxxx0011xxxxxxxxxxxx
+                                                     uqrshrn.  */
+                                                  return 2435;
+                                                }
                                             }
                                         }
                                     }
@@ -19157,7 +19190,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x10x1xxxxx000xxxxxxxxxxxxx
                                                      ld1row.  */
-                                                  return 2994;
+                                                  return 2997;
                                                 }
                                               else
                                                 {
@@ -19165,7 +19198,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x11x1xxxxx000xxxxxxxxxxxxx
                                                      ld1rod.  */
-                                                  return 2995;
+                                                  return 2998;
                                                 }
                                             }
                                         }
@@ -19539,7 +19572,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x10x1xxxxx001xxxxxxxxxxxxx
                                                      ld1row.  */
-                                                  return 2998;
+                                                  return 3001;
                                                 }
                                               else
                                                 {
@@ -19547,7 +19580,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x11x1xxxxx001xxxxxxxxxxxxx
                                                      ld1rod.  */
-                                                  return 2999;
+                                                  return 3002;
                                                 }
                                             }
                                         }
@@ -19908,7 +19941,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x000xxxxx10xxx
                                                                  whilege.  */
-                                                              return 2896;
+                                                              return 2899;
                                                             }
                                                           else
                                                             {
@@ -19916,7 +19949,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x000xxxxx11xxx
                                                                  whilegt.  */
-                                                              return 2897;
+                                                              return 2900;
                                                             }
                                                         }
                                                       else
@@ -19929,7 +19962,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx1xxxxx010100xxxxx1xxx0
                                                                      whilege.  */
-                                                                  return 2433;
+                                                                  return 2436;
                                                                 }
                                                               else
                                                                 {
@@ -19937,7 +19970,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx1xxxxx010100xxxxx1xxx1
                                                                      whilegt.  */
-                                                                  return 2434;
+                                                                  return 2437;
                                                                 }
                                                             }
                                                           else
@@ -19946,7 +19979,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx011100xxxxx1xxxx
                                                                  pext.  */
-                                                              return 2637;
+                                                              return 2640;
                                                             }
                                                         }
                                                     }
@@ -19960,7 +19993,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x010xxxxx10xxx
                                                                  whilehs.  */
-                                                              return 2899;
+                                                              return 2902;
                                                             }
                                                           else
                                                             {
@@ -19968,7 +20001,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x010xxxxx11xxx
                                                                  whilehi.  */
-                                                              return 2898;
+                                                              return 2901;
                                                             }
                                                         }
                                                       else
@@ -19981,7 +20014,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx1xxxxx010110xxxxx1xxx0
                                                                      whilehs.  */
-                                                                  return 2436;
+                                                                  return 2439;
                                                                 }
                                                               else
                                                                 {
@@ -19989,7 +20022,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx1xxxxx010110xxxxx1xxx1
                                                                      whilehi.  */
-                                                                  return 2435;
+                                                                  return 2438;
                                                                 }
                                                             }
                                                           else
@@ -19998,7 +20031,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx011110xxxxx1xxxx
                                                                  ptrue.  */
-                                                              return 2639;
+                                                              return 2642;
                                                             }
                                                         }
                                                     }
@@ -20015,7 +20048,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x001xxxxx10xxx
                                                                  whilelt.  */
-                                                              return 2903;
+                                                              return 2906;
                                                             }
                                                           else
                                                             {
@@ -20023,7 +20056,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x001xxxxx11xxx
                                                                  whilele.  */
-                                                              return 2900;
+                                                              return 2903;
                                                             }
                                                         }
                                                       else
@@ -20036,7 +20069,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx1xxxxx010101xxxxx1xxx0
                                                                      whilelt.  */
-                                                                  return 2440;
+                                                                  return 2443;
                                                                 }
                                                               else
                                                                 {
@@ -20044,7 +20077,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx1xxxxx010101xxxxx1xxx1
                                                                      whilele.  */
-                                                                  return 2437;
+                                                                  return 2440;
                                                                 }
                                                             }
                                                           else
@@ -20053,7 +20086,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx011101xxxxx1xxxx
                                                                  pext.  */
-                                                              return 2638;
+                                                              return 2641;
                                                             }
                                                         }
                                                     }
@@ -20067,7 +20100,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x011xxxxx10xxx
                                                                  whilelo.  */
-                                                              return 2901;
+                                                              return 2904;
                                                             }
                                                           else
                                                             {
@@ -20075,7 +20108,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x011xxxxx11xxx
                                                                  whilels.  */
-                                                              return 2902;
+                                                              return 2905;
                                                             }
                                                         }
                                                       else
@@ -20086,7 +20119,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x111xxxxx1xxx0
                                                                  whilelo.  */
-                                                              return 2438;
+                                                              return 2441;
                                                             }
                                                           else
                                                             {
@@ -20094,7 +20127,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx01x111xxxxx1xxx1
                                                                  whilels.  */
-                                                              return 2439;
+                                                              return 2442;
                                                             }
                                                         }
                                                     }
@@ -21201,7 +21234,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x110001x10101xxxxxxxxxxxxx
                                                                          bfcvt.  */
-                                                                      return 3015;
+                                                                      return 3018;
                                                                     }
                                                                 }
                                                               else
@@ -21860,7 +21893,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1xx10xxxx10xxxx1xxxxxxxxx
                                                      cntp.  */
-                                                  return 2476;
+                                                  return 2479;
                                                 }
                                             }
                                           else
@@ -22562,7 +22595,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                      10987654321098765432109876543210
                                      x1010100xxxxxxxxxxxxxxxxxxx1xxxx
                                      bc.c.  */
-                                  return 3151;
+                                  return 3154;
                                 }
                               else
                                 {
@@ -23142,7 +23175,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0000xxxxxxxxxxxx
                                                      cpyp.  */
-                                                  return 3079;
+                                                  return 3082;
                                                 }
                                               else
                                                 {
@@ -23150,7 +23183,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0000xxxxxxxxxxxx
                                                      cpye.  */
-                                                  return 3081;
+                                                  return 3084;
                                                 }
                                             }
                                           else
@@ -23161,7 +23194,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1000xxxxxxxxxxxx
                                                      cpyprn.  */
-                                                  return 3085;
+                                                  return 3088;
                                                 }
                                               else
                                                 {
@@ -23169,7 +23202,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1000xxxxxxxxxxxx
                                                      cpyern.  */
-                                                  return 3087;
+                                                  return 3090;
                                                 }
                                             }
                                         }
@@ -23183,7 +23216,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0100xxxxxxxxxxxx
                                                      cpypwn.  */
-                                                  return 3082;
+                                                  return 3085;
                                                 }
                                               else
                                                 {
@@ -23191,7 +23224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0100xxxxxxxxxxxx
                                                      cpyewn.  */
-                                                  return 3084;
+                                                  return 3087;
                                                 }
                                             }
                                           else
@@ -23202,7 +23235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1100xxxxxxxxxxxx
                                                      cpypn.  */
-                                                  return 3088;
+                                                  return 3091;
                                                 }
                                               else
                                                 {
@@ -23210,7 +23243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1100xxxxxxxxxxxx
                                                      cpyen.  */
-                                                  return 3090;
+                                                  return 3093;
                                                 }
                                             }
                                         }
@@ -23227,7 +23260,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0010xxxxxxxxxxxx
                                                      cpyprt.  */
-                                                  return 3103;
+                                                  return 3106;
                                                 }
                                               else
                                                 {
@@ -23235,7 +23268,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0010xxxxxxxxxxxx
                                                      cpyert.  */
-                                                  return 3105;
+                                                  return 3108;
                                                 }
                                             }
                                           else
@@ -23246,7 +23279,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1010xxxxxxxxxxxx
                                                      cpyprtrn.  */
-                                                  return 3109;
+                                                  return 3112;
                                                 }
                                               else
                                                 {
@@ -23254,7 +23287,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1010xxxxxxxxxxxx
                                                      cpyertrn.  */
-                                                  return 3111;
+                                                  return 3114;
                                                 }
                                             }
                                         }
@@ -23268,7 +23301,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0110xxxxxxxxxxxx
                                                      cpyprtwn.  */
-                                                  return 3106;
+                                                  return 3109;
                                                 }
                                               else
                                                 {
@@ -23276,7 +23309,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0110xxxxxxxxxxxx
                                                      cpyertwn.  */
-                                                  return 3108;
+                                                  return 3111;
                                                 }
                                             }
                                           else
@@ -23287,7 +23320,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1110xxxxxxxxxxxx
                                                      cpyprtn.  */
-                                                  return 3112;
+                                                  return 3115;
                                                 }
                                               else
                                                 {
@@ -23295,7 +23328,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1110xxxxxxxxxxxx
                                                      cpyertn.  */
-                                                  return 3114;
+                                                  return 3117;
                                                 }
                                             }
                                         }
@@ -23315,7 +23348,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0001xxxxxxxxxxxx
                                                      cpypwt.  */
-                                                  return 3091;
+                                                  return 3094;
                                                 }
                                               else
                                                 {
@@ -23323,7 +23356,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0001xxxxxxxxxxxx
                                                      cpyewt.  */
-                                                  return 3093;
+                                                  return 3096;
                                                 }
                                             }
                                           else
@@ -23334,7 +23367,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1001xxxxxxxxxxxx
                                                      cpypwtrn.  */
-                                                  return 3097;
+                                                  return 3100;
                                                 }
                                               else
                                                 {
@@ -23342,7 +23375,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1001xxxxxxxxxxxx
                                                      cpyewtrn.  */
-                                                  return 3099;
+                                                  return 3102;
                                                 }
                                             }
                                         }
@@ -23356,7 +23389,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0101xxxxxxxxxxxx
                                                      cpypwtwn.  */
-                                                  return 3094;
+                                                  return 3097;
                                                 }
                                               else
                                                 {
@@ -23364,7 +23397,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0101xxxxxxxxxxxx
                                                      cpyewtwn.  */
-                                                  return 3096;
+                                                  return 3099;
                                                 }
                                             }
                                           else
@@ -23375,7 +23408,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1101xxxxxxxxxxxx
                                                      cpypwtn.  */
-                                                  return 3100;
+                                                  return 3103;
                                                 }
                                               else
                                                 {
@@ -23383,7 +23416,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1101xxxxxxxxxxxx
                                                      cpyewtn.  */
-                                                  return 3102;
+                                                  return 3105;
                                                 }
                                             }
                                         }
@@ -23400,7 +23433,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0011xxxxxxxxxxxx
                                                      cpypt.  */
-                                                  return 3115;
+                                                  return 3118;
                                                 }
                                               else
                                                 {
@@ -23408,7 +23441,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0011xxxxxxxxxxxx
                                                      cpyet.  */
-                                                  return 3117;
+                                                  return 3120;
                                                 }
                                             }
                                           else
@@ -23419,7 +23452,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1011xxxxxxxxxxxx
                                                      cpyptrn.  */
-                                                  return 3121;
+                                                  return 3124;
                                                 }
                                               else
                                                 {
@@ -23427,7 +23460,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1011xxxxxxxxxxxx
                                                      cpyetrn.  */
-                                                  return 3123;
+                                                  return 3126;
                                                 }
                                             }
                                         }
@@ -23441,7 +23474,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx0111xxxxxxxxxxxx
                                                      cpyptwn.  */
-                                                  return 3118;
+                                                  return 3121;
                                                 }
                                               else
                                                 {
@@ -23449,7 +23482,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx0111xxxxxxxxxxxx
                                                      cpyetwn.  */
-                                                  return 3120;
+                                                  return 3123;
                                                 }
                                             }
                                           else
@@ -23460,7 +23493,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110100xxxxxx1111xxxxxxxxxxxx
                                                      cpyptn.  */
-                                                  return 3124;
+                                                  return 3127;
                                                 }
                                               else
                                                 {
@@ -23468,7 +23501,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110110xxxxxx1111xxxxxxxxxxxx
                                                      cpyetn.  */
-                                                  return 3126;
+                                                  return 3129;
                                                 }
                                             }
                                         }
@@ -23502,7 +23535,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0000xxxxxxxxxxxx
                                                      cpym.  */
-                                                  return 3080;
+                                                  return 3083;
                                                 }
                                               else
                                                 {
@@ -23510,7 +23543,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0000xxxxxxxxxxxx
                                                      setgp.  */
-                                                  return 3139;
+                                                  return 3142;
                                                 }
                                             }
                                           else
@@ -23521,7 +23554,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx1000xxxxxxxxxxxx
                                                      cpymrn.  */
-                                                  return 3086;
+                                                  return 3089;
                                                 }
                                               else
                                                 {
@@ -23529,7 +23562,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx1000xxxxxxxxxxxx
                                                      setge.  */
-                                                  return 3141;
+                                                  return 3144;
                                                 }
                                             }
                                         }
@@ -23543,7 +23576,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0100xxxxxxxxxxxx
                                                      cpymwn.  */
-                                                  return 3083;
+                                                  return 3086;
                                                 }
                                               else
                                                 {
@@ -23551,7 +23584,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0100xxxxxxxxxxxx
                                                      setgm.  */
-                                                  return 3140;
+                                                  return 3143;
                                                 }
                                             }
                                           else
@@ -23560,7 +23593,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx011101x1xxxxxx1100xxxxxxxxxxxx
                                                  cpymn.  */
-                                              return 3089;
+                                              return 3092;
                                             }
                                         }
                                     }
@@ -23576,7 +23609,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0010xxxxxxxxxxxx
                                                      cpymrt.  */
-                                                  return 3104;
+                                                  return 3107;
                                                 }
                                               else
                                                 {
@@ -23584,7 +23617,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0010xxxxxxxxxxxx
                                                      setgpn.  */
-                                                  return 3145;
+                                                  return 3148;
                                                 }
                                             }
                                           else
@@ -23595,7 +23628,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx1010xxxxxxxxxxxx
                                                      cpymrtrn.  */
-                                                  return 3110;
+                                                  return 3113;
                                                 }
                                               else
                                                 {
@@ -23603,7 +23636,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx1010xxxxxxxxxxxx
                                                      setgen.  */
-                                                  return 3147;
+                                                  return 3150;
                                                 }
                                             }
                                         }
@@ -23617,7 +23650,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0110xxxxxxxxxxxx
                                                      cpymrtwn.  */
-                                                  return 3107;
+                                                  return 3110;
                                                 }
                                               else
                                                 {
@@ -23625,7 +23658,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0110xxxxxxxxxxxx
                                                      setgmn.  */
-                                                  return 3146;
+                                                  return 3149;
                                                 }
                                             }
                                           else
@@ -23634,7 +23667,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx011101x1xxxxxx1110xxxxxxxxxxxx
                                                  cpymrtn.  */
-                                              return 3113;
+                                              return 3116;
                                             }
                                         }
                                     }
@@ -23653,7 +23686,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0001xxxxxxxxxxxx
                                                      cpymwt.  */
-                                                  return 3092;
+                                                  return 3095;
                                                 }
                                               else
                                                 {
@@ -23661,7 +23694,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0001xxxxxxxxxxxx
                                                      setgpt.  */
-                                                  return 3142;
+                                                  return 3145;
                                                 }
                                             }
                                           else
@@ -23672,7 +23705,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx1001xxxxxxxxxxxx
                                                      cpymwtrn.  */
-                                                  return 3098;
+                                                  return 3101;
                                                 }
                                               else
                                                 {
@@ -23680,7 +23713,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx1001xxxxxxxxxxxx
                                                      setget.  */
-                                                  return 3144;
+                                                  return 3147;
                                                 }
                                             }
                                         }
@@ -23694,7 +23727,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0101xxxxxxxxxxxx
                                                      cpymwtwn.  */
-                                                  return 3095;
+                                                  return 3098;
                                                 }
                                               else
                                                 {
@@ -23702,7 +23735,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0101xxxxxxxxxxxx
                                                      setgmt.  */
-                                                  return 3143;
+                                                  return 3146;
                                                 }
                                             }
                                           else
@@ -23711,7 +23744,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx011101x1xxxxxx1101xxxxxxxxxxxx
                                                  cpymwtn.  */
-                                              return 3101;
+                                              return 3104;
                                             }
                                         }
                                     }
@@ -23727,7 +23760,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0011xxxxxxxxxxxx
                                                      cpymt.  */
-                                                  return 3116;
+                                                  return 3119;
                                                 }
                                               else
                                                 {
@@ -23735,7 +23768,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0011xxxxxxxxxxxx
                                                      setgptn.  */
-                                                  return 3148;
+                                                  return 3151;
                                                 }
                                             }
                                           else
@@ -23746,7 +23779,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx1011xxxxxxxxxxxx
                                                      cpymtrn.  */
-                                                  return 3122;
+                                                  return 3125;
                                                 }
                                               else
                                                 {
@@ -23754,7 +23787,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx1011xxxxxxxxxxxx
                                                      setgetn.  */
-                                                  return 3150;
+                                                  return 3153;
                                                 }
                                             }
                                         }
@@ -23768,7 +23801,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110101xxxxxx0111xxxxxxxxxxxx
                                                      cpymtwn.  */
-                                                  return 3119;
+                                                  return 3122;
                                                 }
                                               else
                                                 {
@@ -23776,7 +23809,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx01110111xxxxxx0111xxxxxxxxxxxx
                                                      setgmtn.  */
-                                                  return 3149;
+                                                  return 3152;
                                                 }
                                             }
                                           else
@@ -23785,7 +23818,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx011101x1xxxxxx1111xxxxxxxxxxxx
                                                  cpymtn.  */
-                                              return 3125;
+                                              return 3128;
                                             }
                                         }
                                     }
@@ -23952,7 +23985,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x1001xxxxxxxxxx
                                                          smmla.  */
-                                                      return 3006;
+                                                      return 3009;
                                                     }
                                                 }
                                             }
@@ -23985,7 +24018,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x0101xxxxxxxxxx
                                                          sdot.  */
-                                                      return 2932;
+                                                      return 2935;
                                                     }
                                                 }
                                               else
@@ -24059,7 +24092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x1011xxxxxxxxxx
                                                          usmmla.  */
-                                                      return 3008;
+                                                      return 3011;
                                                     }
                                                 }
                                             }
@@ -24092,7 +24125,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x0111xxxxxxxxxx
                                                          usdot.  */
-                                                      return 3009;
+                                                      return 3012;
                                                     }
                                                 }
                                               else
@@ -24139,7 +24172,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              1x001110000xxxxxxxxxxxxxxxxxxxxx
                                              eor3.  */
-                                          return 2939;
+                                          return 2942;
                                         }
                                       else
                                         {
@@ -24147,7 +24180,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              1x001110100xxxxxxxxxxxxxxxxxxxxx
                                              xar.  */
-                                          return 2941;
+                                          return 2944;
                                         }
                                     }
                                   else
@@ -24158,7 +24191,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              1x001110x10xxxxx0xxxxxxxxxxxxxxx
                                              sm3ss1.  */
-                                          return 2943;
+                                          return 2946;
                                         }
                                       else
                                         {
@@ -24172,7 +24205,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110010xxxxx1xxx00xxxxxxxxxx
                                                          sm3tt1a.  */
-                                                      return 2944;
+                                                      return 2947;
                                                     }
                                                   else
                                                     {
@@ -24180,7 +24213,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110110xxxxx1xxx00xxxxxxxxxx
                                                          sha512su0.  */
-                                                      return 2937;
+                                                      return 2940;
                                                     }
                                                 }
                                               else
@@ -24189,7 +24222,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      1x001110x10xxxxx1xxx10xxxxxxxxxx
                                                      sm3tt2a.  */
-                                                  return 2946;
+                                                  return 2949;
                                                 }
                                             }
                                           else
@@ -24202,7 +24235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110010xxxxx1xxx01xxxxxxxxxx
                                                          sm3tt1b.  */
-                                                      return 2945;
+                                                      return 2948;
                                                     }
                                                   else
                                                     {
@@ -24210,7 +24243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110110xxxxx1xxx01xxxxxxxxxx
                                                          sm4e.  */
-                                                      return 2950;
+                                                      return 2953;
                                                     }
                                                 }
                                               else
@@ -24219,7 +24252,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      1x001110x10xxxxx1xxx11xxxxxxxxxx
                                                      sm3tt2b.  */
-                                                  return 2947;
+                                                  return 2950;
                                                 }
                                             }
                                         }
@@ -24400,7 +24433,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx101110xx0xxxxx100101xxxxxxxxxx
                                                          udot.  */
-                                                      return 2931;
+                                                      return 2934;
                                                     }
                                                 }
                                               else
@@ -24431,7 +24464,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx101110xx0xxxxx101x01xxxxxxxxxx
                                                      ummla.  */
-                                                  return 3007;
+                                                  return 3010;
                                                 }
                                               else
                                                 {
@@ -24450,7 +24483,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx101110xx0xxxxx1x1011xxxxxxxxxx
                                                      bfmmla.  */
-                                                  return 3023;
+                                                  return 3026;
                                                 }
                                               else
                                                 {
@@ -24460,7 +24493,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx1011100x0xxxxx1x1111xxxxxxxxxx
                                                          bfdot.  */
-                                                      return 3021;
+                                                      return 3024;
                                                     }
                                                   else
                                                     {
@@ -24470,7 +24503,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x01011101x0xxxxx1x1111xxxxxxxxxx
                                                              bfmlalb.  */
-                                                          return 3028;
+                                                          return 3031;
                                                         }
                                                       else
                                                         {
@@ -24478,7 +24511,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x11011101x0xxxxx1x1111xxxxxxxxxx
                                                              bfmlalt.  */
-                                                          return 3027;
+                                                          return 3030;
                                                         }
                                                     }
                                                 }
@@ -25062,7 +25095,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000011101x1xxxx1011010xxxxxxxxxx
                                                                          bfcvtn.  */
-                                                                      return 3024;
+                                                                      return 3027;
                                                                     }
                                                                   else
                                                                     {
@@ -25070,7 +25103,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          010011101x1xxxx1011010xxxxxxxxxx
                                                                          bfcvtn2.  */
-                                                                      return 3025;
+                                                                      return 3028;
                                                                     }
                                                                 }
                                                             }
@@ -25388,7 +25421,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          1x001110xx1xxxxx0xxxxxxxxxxxxxxx
                                          bcax.  */
-                                      return 2942;
+                                      return 2945;
                                     }
                                 }
                               else
@@ -25999,7 +26032,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  11001110xx1xxxxx100000xxxxxxxxxx
                                                                  sha512h.  */
-                                                              return 2935;
+                                                              return 2938;
                                                             }
                                                         }
                                                     }
@@ -26051,7 +26084,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  11001110xx1xxxxx110000xxxxxxxxxx
                                                                  sm3partw1.  */
-                                                              return 2948;
+                                                              return 2951;
                                                             }
                                                         }
                                                     }
@@ -26294,7 +26327,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              1x001110xx1xxxxx100010xxxxxxxxxx
                                                              sha512su1.  */
-                                                          return 2938;
+                                                          return 2941;
                                                         }
                                                     }
                                                   else
@@ -26370,7 +26403,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  1x0011100x1xxxxx110010xxxxxxxxxx
                                                                  sm4ekey.  */
-                                                              return 2951;
+                                                              return 2954;
                                                             }
                                                         }
                                                       else
@@ -27196,7 +27229,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              1x001110xx1xxxxx100001xxxxxxxxxx
                                                              sha512h2.  */
-                                                          return 2936;
+                                                          return 2939;
                                                         }
                                                     }
                                                   else
@@ -27228,7 +27261,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  1x0011100x1xxxxx110001xxxxxxxxxx
                                                                  sm3partw2.  */
-                                                              return 2949;
+                                                              return 2952;
                                                             }
                                                         }
                                                       else
@@ -27468,7 +27501,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              1x001110xx1xxxxx100011xxxxxxxxxx
                                                              rax1.  */
-                                                          return 2940;
+                                                          return 2943;
                                                         }
                                                     }
                                                   else
@@ -27500,7 +27533,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x01011100x1xxxxx110011xxxxxxxxxx
                                                                  fmlal2.  */
-                                                              return 2954;
+                                                              return 2957;
                                                             }
                                                           else
                                                             {
@@ -27508,7 +27541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x11011100x1xxxxx110011xxxxxxxxxx
                                                                  fmlal2.  */
-                                                              return 2958;
+                                                              return 2961;
                                                             }
                                                         }
                                                     }
@@ -27530,7 +27563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x01011101x1xxxxx110011xxxxxxxxxx
                                                                  fmlsl2.  */
-                                                              return 2955;
+                                                              return 2958;
                                                             }
                                                           else
                                                             {
@@ -27538,7 +27571,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x11011101x1xxxxx110011xxxxxxxxxx
                                                                  fmlsl2.  */
-                                                              return 2959;
+                                                              return 2962;
                                                             }
                                                         }
                                                     }
@@ -27577,7 +27610,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x00011100x1xxxxx111011xxxxxxxxxx
                                                                  fmlal.  */
-                                                              return 2952;
+                                                              return 2955;
                                                             }
                                                           else
                                                             {
@@ -27585,7 +27618,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10011100x1xxxxx111011xxxxxxxxxx
                                                                  fmlal.  */
-                                                              return 2956;
+                                                              return 2959;
                                                             }
                                                         }
                                                       else
@@ -27607,7 +27640,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x00011101x1xxxxx111011xxxxxxxxxx
                                                                  fmlsl.  */
-                                                              return 2953;
+                                                              return 2956;
                                                             }
                                                           else
                                                             {
@@ -27615,7 +27648,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10011101x1xxxxx111011xxxxxxxxxx
                                                                  fmlsl.  */
-                                                              return 2957;
+                                                              return 2960;
                                                             }
                                                         }
                                                       else
@@ -29423,7 +29456,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0001111xxxxxxxx0000x0xxxxxxxxxx
                                                      fmlal.  */
-                                                  return 2960;
+                                                  return 2963;
                                                 }
                                               else
                                                 {
@@ -29431,7 +29464,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1001111xxxxxxxx0000x0xxxxxxxxxx
                                                      fmlal.  */
-                                                  return 2964;
+                                                  return 2967;
                                                 }
                                             }
                                           else
@@ -29453,7 +29486,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0001111xxxxxxxx0100x0xxxxxxxxxx
                                                      fmlsl.  */
-                                                  return 2961;
+                                                  return 2964;
                                                 }
                                               else
                                                 {
@@ -29461,7 +29494,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1001111xxxxxxxx0100x0xxxxxxxxxx
                                                      fmlsl.  */
-                                                  return 2965;
+                                                  return 2968;
                                                 }
                                             }
                                           else
@@ -29967,7 +30000,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0101111xxxxxxxx1000x0xxxxxxxxxx
                                                      fmlal2.  */
-                                                  return 2962;
+                                                  return 2965;
                                                 }
                                               else
                                                 {
@@ -29975,7 +30008,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1101111xxxxxxxx1000x0xxxxxxxxxx
                                                      fmlal2.  */
-                                                  return 2966;
+                                                  return 2969;
                                                 }
                                             }
                                         }
@@ -29997,7 +30030,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0101111xxxxxxxx1100x0xxxxxxxxxx
                                                      fmlsl2.  */
-                                                  return 2963;
+                                                  return 2966;
                                                 }
                                               else
                                                 {
@@ -30005,7 +30038,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1101111xxxxxxxx1100x0xxxxxxxxxx
                                                      fmlsl2.  */
-                                                  return 2967;
+                                                  return 2970;
                                                 }
                                             }
                                         }
@@ -30061,7 +30094,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx001111xxxxxxxx1110x0xxxxxxxxxx
                                                  sdot.  */
-                                              return 2934;
+                                              return 2937;
                                             }
                                           else
                                             {
@@ -30069,7 +30102,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx101111xxxxxxxx1110x0xxxxxxxxxx
                                                  udot.  */
-                                              return 2933;
+                                              return 2936;
                                             }
                                         }
                                     }
@@ -30172,7 +30205,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx00111100xxxxxx1111x0xxxxxxxxxx
                                                          sudot.  */
-                                                      return 3011;
+                                                      return 3014;
                                                     }
                                                   else
                                                     {
@@ -30180,7 +30213,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx00111110xxxxxx1111x0xxxxxxxxxx
                                                          usdot.  */
-                                                      return 3010;
+                                                      return 3013;
                                                     }
                                                 }
                                               else
@@ -30191,7 +30224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx00111101xxxxxx1111x0xxxxxxxxxx
                                                          bfdot.  */
-                                                      return 3022;
+                                                      return 3025;
                                                     }
                                                   else
                                                     {
@@ -30201,7 +30234,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x000111111xxxxxx1111x0xxxxxxxxxx
                                                              bfmlalb.  */
-                                                          return 3030;
+                                                          return 3033;
                                                         }
                                                       else
                                                         {
@@ -30209,7 +30242,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x100111111xxxxxx1111x0xxxxxxxxxx
                                                              bfmlalt.  */
-                                                          return 3029;
+                                                          return 3032;
                                                         }
                                                     }
                                                 }
@@ -30700,22 +30733,22 @@ aarch64_find_next_opcode (const aarch64_opcode *opcode)
     case 2391: return NULL;		/* mova --> NULL.  */
     case 2388: value = 2390; break;	/* mov --> mova.  */
     case 2390: return NULL;		/* mova --> NULL.  */
-    case 2625: value = 2633; break;	/* mov --> mova.  */
-    case 2633: return NULL;		/* mova --> NULL.  */
-    case 2621: value = 2629; break;	/* mov --> mova.  */
-    case 2629: return NULL;		/* mova --> NULL.  */
-    case 2623: value = 2631; break;	/* mov --> mova.  */
-    case 2631: return NULL;		/* mova --> NULL.  */
-    case 2619: value = 2627; break;	/* mov --> mova.  */
-    case 2627: return NULL;		/* mova --> NULL.  */
+    case 2628: value = 2636; break;	/* mov --> mova.  */
+    case 2636: return NULL;		/* mova --> NULL.  */
+    case 2624: value = 2632; break;	/* mov --> mova.  */
+    case 2632: return NULL;		/* mova --> NULL.  */
     case 2626: value = 2634; break;	/* mov --> mova.  */
     case 2634: return NULL;		/* mova --> NULL.  */
     case 2622: value = 2630; break;	/* mov --> mova.  */
     case 2630: return NULL;		/* mova --> NULL.  */
-    case 2624: value = 2632; break;	/* mov --> mova.  */
-    case 2632: return NULL;		/* mova --> NULL.  */
-    case 2620: value = 2628; break;	/* mov --> mova.  */
-    case 2628: return NULL;		/* mova --> NULL.  */
+    case 2629: value = 2637; break;	/* mov --> mova.  */
+    case 2637: return NULL;		/* mova --> NULL.  */
+    case 2625: value = 2633; break;	/* mov --> mova.  */
+    case 2633: return NULL;		/* mova --> NULL.  */
+    case 2627: value = 2635; break;	/* mov --> mova.  */
+    case 2635: return NULL;		/* mova --> NULL.  */
+    case 2623: value = 2631; break;	/* mov --> mova.  */
+    case 2631: return NULL;		/* mova --> NULL.  */
     case 2393: value = 2398; break;	/* ld1b --> ld1b.  */
     case 2398: return NULL;		/* ld1b --> NULL.  */
     case 2395: value = 2400; break;	/* ld1w --> ld1w.  */
@@ -30737,11 +30770,11 @@ aarch64_find_next_opcode (const aarch64_opcode *opcode)
     case 2407: value = 2412; break;	/* st1q --> st1q.  */
     case 2412: return NULL;		/* st1q --> NULL.  */
     case 12: value = 19; break;	/* add --> addg.  */
-    case 19: value = 3152; break;	/* addg --> smax.  */
-    case 3152: value = 3153; break;	/* smax --> umax.  */
-    case 3153: value = 3154; break;	/* umax --> smin.  */
-    case 3154: value = 3155; break;	/* smin --> umin.  */
-    case 3155: return NULL;		/* umin --> NULL.  */
+    case 19: value = 3155; break;	/* addg --> smax.  */
+    case 3155: value = 3156; break;	/* smax --> umax.  */
+    case 3156: value = 3157; break;	/* umax --> smin.  */
+    case 3157: value = 3158; break;	/* smin --> umin.  */
+    case 3158: return NULL;		/* umin --> NULL.  */
     case 16: value = 20; break;	/* sub --> subg.  */
     case 20: return NULL;		/* subg --> NULL.  */
     case 971: value = 975; break;	/* stnp --> stp.  */
@@ -30899,8 +30932,8 @@ aarch64_find_next_opcode (const aarch64_opcode *opcode)
     case 824: return NULL;		/* fsqrt --> NULL.  */
     case 832: value = 833; break;	/* frintz --> frintz.  */
     case 833: return NULL;		/* frintz --> NULL.  */
-    case 825: value = 3026; break;	/* fcvt --> bfcvt.  */
-    case 3026: return NULL;		/* bfcvt --> NULL.  */
+    case 825: value = 3029; break;	/* fcvt --> bfcvt.  */
+    case 3029: return NULL;		/* bfcvt --> NULL.  */
     case 834: value = 835; break;	/* frinta --> frinta.  */
     case 835: return NULL;		/* frinta --> NULL.  */
     case 836: value = 837; break;	/* frintx --> frintx.  */
diff --git a/opcodes/aarch64-tbl.h b/opcodes/aarch64-tbl.h
index aef29d610ca..265aaa7e4ba 100644
--- a/opcodes/aarch64-tbl.h
+++ b/opcodes/aarch64-tbl.h
@@ -5370,9 +5370,12 @@ const struct aarch64_opcode aarch64_opcode_table[] =
   SME2_INSNC ("sdot", 0x4400c800, 0xffe0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm_16), OP_SVE_SHH, 0, C_SCAN_MOVPRFX, 0),
   SME2_INSN ("sqcvtn", 0x45314000, 0xfffffc20, sve_misc, 0, OP2 (SVE_Zd, SME_Znx2), OP_SVE_HS, 0, 0),
   SME2_INSN ("sqcvtun", 0x45315000, 0xfffffc20, sve_misc, 0, OP2 (SVE_Zd, SME_Znx2), OP_SVE_HS, 0, 0),
+  SME2_INSN ("sqrshrn", 0x45b02800, 0xfff0fc20, sme_misc, 0, OP3 (SVE_Zd, SME_Znx2, SME_SHRIMM4), OP_SVE_HSU, 0, 0),
+  SME2_INSN ("sqrshrun", 0x45b00800, 0xfff0fc20, sme_misc, 0, OP3 (SVE_Zd, SME_Znx2, SME_SHRIMM4), OP_SVE_HSU, 0, 0),
   SME2_INSNC ("udot", 0x4480cc00, 0xffe0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_19_INDEX), OP_SVE_SHH, 0, C_SCAN_MOVPRFX, 0),
   SME2_INSNC ("udot", 0x4400cc00, 0xffe0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm_16), OP_SVE_SHH, 0, C_SCAN_MOVPRFX, 0),
   SME2_INSN ("uqcvtn", 0x45314800, 0xfffffc20, sve_misc, 0, OP2 (SVE_Zd, SME_Znx2), OP_SVE_HS, 0, 0),
+  SME2_INSN ("uqrshrn", 0x45b03800, 0xfff0fc20, sme_misc, 0, OP3 (SVE_Zd, SME_Znx2, SME_SHRIMM4), OP_SVE_HSU, 0, 0),
   SME2_INSN ("whilege", 0x25205010, 0xff20fc11, sme_size_22, 0, OP3 (SME_Pdx2, Rn, Rm), OP_SVE_VXX_BHSD, 0, 0),
   SME2_INSN ("whilegt", 0x25205011, 0xff20fc11, sme_size_22, 0, OP3 (SME_Pdx2, Rn, Rm), OP_SVE_VXX_BHSD, 0, 0),
   SME2_INSN ("whilehi", 0x25205811, 0xff20fc11, sme_size_22, 0, OP3 (SME_Pdx2, Rn, Rm), OP_SVE_VXX_BHSD, 0, 0),
-- 
2.25.1


  parent reply	other threads:[~2023-03-30 10:27 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-30 10:26 [PATCH 00/31] aarch64: Add SME2 support Richard Sandiford
2023-03-30 10:26 ` [PATCH 01/31] aarch64: Add +sme2 Richard Sandiford
2023-03-30 10:26 ` [PATCH 02/31] aarch64: Add a _10 suffix to FLD_imm3 Richard Sandiford
2023-03-30 10:26 ` [PATCH 03/31] aarch64: Add _off4 suffix to AARCH64_OPND_SME_ZA_array Richard Sandiford
2023-03-30 10:26 ` [PATCH 04/31] aarch64: Add support for vgx2 and vgx4 Richard Sandiford
2023-03-30 10:26 ` [PATCH 05/31] aarch64; Add support for vector offset ranges Richard Sandiford
2023-03-30 10:26 ` [PATCH 06/31] aarch64: Add support for predicate-as-counter registers Richard Sandiford
2023-03-30 10:26 ` [PATCH 07/31] aarch64: Add the SME2 MOVA instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 08/31] aarch64: Add the SME2 multivector LD1 and ST1 instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 09/31] aarch64: Add the SME2 predicate-related instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 10/31] aarch64: Add the SME2 ZT0 instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 11/31] aarch64: Add the SME2 ADD and SUB instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 12/31] aarch64: Add the SME2 maximum/minimum instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 13/31] aarch64: Add the SME2 FMLA and FMLS instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 14/31] aarch64: Add the SME2 MLAL and MLSL instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 15/31] aarch64: Add the SME2 MLALL and MLSLL instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 16/31] aarch64: Add the SME2 dot-product instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 17/31] aarch64: Add the SME2 vertical " Richard Sandiford
2023-03-30 10:26 ` [PATCH 18/31] aarch64: Add the SME2 MOPA and MOPS instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 19/31] aarch64: Add the SME2 CLAMP instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 20/31] aarch64: Add the SME2 FP<->int conversion instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 21/31] aarch64: Add the SME2 FP<->FP " Richard Sandiford
2023-03-30 10:26 ` [PATCH 22/31] aarch64: Add the SME2 saturating " Richard Sandiford
2023-03-30 10:26 ` [PATCH 23/31] aarch64: Add the SME2 shift instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 24/31] aarch64: Add the SME2 UNPK instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 25/31] aarch64: Add the SME2 UZP and ZIP instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 26/31] aarch64: Add the SVE BFMLSL instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 27/31] aarch64: Add new SVE dot-product instructions Richard Sandiford
2023-03-30 10:26 ` [PATCH 28/31] aarch64: Add new SVE saturating conversion instructions Richard Sandiford
2023-03-30 10:26 ` Richard Sandiford [this message]
2023-03-30 10:26 ` [PATCH 30/31] aarch64: Add the SVE FCLAMP instruction Richard Sandiford
2023-03-30 10:26 ` [PATCH 31/31] aarch64: Add the RPRFM instruction Richard Sandiford
2023-04-02  9:35 ` [PATCH 00/31] aarch64: Add SME2 support Jan Beulich
2023-04-03  8:05   ` Richard Sandiford
2023-04-03  8:14     ` Jan Beulich
2023-04-03  8:27       ` Richard Sandiford
2023-04-03  8:37         ` Jan Beulich
2023-04-03  9:31           ` Richard Sandiford
2023-04-03  7:16 ` Jan Beulich
2023-04-03  8:13   ` Richard Sandiford

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230330102646.3327818-30-richard.sandiford@arm.com \
    --to=richard.sandiford@arm.com \
    --cc=binutils@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).