BFD error message suppression test case
[binutils-gdb.git] / opcodes / aarch64-dis-2.c
index 4376e3bc569406909c9d50fb664b88be6d04751b..3ae40c18e347fce7f08e0767e872ccfd29c665b3 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is automatically generated by aarch64-gen.  Do not edit!  */
-/* Copyright (C) 2012-2021 Free Software Foundation, Inc.
+/* Copyright (C) 2012-2022 Free Software Foundation, Inc.
    Contributed by ARM Ltd.
 
    This file is part of the GNU opcodes library.
@@ -38,47 +38,113 @@ aarch64_opcode_lookup_1 (uint32_t word)
                     {
                       if (((word >> 21) & 0x1) == 0)
                         {
-                          if (((word >> 22) & 0x1) == 0)
+                          if (((word >> 29) & 0x1) == 0)
                             {
-                              if (((word >> 23) & 0x1) == 0)
+                              if (((word >> 30) & 0x1) == 0)
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xxx00000000xxxxxxxxxxxxxxxxxxxxx
-                                     udf.  */
-                                  return 754;
+                                  if (((word >> 22) & 0x1) == 0)
+                                    {
+                                      if (((word >> 23) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x0000000000xxxxxxxxxxxxxxxxxxxxx
+                                             udf.  */
+                                          return 754;
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 4) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x0000000100xxxxxxxxxxxxxxxx0xxxx
+                                                 fmopa.  */
+                                              return 2360;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x0000000100xxxxxxxxxxxxxxxx1xxxx
+                                                 fmops.  */
+                                              return 2363;
+                                            }
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 4) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x0000000x10xxxxxxxxxxxxxxxx0xxxx
+                                             fmopa.  */
+                                          return 2361;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x0000000x10xxxxxxxxxxxxxxxx1xxxx
+                                             fmops.  */
+                                          return 2364;
+                                        }
+                                    }
                                 }
                               else
                                 {
-                                  if (((word >> 4) & 0x1) == 0)
+                                  if (((word >> 17) & 0x1) == 0)
                                     {
-                                      if (((word >> 29) & 0x1) == 0)
+                                      if (((word >> 19) & 0x1) == 0)
                                         {
-                                          if (((word >> 30) & 0x1) == 0)
+                                          if (((word >> 20) & 0x1) == 0)
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 x0000000100xxxxxxxxxxxxxxxx0xxxx
-                                                 fmopa.  */
-                                              return 2354;
+                                                 x1000000xx000x0xxxxxxxxxxxxxxxxx
+                                                 mov.  */
+                                              return 2384;
                                             }
                                           else
                                             {
                                               if (((word >> 16) & 0x1) == 0)
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x1000000100xxxx0xxxxxxxxxxx0xxxx
-                                                     addha.  */
-                                                  return 2348;
+                                                  if (((word >> 22) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1000000x0010x00xxxxxxxxxxxxxxxx
+                                                         addha.  */
+                                                      return 2352;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1000000x1010x00xxxxxxxxxxxxxxxx
+                                                         addha.  */
+                                                      return 2353;
+                                                    }
                                                 }
                                               else
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x1000000100xxxx1xxxxxxxxxxx0xxxx
-                                                     addva.  */
-                                                  return 2350;
+                                                  if (((word >> 22) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1000000x0010x01xxxxxxxxxxxxxxxx
+                                                         addva.  */
+                                                      return 2356;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1000000x1010x01xxxxxxxxxxxxxxxx
+                                                         addva.  */
+                                                      return 2357;
+                                                    }
                                                 }
                                             }
                                         }
@@ -86,29 +152,18 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                         {
                                           /* 33222222222211111111110000000000
                                              10987654321098765432109876543210
-                                             xx100000100xxxxxxxxxxxxxxxx0xxxx
-                                             smopa.  */
-                                          return 2360;
+                                             x1000000xx0x1x0xxxxxxxxxxxxxxxxx
+                                             zero.  */
+                                          return 2387;
                                         }
                                     }
                                   else
                                     {
-                                      if (((word >> 29) & 0x1) == 0)
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx000000100xxxxxxxxxxxxxxxx1xxxx
-                                             fmops.  */
-                                          return 2357;
-                                        }
-                                      else
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx100000100xxxxxxxxxxxxxxxx1xxxx
-                                             smops.  */
-                                          return 2362;
-                                        }
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1000000xx0xxx1xxxxxxxxxxxxxxxxx
+                                         mov.  */
+                                      return 2383;
                                     }
                                 }
                             }
@@ -116,54 +171,76 @@ aarch64_opcode_lookup_1 (uint32_t word)
                             {
                               if (((word >> 4) & 0x1) == 0)
                                 {
-                                  if (((word >> 29) & 0x1) == 0)
+                                  if (((word >> 22) & 0x1) == 0)
                                     {
-                                      if (((word >> 30) & 0x1) == 0)
+                                      if (((word >> 23) & 0x1) == 0)
                                         {
                                           /* 33222222222211111111110000000000
                                              10987654321098765432109876543210
-                                             x0000000x10xxxxxxxxxxxxxxxx0xxxx
-                                             fmopa.  */
-                                          return 2355;
+                                             xx100000000xxxxxxxxxxxxxxxx0xxxx
+                                             ld1b.  */
+                                          return 2388;
                                         }
                                       else
                                         {
-                                          if (((word >> 16) & 0x1) == 0)
+                                          if (((word >> 30) & 0x1) == 0)
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 x1000000x10xxxx0xxxxxxxxxxx0xxxx
-                                                 addha.  */
-                                              return 2349;
+                                                 x0100000100xxxxxxxxxxxxxxxx0xxxx
+                                                 smopa.  */
+                                              return 2367;
                                             }
                                           else
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 x1000000x10xxxx1xxxxxxxxxxx0xxxx
-                                                 addva.  */
-                                              return 2351;
+                                                 x1100000100xxxxxxxxxxxxxxxx0xxxx
+                                                 ld1w.  */
+                                              return 2390;
                                             }
                                         }
                                     }
                                   else
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx100000x10xxxxxxxxxxxxxxxx0xxxx
-                                         smopa.  */
-                                      return 2361;
+                                      if (((word >> 23) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx100000010xxxxxxxxxxxxxxxx0xxxx
+                                             ld1h.  */
+                                          return 2389;
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 30) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x0100000110xxxxxxxxxxxxxxxx0xxxx
+                                                 smopa.  */
+                                              return 2368;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x1100000110xxxxxxxxxxxxxxxx0xxxx
+                                                 ld1d.  */
+                                              return 2391;
+                                            }
+                                        }
                                     }
                                 }
                               else
                                 {
-                                  if (((word >> 29) & 0x1) == 0)
+                                  if (((word >> 22) & 0x1) == 0)
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         xx000000x10xxxxxxxxxxxxxxxx1xxxx
-                                         fmops.  */
-                                      return 2358;
+                                         xx100000x00xxxxxxxxxxxxxxxx1xxxx
+                                         smops.  */
+                                      return 2369;
                                     }
                                   else
                                     {
@@ -171,7 +248,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          xx100000x10xxxxxxxxxxxxxxxx1xxxx
                                          smops.  */
-                                      return 2363;
+                                      return 2370;
                                     }
                                 }
                             }
@@ -182,19 +259,63 @@ aarch64_opcode_lookup_1 (uint32_t word)
                             {
                               if (((word >> 22) & 0x1) == 0)
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xxx00000x01xxxxxxxxxxxxxxxx0xxxx
-                                     sumopa.  */
-                                  return 2364;
+                                  if (((word >> 23) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         xxx00000001xxxxxxxxxxxxxxxx0xxxx
+                                         st1b.  */
+                                      return 2398;
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 30) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x0x00000101xxxxxxxxxxxxxxxx0xxxx
+                                             sumopa.  */
+                                          return 2371;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x1x00000101xxxxxxxxxxxxxxxx0xxxx
+                                             st1w.  */
+                                          return 2400;
+                                        }
+                                    }
                                 }
                               else
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xxx00000x11xxxxxxxxxxxxxxxx0xxxx
-                                     sumopa.  */
-                                  return 2365;
+                                  if (((word >> 23) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         xxx00000011xxxxxxxxxxxxxxxx0xxxx
+                                         st1h.  */
+                                      return 2399;
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 30) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x0x00000111xxxxxxxxxxxxxxxx0xxxx
+                                             sumopa.  */
+                                          return 2372;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x1x00000111xxxxxxxxxxxxxxxx0xxxx
+                                             st1d.  */
+                                          return 2401;
+                                        }
+                                    }
                                 }
                             }
                           else
@@ -205,7 +326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                      10987654321098765432109876543210
                                      xxx00000x01xxxxxxxxxxxxxxxx1xxxx
                                      sumops.  */
-                                  return 2366;
+                                  return 2373;
                                 }
                               else
                                 {
@@ -213,7 +334,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                      10987654321098765432109876543210
                                      xxx00000x11xxxxxxxxxxxxxxxx1xxxx
                                      sumops.  */
-                                  return 2367;
+                                  return 2374;
                                 }
                             }
                         }
@@ -248,60 +369,104 @@ aarch64_opcode_lookup_1 (uint32_t word)
                             {
                               if (((word >> 22) & 0x1) == 0)
                                 {
-                                  if (((word >> 29) & 0x1) == 0)
+                                  if (((word >> 23) & 0x1) == 0)
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         xx000001x00xxxxxxxxxxxxxxxx0xxxx
-                                         bfmopa.  */
-                                      return 2352;
+                                         xxx00001000xxxxxxxxxxxxxxxx0xxxx
+                                         ldr.  */
+                                      return 2408;
                                     }
                                   else
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx100001x00xxxxxxxxxxxxxxxx0xxxx
-                                         usmopa.  */
-                                      return 2372;
+                                      if (((word >> 29) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx000001100xxxxxxxxxxxxxxxx0xxxx
+                                             bfmopa.  */
+                                          return 2358;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx100001100xxxxxxxxxxxxxxxx0xxxx
+                                             usmopa.  */
+                                          return 2379;
+                                        }
                                     }
                                 }
                               else
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xxx00001x10xxxxxxxxxxxxxxxx0xxxx
-                                     usmopa.  */
-                                  return 2373;
+                                  if (((word >> 30) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x0x00001x10xxxxxxxxxxxxxxxx0xxxx
+                                         usmopa.  */
+                                      return 2380;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1x00001x10xxxxxxxxxxxxxxxx0xxxx
+                                         ld1q.  */
+                                      return 2392;
+                                    }
                                 }
                             }
                           else
                             {
                               if (((word >> 22) & 0x1) == 0)
                                 {
-                                  if (((word >> 29) & 0x1) == 0)
+                                  if (((word >> 23) & 0x1) == 0)
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         xx000001x01xxxxxxxxxxxxxxxx0xxxx
-                                         fmopa.  */
-                                      return 2356;
+                                         xxx00001001xxxxxxxxxxxxxxxx0xxxx
+                                         str.  */
+                                      return 2409;
                                     }
                                   else
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx100001x01xxxxxxxxxxxxxxxx0xxxx
-                                         umopa.  */
-                                      return 2368;
+                                      if (((word >> 29) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx000001101xxxxxxxxxxxxxxxx0xxxx
+                                             fmopa.  */
+                                          return 2362;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx100001101xxxxxxxxxxxxxxxx0xxxx
+                                             umopa.  */
+                                          return 2375;
+                                        }
                                     }
                                 }
                               else
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xxx00001x11xxxxxxxxxxxxxxxx0xxxx
-                                     umopa.  */
-                                  return 2369;
+                                  if (((word >> 30) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x0x00001x11xxxxxxxxxxxxxxxx0xxxx
+                                         umopa.  */
+                                      return 2376;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1x00001x11xxxxxxxxxxxxxxxx0xxxx
+                                         st1q.  */
+                                      return 2402;
+                                    }
                                 }
                             }
                         }
@@ -317,7 +482,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          xx000001x00xxxxxxxxxxxxxxxx1xxxx
                                          bfmops.  */
-                                      return 2353;
+                                      return 2359;
                                     }
                                   else
                                     {
@@ -325,7 +490,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          xx100001x00xxxxxxxxxxxxxxxx1xxxx
                                          usmops.  */
-                                      return 2374;
+                                      return 2381;
                                     }
                                 }
                               else
@@ -334,7 +499,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                      10987654321098765432109876543210
                                      xxx00001x10xxxxxxxxxxxxxxxx1xxxx
                                      usmops.  */
-                                  return 2375;
+                                  return 2382;
                                 }
                             }
                           else
@@ -347,7 +512,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          xx000001x01xxxxxxxxxxxxxxxx1xxxx
                                          fmops.  */
-                                      return 2359;
+                                      return 2365;
                                     }
                                   else
                                     {
@@ -355,7 +520,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          xx100001x01xxxxxxxxxxxxxxxx1xxxx
                                          umops.  */
-                                      return 2370;
+                                      return 2377;
                                     }
                                 }
                               else
@@ -364,7 +529,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                      10987654321098765432109876543210
                                      xxx00001x11xxxxxxxxxxxxxxxx1xxxx
                                      umops.  */
-                                  return 2371;
+                                  return 2378;
                                 }
                             }
                         }
@@ -2731,7 +2896,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          00011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlurb.  */
-                                                      return 2416;
+                                                      return 2454;
                                                     }
                                                   else
                                                     {
@@ -2739,7 +2904,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          10011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlur.  */
-                                                      return 2424;
+                                                      return 2462;
                                                     }
                                                 }
                                               else
@@ -2750,7 +2915,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          01011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlurh.  */
-                                                      return 2420;
+                                                      return 2458;
                                                     }
                                                   else
                                                     {
@@ -2758,7 +2923,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          11011001000xxxxxxxxx00xxxxxxxxxx
                                                          stlur.  */
-                                                      return 2427;
+                                                      return 2465;
                                                     }
                                                 }
                                             }
@@ -2782,33 +2947,209 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                     }
                                   else
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx01100100xxxxxxxxxxx1xxxxxxxxxx
-                                         stg.  */
-                                      return 885;
-                                    }
-                                }
-                              else
-                                {
-                                  if (((word >> 31) & 0x1) == 0)
-                                    {
-                                      if (((word >> 30) & 0x1) == 0)
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             0011100100xxxxxxxxxxxxxxxxxxxxxx
-                                             strb.  */
-                                          return 889;
-                                        }
-                                      else
+                                      if (((word >> 21) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             0111100100xxxxxxxxxxxxxxxxxxxxxx
-                                             strh.  */
-                                          return 894;
-                                        }
+                                          if (((word >> 12) & 0x1) == 0)
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0000x1xxxxxxxxxx
+                                                             cpyfp.  */
+                                                          return 2514;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1000x1xxxxxxxxxx
+                                                             cpyfprn.  */
+                                                          return 2520;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0100x1xxxxxxxxxx
+                                                             cpyfpwn.  */
+                                                          return 2517;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1100x1xxxxxxxxxx
+                                                             cpyfpn.  */
+                                                          return 2523;
+                                                        }
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0010x1xxxxxxxxxx
+                                                             cpyfprt.  */
+                                                          return 2538;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1010x1xxxxxxxxxx
+                                                             cpyfprtrn.  */
+                                                          return 2544;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0110x1xxxxxxxxxx
+                                                             cpyfprtwn.  */
+                                                          return 2541;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1110x1xxxxxxxxxx
+                                                             cpyfprtn.  */
+                                                          return 2547;
+                                                        }
+                                                    }
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0001x1xxxxxxxxxx
+                                                             cpyfpwt.  */
+                                                          return 2526;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1001x1xxxxxxxxxx
+                                                             cpyfpwtrn.  */
+                                                          return 2532;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0101x1xxxxxxxxxx
+                                                             cpyfpwtwn.  */
+                                                          return 2529;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1101x1xxxxxxxxxx
+                                                             cpyfpwtn.  */
+                                                          return 2535;
+                                                        }
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0011x1xxxxxxxxxx
+                                                             cpyfpt.  */
+                                                          return 2550;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1011x1xxxxxxxxxx
+                                                             cpyfptrn.  */
+                                                          return 2556;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx0111x1xxxxxxxxxx
+                                                             cpyfptwn.  */
+                                                          return 2553;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001000xxxxx1111x1xxxxxxxxxx
+                                                             cpyfptn.  */
+                                                          return 2559;
+                                                        }
+                                                    }
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx011001001xxxxxxxxxx1xxxxxxxxxx
+                                             stg.  */
+                                          return 885;
+                                        }
+                                    }
+                                }
+                              else
+                                {
+                                  if (((word >> 31) & 0x1) == 0)
+                                    {
+                                      if (((word >> 30) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             0011100100xxxxxxxxxxxxxxxxxxxxxx
+                                             strb.  */
+                                          return 889;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             0111100100xxxxxxxxxxxxxxxxxxxxxx
+                                             strh.  */
+                                          return 894;
+                                        }
                                     }
                                   else
                                     {
@@ -2838,7 +3179,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          00011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapurb.  */
-                                                      return 2417;
+                                                      return 2455;
                                                     }
                                                   else
                                                     {
@@ -2846,7 +3187,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          10011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapur.  */
-                                                      return 2425;
+                                                      return 2463;
                                                     }
                                                 }
                                               else
@@ -2857,7 +3198,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          01011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapurh.  */
-                                                      return 2421;
+                                                      return 2459;
                                                     }
                                                   else
                                                     {
@@ -2865,7 +3206,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          11011001010xxxxxxxxx00xxxxxxxxxx
                                                          ldapur.  */
-                                                      return 2428;
+                                                      return 2466;
                                                     }
                                                 }
                                             }
@@ -2888,104 +3229,280 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                         }
                                     }
                                   else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx01100101xxxxxxxxxxx1xxxxxxxxxx
-                                         stzg.  */
-                                      return 886;
-                                    }
-                                }
-                              else
-                                {
-                                  if (((word >> 31) & 0x1) == 0)
-                                    {
-                                      if (((word >> 30) & 0x1) == 0)
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             0011100101xxxxxxxxxxxxxxxxxxxxxx
-                                             ldrb.  */
-                                          return 890;
-                                        }
-                                      else
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             0111100101xxxxxxxxxxxxxxxxxxxxxx
-                                             ldrh.  */
-                                          return 895;
-                                        }
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         1x11100101xxxxxxxxxxxxxxxxxxxxxx
-                                         ldr.  */
-                                      return 898;
-                                    }
-                                }
-                            }
-                        }
-                      else
-                        {
-                          if (((word >> 29) & 0x1) == 0)
-                            {
-                              if (((word >> 10) & 0x1) == 0)
-                                {
-                                  if (((word >> 11) & 0x1) == 0)
                                     {
                                       if (((word >> 21) & 0x1) == 0)
                                         {
-                                          if (((word >> 22) & 0x1) == 0)
+                                          if (((word >> 12) & 0x1) == 0)
                                             {
-                                              if (((word >> 30) & 0x1) == 0)
+                                              if (((word >> 13) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 31) & 0x1) == 0)
+                                                  if (((word >> 14) & 0x1) == 0)
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         00011001100xxxxxxxxx00xxxxxxxxxx
-                                                         ldapursb.  */
-                                                      return 2419;
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0000x1xxxxxxxxxx
+                                                             cpyfm.  */
+                                                          return 2515;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1000x1xxxxxxxxxx
+                                                             cpyfmrn.  */
+                                                          return 2521;
+                                                        }
                                                     }
                                                   else
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         10011001100xxxxxxxxx00xxxxxxxxxx
-                                                         ldapursw.  */
-                                                      return 2426;
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0100x1xxxxxxxxxx
+                                                             cpyfmwn.  */
+                                                          return 2518;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1100x1xxxxxxxxxx
+                                                             cpyfmn.  */
+                                                          return 2524;
+                                                        }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x1011001100xxxxxxxxx00xxxxxxxxxx
-                                                     ldapursh.  */
-                                                  return 2423;
-                                                }
-                                            }
-                                          else
-                                            {
-                                              if (((word >> 30) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x0011001110xxxxxxxxx00xxxxxxxxxx
-                                                     ldapursb.  */
-                                                  return 2418;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x1011001110xxxxxxxxx00xxxxxxxxxx
-                                                     ldapursh.  */
-                                                  return 2422;
-                                                }
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0010x1xxxxxxxxxx
+                                                             cpyfmrt.  */
+                                                          return 2539;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1010x1xxxxxxxxxx
+                                                             cpyfmrtrn.  */
+                                                          return 2545;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0110x1xxxxxxxxxx
+                                                             cpyfmrtwn.  */
+                                                          return 2542;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1110x1xxxxxxxxxx
+                                                             cpyfmrtn.  */
+                                                          return 2548;
+                                                        }
+                                                    }
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0001x1xxxxxxxxxx
+                                                             cpyfmwt.  */
+                                                          return 2527;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1001x1xxxxxxxxxx
+                                                             cpyfmwtrn.  */
+                                                          return 2533;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0101x1xxxxxxxxxx
+                                                             cpyfmwtwn.  */
+                                                          return 2530;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1101x1xxxxxxxxxx
+                                                             cpyfmwtn.  */
+                                                          return 2536;
+                                                        }
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0011x1xxxxxxxxxx
+                                                             cpyfmt.  */
+                                                          return 2551;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1011x1xxxxxxxxxx
+                                                             cpyfmtrn.  */
+                                                          return 2557;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 15) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx0111x1xxxxxxxxxx
+                                                             cpyfmtwn.  */
+                                                          return 2554;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001010xxxxx1111x1xxxxxxxxxx
+                                                             cpyfmtn.  */
+                                                          return 2560;
+                                                        }
+                                                    }
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx011001011xxxxxxxxxx1xxxxxxxxxx
+                                             stzg.  */
+                                          return 886;
+                                        }
+                                    }
+                                }
+                              else
+                                {
+                                  if (((word >> 31) & 0x1) == 0)
+                                    {
+                                      if (((word >> 30) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             0011100101xxxxxxxxxxxxxxxxxxxxxx
+                                             ldrb.  */
+                                          return 890;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             0111100101xxxxxxxxxxxxxxxxxxxxxx
+                                             ldrh.  */
+                                          return 895;
+                                        }
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         1x11100101xxxxxxxxxxxxxxxxxxxxxx
+                                         ldr.  */
+                                      return 898;
+                                    }
+                                }
+                            }
+                        }
+                      else
+                        {
+                          if (((word >> 29) & 0x1) == 0)
+                            {
+                              if (((word >> 10) & 0x1) == 0)
+                                {
+                                  if (((word >> 11) & 0x1) == 0)
+                                    {
+                                      if (((word >> 21) & 0x1) == 0)
+                                        {
+                                          if (((word >> 22) & 0x1) == 0)
+                                            {
+                                              if (((word >> 30) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 31) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         00011001100xxxxxxxxx00xxxxxxxxxx
+                                                         ldapursb.  */
+                                                      return 2457;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         10011001100xxxxxxxxx00xxxxxxxxxx
+                                                         ldapursw.  */
+                                                      return 2464;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x1011001100xxxxxxxxx00xxxxxxxxxx
+                                                     ldapursh.  */
+                                                  return 2461;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 30) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x0011001110xxxxxxxxx00xxxxxxxxxx
+                                                     ldapursb.  */
+                                                  return 2456;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x1011001110xxxxxxxxx00xxxxxxxxxx
+                                                     ldapursh.  */
+                                                  return 2460;
+                                                }
                                             }
                                         }
                                       else
@@ -3030,592 +3547,900 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                 }
                               else
                                 {
-                                  if (((word >> 22) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx01100110xxxxxxxxxxx1xxxxxxxxxx
-                                         st2g.  */
-                                      return 887;
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx01100111xxxxxxxxxxx1xxxxxxxxxx
-                                         stz2g.  */
-                                      return 888;
-                                    }
-                                }
-                            }
-                          else
-                            {
-                              if (((word >> 30) & 0x1) == 0)
-                                {
-                                  if (((word >> 31) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         001110011xxxxxxxxxxxxxxxxxxxxxxx
-                                         ldrsb.  */
-                                      return 891;
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         101110011xxxxxxxxxxxxxxxxxxxxxxx
-                                         ldrsw.  */
-                                      return 899;
-                                    }
-                                }
-                              else
-                                {
-                                  if (((word >> 31) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         011110011xxxxxxxxxxxxxxxxxxxxxxx
-                                         ldrsh.  */
-                                      return 896;
-                                    }
-                                  else
+                                  if (((word >> 21) & 0x1) == 0)
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         111110011xxxxxxxxxxxxxxxxxxxxxxx
-                                         prfm.  */
-                                      return 900;
-                                    }
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-        }
-      else
-        {
-          if (((word >> 24) & 0x1) == 0)
-            {
-              if (((word >> 27) & 0x1) == 0)
-                {
-                  if (((word >> 23) & 0x1) == 0)
-                    {
-                      if (((word >> 29) & 0x1) == 0)
-                        {
-                          if (((word >> 30) & 0x1) == 0)
-                            {
-                              /* 33222222222211111111110000000000
-                                 10987654321098765432109876543210
-                                 x00x00100xxxxxxxxxxxxxxxxxxxxxxx
-                                 and.  */
-                              return 995;
-                            }
-                          else
-                            {
-                              /* 33222222222211111111110000000000
-                                 10987654321098765432109876543210
-                                 x10x00100xxxxxxxxxxxxxxxxxxxxxxx
-                                 eor.  */
-                              return 999;
-                            }
-                        }
-                      else
-                        {
-                          if (((word >> 30) & 0x1) == 0)
-                            {
-                              /* 33222222222211111111110000000000
-                                 10987654321098765432109876543210
-                                 x01x00100xxxxxxxxxxxxxxxxxxxxxxx
-                                 orr.  */
-                              return 997;
-                            }
-                          else
-                            {
-                              /* 33222222222211111111110000000000
-                                 10987654321098765432109876543210
-                                 x11x00100xxxxxxxxxxxxxxxxxxxxxxx
-                                 ands.  */
-                              return 1000;
-                            }
-                        }
-                    }
-                  else
-                    {
-                      if (((word >> 29) & 0x1) == 0)
-                        {
-                          if (((word >> 30) & 0x1) == 0)
-                            {
-                              /* 33222222222211111111110000000000
-                                 10987654321098765432109876543210
-                                 x00x00101xxxxxxxxxxxxxxxxxxxxxxx
-                                 movn.  */
-                              return 1186;
-                            }
-                          else
-                            {
-                              /* 33222222222211111111110000000000
-                                 10987654321098765432109876543210
-                                 x10x00101xxxxxxxxxxxxxxxxxxxxxxx
-                                 movz.  */
-                              return 1188;
-                            }
-                        }
-                      else
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xx1x00101xxxxxxxxxxxxxxxxxxxxxxx
-                             movk.  */
-                          return 1190;
-                        }
-                    }
-                }
-              else
-                {
-                  if (((word >> 21) & 0x1) == 0)
-                    {
-                      if (((word >> 28) & 0x1) == 0)
-                        {
-                          if (((word >> 29) & 0x1) == 0)
-                            {
-                              if (((word >> 30) & 0x1) == 0)
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     x0001010xx0xxxxxxxxxxxxxxxxxxxxx
-                                     and.  */
-                                  return 1002;
-                                }
-                              else
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     x1001010xx0xxxxxxxxxxxxxxxxxxxxx
-                                     eor.  */
-                                  return 1009;
-                                }
-                            }
-                          else
-                            {
-                              if (((word >> 30) & 0x1) == 0)
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     x0101010xx0xxxxxxxxxxxxxxxxxxxxx
-                                     orr.  */
-                                  return 1004;
-                                }
-                              else
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     x1101010xx0xxxxxxxxxxxxxxxxxxxxx
-                                     ands.  */
-                                  return 1011;
-                                }
-                            }
-                        }
-                      else
-                        {
-                          if (((word >> 10) & 0x1) == 0)
-                            {
-                              if (((word >> 11) & 0x1) == 0)
-                                {
-                                  if (((word >> 22) & 0x1) == 0)
-                                    {
-                                      if (((word >> 23) & 0x1) == 0)
-                                        {
-                                          if (((word >> 29) & 0x1) == 0)
-                                            {
-                                              if (((word >> 30) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x0011010000xxxxxxxxx00xxxxxxxxxx
-                                                     adc.  */
-                                                  return 0;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x1011010000xxxxxxxxx00xxxxxxxxxx
-                                                     sbc.  */
-                                                  return 2;
-                                                }
-                                            }
-                                          else
-                                            {
-                                              if (((word >> 30) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x0111010000xxxxxxxxx00xxxxxxxxxx
-                                                     adcs.  */
-                                                  return 1;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x1111010000xxxxxxxxx00xxxxxxxxxx
-                                                     sbcs.  */
-                                                  return 4;
-                                                }
-                                            }
-                                        }
-                                      else
-                                        {
-                                          if (((word >> 30) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x0x11010100xxxxxxxxx00xxxxxxxxxx
-                                                 csel.  */
-                                              return 662;
-                                            }
-                                          else
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x1x11010100xxxxxxxxx00xxxxxxxxxx
-                                                 csinv.  */
-                                              return 666;
-                                            }
-                                        }
-                                    }
-                                  else
-                                    {
-                                      if (((word >> 23) & 0x1) == 0)
-                                        {
-                                          if (((word >> 30) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x0x11010010xxxxxxxxx00xxxxxxxxxx
-                                                 ccmn.  */
-                                              return 660;
-                                            }
-                                          else
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x1x11010010xxxxxxxxx00xxxxxxxxxx
-                                                 ccmp.  */
-                                              return 661;
-                                            }
-                                        }
-                                      else
+                                      if (((word >> 12) & 0x1) == 0)
                                         {
-                                          if (((word >> 12) & 0x1) == 0)
+                                          if (((word >> 13) & 0x1) == 0)
                                             {
-                                              if (((word >> 13) & 0x1) == 0)
+                                              if (((word >> 14) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 14) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      if (((word >> 29) & 0x1) == 0)
+                                                      if (((word >> 22) & 0x1) == 0)
                                                         {
-                                                          if (((word >> 30) & 0x1) == 0)
-                                                            {
-                                                              /* 33222222222211111111110000000000
-                                                                 10987654321098765432109876543210
-                                                                 x0011010110xxxxxx00000xxxxxxxxxx
-                                                                 subp.  */
-                                                              return 721;
-                                                            }
-                                                          else
-                                                            {
-                                                              if (((word >> 16) & 0x1) == 0)
-                                                                {
-                                                                  /* 33222222222211111111110000000000
-                                                                     10987654321098765432109876543210
-                                                                     x1011010110xxxx0x00000xxxxxxxxxx
-                                                                     rbit.  */
-                                                                  return 685;
-                                                                }
-                                                              else
-                                                                {
-                                                                  /* 33222222222211111111110000000000
-                                                                     10987654321098765432109876543210
-                                                                     x1011010110xxxx1x00000xxxxxxxxxx
-                                                                     pacia.  */
-                                                                  return 693;
-                                                                }
-                                                            }
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx0000x1xxxxxxxxxx
+                                                             cpyfe.  */
+                                                          return 2516;
                                                         }
                                                       else
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             xx111010110xxxxxx00000xxxxxxxxxx
-                                                             subps.  */
-                                                          return 722;
+                                                             xx011001110xxxxx0000x1xxxxxxxxxx
+                                                             setp.  */
+                                                          return 2610;
                                                         }
                                                     }
                                                   else
                                                     {
-                                                      if (((word >> 30) & 0x1) == 0)
+                                                      if (((word >> 22) & 0x1) == 0)
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             x0x11010110xxxxxx10000xxxxxxxxxx
-                                                             crc32b.  */
-                                                          return 727;
+                                                             xx011001100xxxxx1000x1xxxxxxxxxx
+                                                             cpyfern.  */
+                                                          return 2522;
                                                         }
                                                       else
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             x1x11010110xxxxxx10000xxxxxxxxxx
-                                                             xpaci.  */
-                                                          return 709;
+                                                             xx011001110xxxxx1000x1xxxxxxxxxx
+                                                             sete.  */
+                                                          return 2612;
                                                         }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 30) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         x0x11010110xxxxxxx1000xxxxxxxxxx
-                                                         lslv.  */
-                                                      return 713;
-                                                    }
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx0100x1xxxxxxxxxx
+                                                             cpyfewn.  */
+                                                          return 2519;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0100x1xxxxxxxxxx
+                                                             setm.  */
+                                                          return 2611;
+                                                        }
+                                                    }
                                                   else
                                                     {
                                                       /* 33222222222211111111110000000000
                                                          10987654321098765432109876543210
-                                                         x1x11010110xxxxxxx1000xxxxxxxxxx
-                                                         paciza.  */
-                                                      return 701;
+                                                         xx0110011x0xxxxx1100x1xxxxxxxxxx
+                                                         cpyfen.  */
+                                                      return 2525;
                                                     }
                                                 }
                                             }
                                           else
                                             {
-                                              if (((word >> 13) & 0x1) == 0)
+                                              if (((word >> 14) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 14) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      if (((word >> 30) & 0x1) == 0)
+                                                      if (((word >> 22) & 0x1) == 0)
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             x0x11010110xxxxxx00100xxxxxxxxxx
-                                                             irg.  */
-                                                          return 724;
+                                                             xx011001100xxxxx0010x1xxxxxxxxxx
+                                                             cpyfert.  */
+                                                          return 2540;
                                                         }
                                                       else
                                                         {
-                                                          if (((word >> 16) & 0x1) == 0)
-                                                            {
-                                                              /* 33222222222211111111110000000000
-                                                                 10987654321098765432109876543210
-                                                                 x1x11010110xxxx0x00100xxxxxxxxxx
-                                                                 clz.  */
-                                                              return 690;
-                                                            }
-                                                          else
-                                                            {
-                                                              /* 33222222222211111111110000000000
-                                                                 10987654321098765432109876543210
-                                                                 x1x11010110xxxx1x00100xxxxxxxxxx
-                                                                 autia.  */
-                                                              return 697;
-                                                            }
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0010x1xxxxxxxxxx
+                                                             setpn.  */
+                                                          return 2616;
                                                         }
                                                     }
                                                   else
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         xxx11010110xxxxxx10100xxxxxxxxxx
-                                                         crc32cb.  */
-                                                      return 731;
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx1010x1xxxxxxxxxx
+                                                             cpyfertrn.  */
+                                                          return 2546;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx1010x1xxxxxxxxxx
+                                                             seten.  */
+                                                          return 2618;
+                                                        }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 30) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         x0x11010110xxxxxxx1100xxxxxxxxxx
-                                                         pacga.  */
-                                                      return 726;
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx0110x1xxxxxxxxxx
+                                                             cpyfertwn.  */
+                                                          return 2543;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0110x1xxxxxxxxxx
+                                                             setmn.  */
+                                                          return 2617;
+                                                        }
                                                     }
                                                   else
                                                     {
                                                       /* 33222222222211111111110000000000
                                                          10987654321098765432109876543210
-                                                         x1x11010110xxxxxxx1100xxxxxxxxxx
-                                                         autiza.  */
-                                                      return 705;
+                                                         xx0110011x0xxxxx1110x1xxxxxxxxxx
+                                                         cpyfertn.  */
+                                                      return 2549;
                                                     }
                                                 }
                                             }
                                         }
-                                    }
-                                }
-                              else
-                                {
-                                  if (((word >> 22) & 0x1) == 0)
-                                    {
-                                      if (((word >> 14) & 0x1) == 0)
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xxx11010x00xxxxxx0xx10xxxxxxxxxx
-                                             setf8.  */
-                                          return 2414;
-                                        }
-                                      else
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xxx11010x00xxxxxx1xx10xxxxxxxxxx
-                                             setf16.  */
-                                          return 2415;
-                                        }
-                                    }
-                                  else
-                                    {
-                                      if (((word >> 23) & 0x1) == 0)
-                                        {
-                                          if (((word >> 30) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x0x11010010xxxxxxxxx10xxxxxxxxxx
-                                                 ccmn.  */
-                                              return 658;
-                                            }
-                                          else
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x1x11010010xxxxxxxxx10xxxxxxxxxx
-                                                 ccmp.  */
-                                              return 659;
-                                            }
-                                        }
                                       else
                                         {
-                                          if (((word >> 12) & 0x1) == 0)
+                                          if (((word >> 13) & 0x1) == 0)
                                             {
-                                              if (((word >> 13) & 0x1) == 0)
+                                              if (((word >> 14) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 14) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      if (((word >> 30) & 0x1) == 0)
+                                                      if (((word >> 22) & 0x1) == 0)
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             x0x11010110xxxxxx00010xxxxxxxxxx
-                                                             udiv.  */
-                                                          return 711;
+                                                             xx011001100xxxxx0001x1xxxxxxxxxx
+                                                             cpyfewt.  */
+                                                          return 2528;
                                                         }
                                                       else
                                                         {
-                                                          if (((word >> 16) & 0x1) == 0)
-                                                            {
-                                                              if (((word >> 31) & 0x1) == 0)
-                                                                {
-                                                                  /* 33222222222211111111110000000000
-                                                                     10987654321098765432109876543210
-                                                                     01x11010110xxxx0x00010xxxxxxxxxx
-                                                                     rev.  */
-                                                                  return 687;
-                                                                }
-                                                              else
-                                                                {
-                                                                  /* 33222222222211111111110000000000
-                                                                     10987654321098765432109876543210
-                                                                     11x11010110xxxx0x00010xxxxxxxxxx
-                                                                     rev32.  */
-                                                                  return 692;
-                                                                }
-                                                            }
-                                                          else
-                                                            {
-                                                              /* 33222222222211111111110000000000
-                                                                 10987654321098765432109876543210
-                                                                 x1x11010110xxxx1x00010xxxxxxxxxx
-                                                                 pacda.  */
-                                                              return 695;
-                                                            }
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0001x1xxxxxxxxxx
+                                                             setpt.  */
+                                                          return 2613;
                                                         }
                                                     }
                                                   else
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         xxx11010110xxxxxx10010xxxxxxxxxx
-                                                         crc32w.  */
-                                                      return 729;
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx1001x1xxxxxxxxxx
+                                                             cpyfewtrn.  */
+                                                          return 2534;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx1001x1xxxxxxxxxx
+                                                             setet.  */
+                                                          return 2615;
+                                                        }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 30) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         x0x11010110xxxxxxx1010xxxxxxxxxx
-                                                         asrv.  */
-                                                      return 717;
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx0101x1xxxxxxxxxx
+                                                             cpyfewtwn.  */
+                                                          return 2531;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0101x1xxxxxxxxxx
+                                                             setmt.  */
+                                                          return 2614;
+                                                        }
                                                     }
                                                   else
                                                     {
                                                       /* 33222222222211111111110000000000
                                                          10987654321098765432109876543210
-                                                         x1x11010110xxxxxxx1010xxxxxxxxxx
-                                                         pacdza.  */
-                                                      return 703;
+                                                         xx0110011x0xxxxx1101x1xxxxxxxxxx
+                                                         cpyfewtn.  */
+                                                      return 2537;
                                                     }
                                                 }
                                             }
                                           else
                                             {
-                                              if (((word >> 13) & 0x1) == 0)
+                                              if (((word >> 14) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 14) & 0x1) == 0)
+                                                  if (((word >> 15) & 0x1) == 0)
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         xxx11010110xxxxxx00110xxxxxxxxxx
-                                                         autda.  */
-                                                      return 699;
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx0011x1xxxxxxxxxx
+                                                             cpyfet.  */
+                                                          return 2552;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0011x1xxxxxxxxxx
+                                                             setptn.  */
+                                                          return 2619;
+                                                        }
                                                     }
                                                   else
                                                     {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         xxx11010110xxxxxx10110xxxxxxxxxx
-                                                         crc32cw.  */
-                                                      return 733;
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx1011x1xxxxxxxxxx
+                                                             cpyfetrn.  */
+                                                          return 2558;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx1011x1xxxxxxxxxx
+                                                             setetn.  */
+                                                          return 2621;
+                                                        }
                                                     }
                                                 }
                                               else
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     xxx11010110xxxxxxx1110xxxxxxxxxx
-                                                     autdza.  */
-                                                  return 707;
+                                                  if (((word >> 15) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001100xxxxx0111x1xxxxxxxxxx
+                                                             cpyfetwn.  */
+                                                          return 2555;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx011001110xxxxx0111x1xxxxxxxxxx
+                                                             setmtn.  */
+                                                          return 2620;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         xx0110011x0xxxxx1111x1xxxxxxxxxx
+                                                         cpyfetn.  */
+                                                      return 2561;
+                                                    }
                                                 }
                                             }
                                         }
                                     }
-                                }
-                            }
-                          else
-                            {
-                              if (((word >> 11) & 0x1) == 0)
-                                {
+                                  else
+                                    {
+                                      if (((word >> 22) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx011001101xxxxxxxxxx1xxxxxxxxxx
+                                             st2g.  */
+                                          return 887;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx011001111xxxxxxxxxx1xxxxxxxxxx
+                                             stz2g.  */
+                                          return 888;
+                                        }
+                                    }
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 30) & 0x1) == 0)
+                                {
+                                  if (((word >> 31) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         001110011xxxxxxxxxxxxxxxxxxxxxxx
+                                         ldrsb.  */
+                                      return 891;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         101110011xxxxxxxxxxxxxxxxxxxxxxx
+                                         ldrsw.  */
+                                      return 899;
+                                    }
+                                }
+                              else
+                                {
+                                  if (((word >> 31) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         011110011xxxxxxxxxxxxxxxxxxxxxxx
+                                         ldrsh.  */
+                                      return 896;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         111110011xxxxxxxxxxxxxxxxxxxxxxx
+                                         prfm.  */
+                                      return 900;
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+        }
+      else
+        {
+          if (((word >> 24) & 0x1) == 0)
+            {
+              if (((word >> 27) & 0x1) == 0)
+                {
+                  if (((word >> 23) & 0x1) == 0)
+                    {
+                      if (((word >> 29) & 0x1) == 0)
+                        {
+                          if (((word >> 30) & 0x1) == 0)
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 x00x00100xxxxxxxxxxxxxxxxxxxxxxx
+                                 and.  */
+                              return 995;
+                            }
+                          else
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 x10x00100xxxxxxxxxxxxxxxxxxxxxxx
+                                 eor.  */
+                              return 999;
+                            }
+                        }
+                      else
+                        {
+                          if (((word >> 30) & 0x1) == 0)
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 x01x00100xxxxxxxxxxxxxxxxxxxxxxx
+                                 orr.  */
+                              return 997;
+                            }
+                          else
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 x11x00100xxxxxxxxxxxxxxxxxxxxxxx
+                                 ands.  */
+                              return 1000;
+                            }
+                        }
+                    }
+                  else
+                    {
+                      if (((word >> 29) & 0x1) == 0)
+                        {
+                          if (((word >> 30) & 0x1) == 0)
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 x00x00101xxxxxxxxxxxxxxxxxxxxxxx
+                                 movn.  */
+                              return 1186;
+                            }
+                          else
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 x10x00101xxxxxxxxxxxxxxxxxxxxxxx
+                                 movz.  */
+                              return 1188;
+                            }
+                        }
+                      else
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xx1x00101xxxxxxxxxxxxxxxxxxxxxxx
+                             movk.  */
+                          return 1190;
+                        }
+                    }
+                }
+              else
+                {
+                  if (((word >> 21) & 0x1) == 0)
+                    {
+                      if (((word >> 28) & 0x1) == 0)
+                        {
+                          if (((word >> 29) & 0x1) == 0)
+                            {
+                              if (((word >> 30) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x0001010xx0xxxxxxxxxxxxxxxxxxxxx
+                                     and.  */
+                                  return 1002;
+                                }
+                              else
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x1001010xx0xxxxxxxxxxxxxxxxxxxxx
+                                     eor.  */
+                                  return 1009;
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 30) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x0101010xx0xxxxxxxxxxxxxxxxxxxxx
+                                     orr.  */
+                                  return 1004;
+                                }
+                              else
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x1101010xx0xxxxxxxxxxxxxxxxxxxxx
+                                     ands.  */
+                                  return 1011;
+                                }
+                            }
+                        }
+                      else
+                        {
+                          if (((word >> 10) & 0x1) == 0)
+                            {
+                              if (((word >> 11) & 0x1) == 0)
+                                {
+                                  if (((word >> 22) & 0x1) == 0)
+                                    {
+                                      if (((word >> 23) & 0x1) == 0)
+                                        {
+                                          if (((word >> 29) & 0x1) == 0)
+                                            {
+                                              if (((word >> 30) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x0011010000xxxxxxxxx00xxxxxxxxxx
+                                                     adc.  */
+                                                  return 0;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x1011010000xxxxxxxxx00xxxxxxxxxx
+                                                     sbc.  */
+                                                  return 2;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 30) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x0111010000xxxxxxxxx00xxxxxxxxxx
+                                                     adcs.  */
+                                                  return 1;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x1111010000xxxxxxxxx00xxxxxxxxxx
+                                                     sbcs.  */
+                                                  return 4;
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 30) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x0x11010100xxxxxxxxx00xxxxxxxxxx
+                                                 csel.  */
+                                              return 662;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x1x11010100xxxxxxxxx00xxxxxxxxxx
+                                                 csinv.  */
+                                              return 666;
+                                            }
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 23) & 0x1) == 0)
+                                        {
+                                          if (((word >> 30) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x0x11010010xxxxxxxxx00xxxxxxxxxx
+                                                 ccmn.  */
+                                              return 660;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x1x11010010xxxxxxxxx00xxxxxxxxxx
+                                                 ccmp.  */
+                                              return 661;
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 12) & 0x1) == 0)
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 29) & 0x1) == 0)
+                                                        {
+                                                          if (((word >> 30) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 x0011010110xxxxxx00000xxxxxxxxxx
+                                                                 subp.  */
+                                                              return 721;
+                                                            }
+                                                          else
+                                                            {
+                                                              if (((word >> 16) & 0x1) == 0)
+                                                                {
+                                                                  /* 33222222222211111111110000000000
+                                                                     10987654321098765432109876543210
+                                                                     x1011010110xxxx0x00000xxxxxxxxxx
+                                                                     rbit.  */
+                                                                  return 685;
+                                                                }
+                                                              else
+                                                                {
+                                                                  /* 33222222222211111111110000000000
+                                                                     10987654321098765432109876543210
+                                                                     x1011010110xxxx1x00000xxxxxxxxxx
+                                                                     pacia.  */
+                                                                  return 693;
+                                                                }
+                                                            }
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             xx111010110xxxxxx00000xxxxxxxxxx
+                                                             subps.  */
+                                                          return 722;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 30) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             x0x11010110xxxxxx10000xxxxxxxxxx
+                                                             crc32b.  */
+                                                          return 727;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             x1x11010110xxxxxx10000xxxxxxxxxx
+                                                             xpaci.  */
+                                                          return 709;
+                                                        }
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 30) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x0x11010110xxxxxxx1000xxxxxxxxxx
+                                                         lslv.  */
+                                                      return 713;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1x11010110xxxxxxx1000xxxxxxxxxx
+                                                         paciza.  */
+                                                      return 701;
+                                                    }
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 30) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             x0x11010110xxxxxx00100xxxxxxxxxx
+                                                             irg.  */
+                                                          return 724;
+                                                        }
+                                                      else
+                                                        {
+                                                          if (((word >> 16) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 x1x11010110xxxx0x00100xxxxxxxxxx
+                                                                 clz.  */
+                                                              return 690;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 x1x11010110xxxx1x00100xxxxxxxxxx
+                                                                 autia.  */
+                                                              return 697;
+                                                            }
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         xxx11010110xxxxxx10100xxxxxxxxxx
+                                                         crc32cb.  */
+                                                      return 731;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 30) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x0x11010110xxxxxxx1100xxxxxxxxxx
+                                                         pacga.  */
+                                                      return 726;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1x11010110xxxxxxx1100xxxxxxxxxx
+                                                         autiza.  */
+                                                      return 705;
+                                                    }
+                                                }
+                                            }
+                                        }
+                                    }
+                                }
+                              else
+                                {
+                                  if (((word >> 22) & 0x1) == 0)
+                                    {
+                                      if (((word >> 14) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xxx11010x00xxxxxx0xx10xxxxxxxxxx
+                                             setf8.  */
+                                          return 2452;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xxx11010x00xxxxxx1xx10xxxxxxxxxx
+                                             setf16.  */
+                                          return 2453;
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 23) & 0x1) == 0)
+                                        {
+                                          if (((word >> 30) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x0x11010010xxxxxxxxx10xxxxxxxxxx
+                                                 ccmn.  */
+                                              return 658;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 x1x11010010xxxxxxxxx10xxxxxxxxxx
+                                                 ccmp.  */
+                                              return 659;
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 12) & 0x1) == 0)
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 30) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             x0x11010110xxxxxx00010xxxxxxxxxx
+                                                             udiv.  */
+                                                          return 711;
+                                                        }
+                                                      else
+                                                        {
+                                                          if (((word >> 16) & 0x1) == 0)
+                                                            {
+                                                              if (((word >> 31) & 0x1) == 0)
+                                                                {
+                                                                  /* 33222222222211111111110000000000
+                                                                     10987654321098765432109876543210
+                                                                     01x11010110xxxx0x00010xxxxxxxxxx
+                                                                     rev.  */
+                                                                  return 687;
+                                                                }
+                                                              else
+                                                                {
+                                                                  /* 33222222222211111111110000000000
+                                                                     10987654321098765432109876543210
+                                                                     11x11010110xxxx0x00010xxxxxxxxxx
+                                                                     rev32.  */
+                                                                  return 692;
+                                                                }
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 x1x11010110xxxx1x00010xxxxxxxxxx
+                                                                 pacda.  */
+                                                              return 695;
+                                                            }
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         xxx11010110xxxxxx10010xxxxxxxxxx
+                                                         crc32w.  */
+                                                      return 729;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 30) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x0x11010110xxxxxxx1010xxxxxxxxxx
+                                                         asrv.  */
+                                                      return 717;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         x1x11010110xxxxxxx1010xxxxxxxxxx
+                                                         pacdza.  */
+                                                      return 703;
+                                                    }
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 13) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 14) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         xxx11010110xxxxxx00110xxxxxxxxxx
+                                                         autda.  */
+                                                      return 699;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         xxx11010110xxxxxx10110xxxxxxxxxx
+                                                         crc32cw.  */
+                                                      return 733;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xxx11010110xxxxxxx1110xxxxxxxxxx
+                                                     autdza.  */
+                                                  return 707;
+                                                }
+                                            }
+                                        }
+                                    }
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 11) & 0x1) == 0)
+                                {
                                   if (((word >> 22) & 0x1) == 0)
                                     {
                                       if (((word >> 23) & 0x1) == 0)
@@ -3624,7 +4449,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              xxx11010000xxxxxxxxx01xxxxxxxxxx
                                              rmif.  */
-                                          return 2413;
+                                          return 2451;
                                         }
                                       else
                                         {
@@ -4162,7 +4987,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx000000000xxxxxxxxxxxxx
                                                                      add.  */
-                                                                  return 1287;
+                                                                  return 1291;
                                                                 }
                                                               else
                                                                 {
@@ -4170,7 +4995,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010000000xxxxxxxxxxxxx
                                                                      mul.  */
-                                                                  return 1756;
+                                                                  return 1760;
                                                                 }
                                                             }
                                                           else
@@ -4181,7 +5006,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001000000xxxxxxxxxxxxx
                                                                      smax.  */
-                                                                  return 1835;
+                                                                  return 1839;
                                                                 }
                                                               else
                                                                 {
@@ -4189,7 +5014,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011000000xxxxxxxxxxxxx
                                                                      orr.  */
-                                                                  return 1767;
+                                                                  return 1771;
                                                                 }
                                                             }
                                                         }
@@ -4201,7 +5026,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0100000xxxxxxxxxxxxx
                                                                  sdiv.  */
-                                                              return 1826;
+                                                              return 1830;
                                                             }
                                                           else
                                                             {
@@ -4209,7 +5034,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1100000xxxxxxxxxxxxx
                                                                  sabd.  */
-                                                              return 1817;
+                                                              return 1821;
                                                             }
                                                         }
                                                     }
@@ -4223,7 +5048,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0010000xxxxxxxxxxxxx
                                                                  smulh.  */
-                                                              return 1840;
+                                                              return 1844;
                                                             }
                                                           else
                                                             {
@@ -4233,7 +5058,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001010000xxxxxxxxxxxxx
                                                                      smin.  */
-                                                                  return 1838;
+                                                                  return 1842;
                                                                 }
                                                               else
                                                                 {
@@ -4241,7 +5066,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011010000xxxxxxxxxxxxx
                                                                      and.  */
-                                                                  return 1295;
+                                                                  return 1299;
                                                                 }
                                                             }
                                                         }
@@ -4251,7 +5076,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx0xx110000xxxxxxxxxxxxx
                                                              sdivr.  */
-                                                          return 1827;
+                                                          return 1831;
                                                         }
                                                     }
                                                 }
@@ -4267,7 +5092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0001000xxxxxxxxxxxxx
                                                                  sub.  */
-                                                              return 1956;
+                                                              return 1960;
                                                             }
                                                           else
                                                             {
@@ -4277,7 +5102,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001001000xxxxxxxxxxxxx
                                                                      umax.  */
-                                                                  return 1984;
+                                                                  return 1988;
                                                                 }
                                                               else
                                                                 {
@@ -4285,7 +5110,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011001000xxxxxxxxxxxxx
                                                                      eor.  */
-                                                                  return 1382;
+                                                                  return 1386;
                                                                 }
                                                             }
                                                         }
@@ -4297,7 +5122,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0101000xxxxxxxxxxxxx
                                                                  udiv.  */
-                                                              return 1978;
+                                                              return 1982;
                                                             }
                                                           else
                                                             {
@@ -4305,7 +5130,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1101000xxxxxxxxxxxxx
                                                                  uabd.  */
-                                                              return 1969;
+                                                              return 1973;
                                                             }
                                                         }
                                                     }
@@ -4321,7 +5146,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx000011000xxxxxxxxxxxxx
                                                                      subr.  */
-                                                                  return 1958;
+                                                                  return 1962;
                                                                 }
                                                               else
                                                                 {
@@ -4329,7 +5154,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010011000xxxxxxxxxxxxx
                                                                      umulh.  */
-                                                                  return 1989;
+                                                                  return 1993;
                                                                 }
                                                             }
                                                           else
@@ -4340,7 +5165,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001011000xxxxxxxxxxxxx
                                                                      umin.  */
-                                                                  return 1987;
+                                                                  return 1991;
                                                                 }
                                                               else
                                                                 {
@@ -4348,7 +5173,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011011000xxxxxxxxxxxxx
                                                                      bic.  */
-                                                                  return 1307;
+                                                                  return 1311;
                                                                 }
                                                             }
                                                         }
@@ -4358,7 +5183,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx0xx111000xxxxxxxxxxxxx
                                                              udivr.  */
-                                                          return 1979;
+                                                          return 1983;
                                                         }
                                                     }
                                                 }
@@ -4371,7 +5196,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x0xxxxx000xxxxxxxxxxxxx
                                                      ld1sb.  */
-                                                  return 1569;
+                                                  return 1573;
                                                 }
                                               else
                                                 {
@@ -4379,7 +5204,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x0xxxxx000xxxxxxxxxxxxx
                                                      ld1sh.  */
-                                                  return 1580;
+                                                  return 1584;
                                                 }
                                             }
                                         }
@@ -4397,7 +5222,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx000000xxxxxxxxxx
                                                              sdot.  */
-                                                          return 1828;
+                                                          return 1832;
                                                         }
                                                       else
                                                         {
@@ -4405,7 +5230,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx000010xxxxxxxxxx
                                                              sqdmlalbt.  */
-                                                          return 2178;
+                                                          return 2182;
                                                         }
                                                     }
                                                   else
@@ -4416,7 +5241,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx000001xxxxxxxxxx
                                                              udot.  */
-                                                          return 1980;
+                                                          return 1984;
                                                         }
                                                       else
                                                         {
@@ -4424,7 +5249,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx000011xxxxxxxxxx
                                                              sqdmlslbt.  */
-                                                          return 2185;
+                                                          return 2189;
                                                         }
                                                     }
                                                 }
@@ -4434,7 +5259,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x0xx0xxxxx0001xxxxxxxxxxxx
                                                      cdot.  */
-                                                  return 2067;
+                                                  return 2071;
                                                 }
                                             }
                                           else
@@ -4445,7 +5270,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x00x0xxxxx000xxxxxxxxxxxxx
                                                      ld1sb.  */
-                                                  return 1573;
+                                                  return 1577;
                                                 }
                                               else
                                                 {
@@ -4453,7 +5278,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x0xxxxx000xxxxxxxxxxxxx
                                                      ld1sh.  */
-                                                  return 1584;
+                                                  return 1588;
                                                 }
                                             }
                                         }
@@ -4474,7 +5299,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx000000xxxxxxxxxx
                                                              add.  */
-                                                          return 1285;
+                                                          return 1289;
                                                         }
                                                       else
                                                         {
@@ -4482,7 +5307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx000100xxxxxxxxxx
                                                              sqadd.  */
-                                                          return 1842;
+                                                          return 1846;
                                                         }
                                                     }
                                                   else
@@ -4491,7 +5316,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx000x10xxxxxxxxxx
                                                          sqsub.  */
-                                                      return 1872;
+                                                      return 1876;
                                                     }
                                                 }
                                               else
@@ -4504,7 +5329,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx000001xxxxxxxxxx
                                                              sub.  */
-                                                          return 1954;
+                                                          return 1958;
                                                         }
                                                       else
                                                         {
@@ -4512,7 +5337,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx000101xxxxxxxxxx
                                                              uqadd.  */
-                                                          return 1990;
+                                                          return 1994;
                                                         }
                                                     }
                                                   else
@@ -4521,7 +5346,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx000x11xxxxxxxxxx
                                                          uqsub.  */
-                                                      return 2020;
+                                                      return 2024;
                                                     }
                                                 }
                                             }
@@ -4533,7 +5358,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x1xxxxx000xxxxxxxxxxxxx
                                                      prfb.  */
-                                                  return 1775;
+                                                  return 1779;
                                                 }
                                               else
                                                 {
@@ -4541,7 +5366,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x1xxxxx000xxxxxxxxxxxxx
                                                      ld1sh.  */
-                                                  return 1581;
+                                                  return 1585;
                                                 }
                                             }
                                         }
@@ -4559,7 +5384,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x1xxxxx000x00xxxxxxxxxx
                                                              sqrdmlah.  */
-                                                          return 2203;
+                                                          return 2207;
                                                         }
                                                       else
                                                         {
@@ -4567,7 +5392,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x1xxxxx000x10xxxxxxxxxx
                                                              mla.  */
-                                                          return 2110;
+                                                          return 2114;
                                                         }
                                                     }
                                                   else
@@ -4578,7 +5403,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x1xxxxx000x01xxxxxxxxxx
                                                              sqrdmlsh.  */
-                                                          return 2207;
+                                                          return 2211;
                                                         }
                                                       else
                                                         {
@@ -4586,7 +5411,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x1xxxxx000x11xxxxxxxxxx
                                                              mls.  */
-                                                          return 2113;
+                                                          return 2117;
                                                         }
                                                     }
                                                 }
@@ -4596,7 +5421,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x00x1xxxxx000xxxxxxxxxxxxx
                                                      prfb.  */
-                                                  return 1776;
+                                                  return 1780;
                                                 }
                                             }
                                           else
@@ -4615,7 +5440,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx000000xxxxxxxxxx
                                                                      sdot.  */
-                                                                  return 1829;
+                                                                  return 1833;
                                                                 }
                                                               else
                                                                 {
@@ -4623,7 +5448,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx000000xxxxxxxxxx
                                                                      sdot.  */
-                                                                  return 1830;
+                                                                  return 1834;
                                                                 }
                                                             }
                                                           else
@@ -4634,7 +5459,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx000100xxxxxxxxxx
                                                                      sqrdmlah.  */
-                                                                  return 2204;
+                                                                  return 2208;
                                                                 }
                                                               else
                                                                 {
@@ -4642,7 +5467,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx000100xxxxxxxxxx
                                                                      sqrdmlah.  */
-                                                                  return 2205;
+                                                                  return 2209;
                                                                 }
                                                             }
                                                         }
@@ -4656,7 +5481,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx000010xxxxxxxxxx
                                                                      mla.  */
-                                                                  return 2111;
+                                                                  return 2115;
                                                                 }
                                                               else
                                                                 {
@@ -4664,7 +5489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx000010xxxxxxxxxx
                                                                      mla.  */
-                                                                  return 2112;
+                                                                  return 2116;
                                                                 }
                                                             }
                                                           else
@@ -4673,7 +5498,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x01x1xxxxx000110xxxxxxxxxx
                                                                  usdot.  */
-                                                              return 2433;
+                                                              return 2471;
                                                             }
                                                         }
                                                     }
@@ -4689,7 +5514,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx000001xxxxxxxxxx
                                                                      udot.  */
-                                                                  return 1981;
+                                                                  return 1985;
                                                                 }
                                                               else
                                                                 {
@@ -4697,7 +5522,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx000001xxxxxxxxxx
                                                                      udot.  */
-                                                                  return 1982;
+                                                                  return 1986;
                                                                 }
                                                             }
                                                           else
@@ -4708,7 +5533,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx000101xxxxxxxxxx
                                                                      sqrdmlsh.  */
-                                                                  return 2208;
+                                                                  return 2212;
                                                                 }
                                                               else
                                                                 {
@@ -4716,7 +5541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx000101xxxxxxxxxx
                                                                      sqrdmlsh.  */
-                                                                  return 2209;
+                                                                  return 2213;
                                                                 }
                                                             }
                                                         }
@@ -4730,7 +5555,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx000011xxxxxxxxxx
                                                                      mls.  */
-                                                                  return 2114;
+                                                                  return 2118;
                                                                 }
                                                               else
                                                                 {
@@ -4738,7 +5563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx000011xxxxxxxxxx
                                                                      mls.  */
-                                                                  return 2115;
+                                                                  return 2119;
                                                                 }
                                                             }
                                                           else
@@ -4747,7 +5572,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x01x1xxxxx000111xxxxxxxxxx
                                                                  sudot.  */
-                                                              return 2434;
+                                                              return 2472;
                                                             }
                                                         }
                                                     }
@@ -4758,7 +5583,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x1xxxxx000xxxxxxxxxxxxx
                                                      ld1sh.  */
-                                                  return 1585;
+                                                  return 1589;
                                                 }
                                             }
                                         }
@@ -4784,7 +5609,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx000000100xxxxxxxxxxxxx
                                                                  asr.  */
-                                                              return 1303;
+                                                              return 1307;
                                                             }
                                                           else
                                                             {
@@ -4794,7 +5619,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010000100xxxxxxxxxxxxx
                                                                      asr.  */
-                                                                  return 1301;
+                                                                  return 1305;
                                                                 }
                                                               else
                                                                 {
@@ -4802,7 +5627,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx010000100xxxxxxxxxxxxx
                                                                      shadd.  */
-                                                                  return 2144;
+                                                                  return 2148;
                                                                 }
                                                             }
                                                         }
@@ -4814,7 +5639,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx001000100xxxxxxxxxxxxx
                                                                  sqshl.  */
-                                                              return 2222;
+                                                              return 2226;
                                                             }
                                                           else
                                                             {
@@ -4824,7 +5649,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011000100xxxxxxxxxxxxx
                                                                      asr.  */
-                                                                  return 1302;
+                                                                  return 1306;
                                                                 }
                                                               else
                                                                 {
@@ -4832,7 +5657,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx011000100xxxxxxxxxxxxx
                                                                      sqadd.  */
-                                                                  return 2173;
+                                                                  return 2177;
                                                                 }
                                                             }
                                                         }
@@ -4847,7 +5672,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx000100100xxxxxxxxxxxxx
                                                                  asrd.  */
-                                                              return 1304;
+                                                              return 1308;
                                                             }
                                                           else
                                                             {
@@ -4857,7 +5682,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010100100xxxxxxxxxxxxx
                                                                      asrr.  */
-                                                                  return 1305;
+                                                                  return 1309;
                                                                 }
                                                               else
                                                                 {
@@ -4865,7 +5690,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx010100100xxxxxxxxxxxxx
                                                                      srhadd.  */
-                                                                  return 2235;
+                                                                  return 2239;
                                                                 }
                                                             }
                                                         }
@@ -4879,7 +5704,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001100100xxxxxxxxxxxxx
                                                                      srshr.  */
-                                                                  return 2239;
+                                                                  return 2243;
                                                                 }
                                                               else
                                                                 {
@@ -4887,7 +5712,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx001100100xxxxxxxxxxxxx
                                                                      sqshlr.  */
-                                                                  return 2223;
+                                                                  return 2227;
                                                                 }
                                                             }
                                                           else
@@ -4896,7 +5721,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx011100100xxxxxxxxxxxxx
                                                                  suqadd.  */
-                                                              return 2259;
+                                                              return 2263;
                                                             }
                                                         }
                                                     }
@@ -4913,7 +5738,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx000010100xxxxxxxxxxxxx
                                                                  srshl.  */
-                                                              return 2237;
+                                                              return 2241;
                                                             }
                                                           else
                                                             {
@@ -4921,7 +5746,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx010010100xxxxxxxxxxxxx
                                                                  shsub.  */
-                                                              return 2147;
+                                                              return 2151;
                                                             }
                                                         }
                                                       else
@@ -4932,7 +5757,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx001010100xxxxxxxxxxxxx
                                                                  sqrshl.  */
-                                                              return 2215;
+                                                              return 2219;
                                                             }
                                                           else
                                                             {
@@ -4940,7 +5765,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx011010100xxxxxxxxxxxxx
                                                                  sqsub.  */
-                                                              return 2229;
+                                                              return 2233;
                                                             }
                                                         }
                                                     }
@@ -4956,7 +5781,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx000110100xxxxxxxxxxxxx
                                                                      sqshl.  */
-                                                                  return 2221;
+                                                                  return 2225;
                                                                 }
                                                               else
                                                                 {
@@ -4964,7 +5789,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx000110100xxxxxxxxxxxxx
                                                                      srshlr.  */
-                                                                  return 2238;
+                                                                  return 2242;
                                                                 }
                                                             }
                                                           else
@@ -4973,7 +5798,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx010110100xxxxxxxxxxxxx
                                                                  shsubr.  */
-                                                              return 2148;
+                                                              return 2152;
                                                             }
                                                         }
                                                       else
@@ -4984,7 +5809,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx001110100xxxxxxxxxxxxx
                                                                  sqrshlr.  */
-                                                              return 2216;
+                                                              return 2220;
                                                             }
                                                           else
                                                             {
@@ -4992,7 +5817,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx011110100xxxxxxxxxxxxx
                                                                  sqsubr.  */
-                                                              return 2230;
+                                                              return 2234;
                                                             }
                                                         }
                                                     }
@@ -5012,7 +5837,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx000001100xxxxxxxxxxxxx
                                                                  lsr.  */
-                                                              return 1747;
+                                                              return 1751;
                                                             }
                                                           else
                                                             {
@@ -5022,7 +5847,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010001100xxxxxxxxxxxxx
                                                                      lsr.  */
-                                                                  return 1745;
+                                                                  return 1749;
                                                                 }
                                                               else
                                                                 {
@@ -5030,7 +5855,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx010001100xxxxxxxxxxxxx
                                                                      uhadd.  */
-                                                                  return 2272;
+                                                                  return 2276;
                                                                 }
                                                             }
                                                         }
@@ -5042,7 +5867,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx001001100xxxxxxxxxxxxx
                                                                  uqshl.  */
-                                                              return 2302;
+                                                              return 2306;
                                                             }
                                                           else
                                                             {
@@ -5052,7 +5877,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011001100xxxxxxxxxxxxx
                                                                      lsr.  */
-                                                                  return 1746;
+                                                                  return 1750;
                                                                 }
                                                               else
                                                                 {
@@ -5060,7 +5885,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx011001100xxxxxxxxxxxxx
                                                                      uqadd.  */
-                                                                  return 2296;
+                                                                  return 2300;
                                                                 }
                                                             }
                                                         }
@@ -5075,7 +5900,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0101100xxxxxxxxxxxxx
                                                                  lsrr.  */
-                                                              return 1748;
+                                                              return 1752;
                                                             }
                                                           else
                                                             {
@@ -5083,7 +5908,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx0x0101100xxxxxxxxxxxxx
                                                                  urhadd.  */
-                                                              return 2311;
+                                                              return 2315;
                                                             }
                                                         }
                                                       else
@@ -5096,7 +5921,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001101100xxxxxxxxxxxxx
                                                                      urshr.  */
-                                                                  return 2314;
+                                                                  return 2318;
                                                                 }
                                                               else
                                                                 {
@@ -5104,7 +5929,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx001101100xxxxxxxxxxxxx
                                                                      uqshlr.  */
-                                                                  return 2303;
+                                                                  return 2307;
                                                                 }
                                                             }
                                                           else
@@ -5113,7 +5938,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx011101100xxxxxxxxxxxxx
                                                                  usqadd.  */
-                                                              return 2319;
+                                                              return 2323;
                                                             }
                                                         }
                                                     }
@@ -5132,7 +5957,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx000011100xxxxxxxxxxxxx
                                                                      lsl.  */
-                                                                  return 1741;
+                                                                  return 1745;
                                                                 }
                                                               else
                                                                 {
@@ -5140,7 +5965,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx000011100xxxxxxxxxxxxx
                                                                      urshl.  */
-                                                                  return 2312;
+                                                                  return 2316;
                                                                 }
                                                             }
                                                           else
@@ -5151,7 +5976,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010011100xxxxxxxxxxxxx
                                                                      lsl.  */
-                                                                  return 1739;
+                                                                  return 1743;
                                                                 }
                                                               else
                                                                 {
@@ -5159,7 +5984,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx010011100xxxxxxxxxxxxx
                                                                      uhsub.  */
-                                                                  return 2273;
+                                                                  return 2277;
                                                                 }
                                                             }
                                                         }
@@ -5171,7 +5996,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx001011100xxxxxxxxxxxxx
                                                                  uqrshl.  */
-                                                              return 2297;
+                                                              return 2301;
                                                             }
                                                           else
                                                             {
@@ -5181,7 +6006,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx011011100xxxxxxxxxxxxx
                                                                      lsl.  */
-                                                                  return 1740;
+                                                                  return 1744;
                                                                 }
                                                               else
                                                                 {
@@ -5189,7 +6014,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx011011100xxxxxxxxxxxxx
                                                                      uqsub.  */
-                                                                  return 2306;
+                                                                  return 2310;
                                                                 }
                                                             }
                                                         }
@@ -5206,7 +6031,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx000111100xxxxxxxxxxxxx
                                                                      uqshl.  */
-                                                                  return 2301;
+                                                                  return 2305;
                                                                 }
                                                               else
                                                                 {
@@ -5214,7 +6039,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx000111100xxxxxxxxxxxxx
                                                                      urshlr.  */
-                                                                  return 2313;
+                                                                  return 2317;
                                                                 }
                                                             }
                                                           else
@@ -5225,7 +6050,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx010111100xxxxxxxxxxxxx
                                                                      lslr.  */
-                                                                  return 1742;
+                                                                  return 1746;
                                                                 }
                                                               else
                                                                 {
@@ -5233,7 +6058,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx010111100xxxxxxxxxxxxx
                                                                      uhsubr.  */
-                                                                  return 2274;
+                                                                  return 2278;
                                                                 }
                                                             }
                                                         }
@@ -5247,7 +6072,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0xx001111100xxxxxxxxxxxxx
                                                                      sqshlu.  */
-                                                                  return 2224;
+                                                                  return 2228;
                                                                 }
                                                               else
                                                                 {
@@ -5255,7 +6080,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx001111100xxxxxxxxxxxxx
                                                                      uqrshlr.  */
-                                                                  return 2298;
+                                                                  return 2302;
                                                                 }
                                                             }
                                                           else
@@ -5264,7 +6089,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  0x0001x0xx011111100xxxxxxxxxxxxx
                                                                  uqsubr.  */
-                                                              return 2307;
+                                                              return 2311;
                                                             }
                                                         }
                                                     }
@@ -5283,7 +6108,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx1000x0xxxxxxxxxx
                                                          asr.  */
-                                                      return 1299;
+                                                      return 1303;
                                                     }
                                                   else
                                                     {
@@ -5293,7 +6118,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x01xxxxx1000x0xxxxxxxxxx
                                                              smlalb.  */
-                                                          return 2152;
+                                                          return 2156;
                                                         }
                                                       else
                                                         {
@@ -5301,7 +6126,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x11xxxxx1000x0xxxxxxxxxx
                                                              smlalb.  */
-                                                          return 2153;
+                                                          return 2157;
                                                         }
                                                     }
                                                 }
@@ -5313,7 +6138,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx1001x0xxxxxxxxxx
                                                          asr.  */
-                                                      return 1300;
+                                                      return 1304;
                                                     }
                                                   else
                                                     {
@@ -5323,7 +6148,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x01xxxxx1001x0xxxxxxxxxx
                                                              umlalb.  */
-                                                          return 2277;
+                                                          return 2281;
                                                         }
                                                       else
                                                         {
@@ -5331,7 +6156,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x11xxxxx1001x0xxxxxxxxxx
                                                              umlalb.  */
-                                                          return 2278;
+                                                          return 2282;
                                                         }
                                                     }
                                                 }
@@ -5348,7 +6173,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx100001xxxxxxxxxx
                                                              lsr.  */
-                                                          return 1743;
+                                                          return 1747;
                                                         }
                                                       else
                                                         {
@@ -5356,7 +6181,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx100011xxxxxxxxxx
                                                              lsl.  */
-                                                          return 1737;
+                                                          return 1741;
                                                         }
                                                     }
                                                   else
@@ -5367,7 +6192,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x01xxxxx1000x1xxxxxxxxxx
                                                              smlalt.  */
-                                                          return 2155;
+                                                          return 2159;
                                                         }
                                                       else
                                                         {
@@ -5375,7 +6200,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x11xxxxx1000x1xxxxxxxxxx
                                                              smlalt.  */
-                                                          return 2156;
+                                                          return 2160;
                                                         }
                                                     }
                                                 }
@@ -5389,7 +6214,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx100101xxxxxxxxxx
                                                              lsr.  */
-                                                          return 1744;
+                                                          return 1748;
                                                         }
                                                       else
                                                         {
@@ -5397,7 +6222,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx100111xxxxxxxxxx
                                                              lsl.  */
-                                                          return 1738;
+                                                          return 1742;
                                                         }
                                                     }
                                                   else
@@ -5408,7 +6233,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x01xxxxx1001x1xxxxxxxxxx
                                                              umlalt.  */
-                                                          return 2280;
+                                                          return 2284;
                                                         }
                                                       else
                                                         {
@@ -5416,7 +6241,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0x11xxxxx1001x1xxxxxxxxxx
                                                              umlalt.  */
-                                                          return 2281;
+                                                          return 2285;
                                                         }
                                                     }
                                                 }
@@ -5435,7 +6260,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      1x0001x0000xxxxx100xxxxxxxxxxxxx
                                                      ldnt1sb.  */
-                                                  return 2104;
+                                                  return 2108;
                                                 }
                                               else
                                                 {
@@ -5443,7 +6268,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      1x0001x0100xxxxx100xxxxxxxxxxxxx
                                                      ldnt1sh.  */
-                                                  return 2105;
+                                                  return 2109;
                                                 }
                                             }
                                           else
@@ -5456,7 +6281,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0001xxxxx100xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1575;
+                                                      return 1579;
                                                     }
                                                   else
                                                     {
@@ -5464,7 +6289,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0001xxxxx100xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1579;
+                                                      return 1583;
                                                     }
                                                 }
                                               else
@@ -5475,7 +6300,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0101xxxxx100xxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1588;
+                                                      return 1592;
                                                     }
                                                   else
                                                     {
@@ -5483,7 +6308,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0101xxxxx100xxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1591;
+                                                      return 1595;
                                                     }
                                                 }
                                             }
@@ -5498,7 +6323,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x001xxxxxx100xxxxxxxxxxxxx
                                                      ld1rb.  */
-                                                  return 1545;
+                                                  return 1549;
                                                 }
                                               else
                                                 {
@@ -5508,7 +6333,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0010xxxxx100xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1574;
+                                                      return 1578;
                                                     }
                                                   else
                                                     {
@@ -5516,7 +6341,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0011xxxxx100xxxxxxxxxxxxx
                                                          prfb.  */
-                                                      return 1777;
+                                                      return 1781;
                                                     }
                                                 }
                                             }
@@ -5528,7 +6353,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x011xxxxxx100xxxxxxxxxxxxx
                                                      ld1rsw.  */
-                                                  return 1566;
+                                                  return 1570;
                                                 }
                                               else
                                                 {
@@ -5538,7 +6363,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0110xxxxx100xxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1586;
+                                                      return 1590;
                                                     }
                                                   else
                                                     {
@@ -5546,7 +6371,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0111xxxxx100xxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1587;
+                                                      return 1591;
                                                     }
                                                 }
                                             }
@@ -5568,7 +6393,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x0xx0xxxxx010xxxxxxxxxxxxx
                                                  mla.  */
-                                              return 1750;
+                                              return 1754;
                                             }
                                           else
                                             {
@@ -5578,7 +6403,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x0xxxxx010xxxxxxxxxxxxx
                                                      ld1b.  */
-                                                  return 1511;
+                                                  return 1515;
                                                 }
                                               else
                                                 {
@@ -5586,7 +6411,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x0xxxxx010xxxxxxxxxxxxx
                                                      ld1h.  */
-                                                  return 1531;
+                                                  return 1535;
                                                 }
                                             }
                                         }
@@ -5604,7 +6429,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010000xxxxxxxxxx
                                                              smlalb.  */
-                                                          return 2154;
+                                                          return 2158;
                                                         }
                                                       else
                                                         {
@@ -5612,7 +6437,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010100xxxxxxxxxx
                                                              smlslb.  */
-                                                          return 2160;
+                                                          return 2164;
                                                         }
                                                     }
                                                   else
@@ -5623,7 +6448,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010010xxxxxxxxxx
                                                              umlalb.  */
-                                                          return 2279;
+                                                          return 2283;
                                                         }
                                                       else
                                                         {
@@ -5631,7 +6456,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010110xxxxxxxxxx
                                                              umlslb.  */
-                                                          return 2285;
+                                                          return 2289;
                                                         }
                                                     }
                                                 }
@@ -5645,7 +6470,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010001xxxxxxxxxx
                                                              smlalt.  */
-                                                          return 2157;
+                                                          return 2161;
                                                         }
                                                       else
                                                         {
@@ -5653,7 +6478,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010101xxxxxxxxxx
                                                              smlslt.  */
-                                                          return 2163;
+                                                          return 2167;
                                                         }
                                                     }
                                                   else
@@ -5664,7 +6489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010011xxxxxxxxxx
                                                              umlalt.  */
-                                                          return 2282;
+                                                          return 2286;
                                                         }
                                                       else
                                                         {
@@ -5672,7 +6497,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx010111xxxxxxxxxx
                                                              umlslt.  */
-                                                          return 2288;
+                                                          return 2292;
                                                         }
                                                     }
                                                 }
@@ -5685,7 +6510,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x00x0xxxxx010xxxxxxxxxxxxx
                                                      ld1b.  */
-                                                  return 1516;
+                                                  return 1520;
                                                 }
                                               else
                                                 {
@@ -5693,7 +6518,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x0xxxxx010xxxxxxxxxxxxx
                                                      ld1h.  */
-                                                  return 1536;
+                                                  return 1540;
                                                 }
                                             }
                                         }
@@ -5712,17 +6537,69 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             000001x0xx1xxxxx010000xxxxxxxxxx
+                                                             000001x0xx1xxxxx010000xxxxxxxxxx
+                                                             index.  */
+                                                          return 1506;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             000001x0xx1xxxxx010001xxxxxxxxxx
+                                                             index.  */
+                                                          return 1507;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      if (((word >> 22) & 0x1) == 0)
+                                                        {
+                                                          if (((word >> 23) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 000001x0001xxxxx01010xxxxxxxxxxx
+                                                                 addvl.  */
+                                                              return 1293;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 000001x0101xxxxx01010xxxxxxxxxxx
+                                                                 rdvl.  */
+                                                              return 1815;
+                                                            }
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             000001x0x11xxxxx01010xxxxxxxxxxx
+                                                             addpl.  */
+                                                          return 1292;
+                                                        }
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 12) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 10) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             000001x0xx1xxxxx010010xxxxxxxxxx
                                                              index.  */
-                                                          return 1502;
+                                                          return 1508;
                                                         }
                                                       else
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             000001x0xx1xxxxx010001xxxxxxxxxx
+                                                             000001x0xx1xxxxx010011xxxxxxxxxx
                                                              index.  */
-                                                          return 1503;
+                                                          return 1505;
                                                         }
                                                     }
                                                   else
@@ -5733,48 +6610,29 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                             {
                                                               /* 33222222222211111111110000000000
                                                                  10987654321098765432109876543210
-                                                                 000001x0001xxxxx01010xxxxxxxxxxx
-                                                                 addvl.  */
-                                                              return 1289;
+                                                                 000001x0001xxxxx01011xxxxxxxxxxx
+                                                                 addsvl.  */
+                                                              return 2355;
                                                             }
                                                           else
                                                             {
                                                               /* 33222222222211111111110000000000
                                                                  10987654321098765432109876543210
-                                                                 000001x0101xxxxx01010xxxxxxxxxxx
-                                                                 rdvl.  */
-                                                              return 1811;
+                                                                 000001x0101xxxxx01011xxxxxxxxxxx
+                                                                 rdsvl.  */
+                                                              return 2366;
                                                             }
                                                         }
                                                       else
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             000001x0x11xxxxx01010xxxxxxxxxxx
-                                                             addpl.  */
-                                                          return 1288;
+                                                             000001x0x11xxxxx01011xxxxxxxxxxx
+                                                             addspl.  */
+                                                          return 2354;
                                                         }
                                                     }
                                                 }
-                                              else
-                                                {
-                                                  if (((word >> 10) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         000001x0xx1xxxxx010x10xxxxxxxxxx
-                                                         index.  */
-                                                      return 1504;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         000001x0xx1xxxxx010x11xxxxxxxxxx
-                                                         index.  */
-                                                      return 1501;
-                                                    }
-                                                }
                                             }
                                           else
                                             {
@@ -5784,7 +6642,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x1xxxxx010xxxxxxxxxxxxx
                                                      prfw.  */
-                                                  return 1795;
+                                                  return 1799;
                                                 }
                                               else
                                                 {
@@ -5792,7 +6650,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x1xxxxx010xxxxxxxxxxxxx
                                                      ld1h.  */
-                                                  return 1532;
+                                                  return 1536;
                                                 }
                                             }
                                         }
@@ -5804,7 +6662,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x10001x00x1xxxxx010xxxxxxxxxxxxx
                                                  prfw.  */
-                                              return 1797;
+                                              return 1801;
                                             }
                                           else
                                             {
@@ -5816,7 +6674,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x0101xxxxx010xxxxxxxxxxxxx
                                                          cdot.  */
-                                                      return 2069;
+                                                      return 2073;
                                                     }
                                                   else
                                                     {
@@ -5824,7 +6682,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x0111xxxxx010xxxxxxxxxxxxx
                                                          cdot.  */
-                                                      return 2068;
+                                                      return 2072;
                                                     }
                                                 }
                                               else
@@ -5833,7 +6691,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x1xxxxx010xxxxxxxxxxxxx
                                                      ld1h.  */
-                                                  return 1537;
+                                                  return 1541;
                                                 }
                                             }
                                         }
@@ -5851,7 +6709,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x0xx0xxxxx110xxxxxxxxxxxxx
                                                  mad.  */
-                                              return 1749;
+                                              return 1753;
                                             }
                                           else
                                             {
@@ -5867,7 +6725,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0x010xxxx110x00xxxxxxxxxx
                                                                  sqincw.  */
-                                                              return 1869;
+                                                              return 1873;
                                                             }
                                                           else
                                                             {
@@ -5877,7 +6735,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00110xxxx110x00xxxxxxxxxx
                                                                      sqinch.  */
-                                                                  return 1863;
+                                                                  return 1867;
                                                                 }
                                                               else
                                                                 {
@@ -5885,7 +6743,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01110xxxx110x00xxxxxxxxxx
                                                                      sqincd.  */
-                                                                  return 1860;
+                                                                  return 1864;
                                                                 }
                                                             }
                                                         }
@@ -5897,7 +6755,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0x011xxxx110x00xxxxxxxxxx
                                                                  incw.  */
-                                                              return 1499;
+                                                              return 1503;
                                                             }
                                                           else
                                                             {
@@ -5907,7 +6765,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00111xxxx110x00xxxxxxxxxx
                                                                      inch.  */
-                                                                  return 1495;
+                                                                  return 1499;
                                                                 }
                                                               else
                                                                 {
@@ -5915,7 +6773,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01111xxxx110x00xxxxxxxxxx
                                                                      incd.  */
-                                                                  return 1493;
+                                                                  return 1497;
                                                                 }
                                                             }
                                                         }
@@ -5928,7 +6786,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0x01xxxxx110x10xxxxxxxxxx
                                                              sqdecw.  */
-                                                          return 1855;
+                                                          return 1859;
                                                         }
                                                       else
                                                         {
@@ -5938,7 +6796,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0011xxxxx110x10xxxxxxxxxx
                                                                  sqdech.  */
-                                                              return 1849;
+                                                              return 1853;
                                                             }
                                                           else
                                                             {
@@ -5946,7 +6804,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0111xxxxx110x10xxxxxxxxxx
                                                                  sqdecd.  */
-                                                              return 1846;
+                                                              return 1850;
                                                             }
                                                         }
                                                     }
@@ -5963,7 +6821,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0x010xxxx110x01xxxxxxxxxx
                                                                  uqincw.  */
-                                                              return 2017;
+                                                              return 2021;
                                                             }
                                                           else
                                                             {
@@ -5973,7 +6831,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00110xxxx110x01xxxxxxxxxx
                                                                      uqinch.  */
-                                                                  return 2011;
+                                                                  return 2015;
                                                                 }
                                                               else
                                                                 {
@@ -5981,7 +6839,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01110xxxx110x01xxxxxxxxxx
                                                                      uqincd.  */
-                                                                  return 2008;
+                                                                  return 2012;
                                                                 }
                                                             }
                                                         }
@@ -5993,7 +6851,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0x011xxxx110x01xxxxxxxxxx
                                                                  decw.  */
-                                                              return 1374;
+                                                              return 1378;
                                                             }
                                                           else
                                                             {
@@ -6003,7 +6861,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00111xxxx110x01xxxxxxxxxx
                                                                      dech.  */
-                                                                  return 1370;
+                                                                  return 1374;
                                                                 }
                                                               else
                                                                 {
@@ -6011,7 +6869,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01111xxxx110x01xxxxxxxxxx
                                                                      decd.  */
-                                                                  return 1368;
+                                                                  return 1372;
                                                                 }
                                                             }
                                                         }
@@ -6024,7 +6882,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0x01xxxxx110x11xxxxxxxxxx
                                                              uqdecw.  */
-                                                          return 2003;
+                                                          return 2007;
                                                         }
                                                       else
                                                         {
@@ -6034,7 +6892,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0011xxxxx110x11xxxxxxxxxx
                                                                  uqdech.  */
-                                                              return 1997;
+                                                              return 2001;
                                                             }
                                                           else
                                                             {
@@ -6042,7 +6900,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0111xxxxx110x11xxxxxxxxxx
                                                                  uqdecd.  */
-                                                              return 1994;
+                                                              return 1998;
                                                             }
                                                         }
                                                     }
@@ -6061,7 +6919,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0000xxxxx110xxxxxxxxxxxxx
                                                          prfb.  */
-                                                      return 1774;
+                                                      return 1778;
                                                     }
                                                   else
                                                     {
@@ -6069,7 +6927,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0100xxxxx110xxxxxxxxxxxxx
                                                          prfh.  */
-                                                      return 1789;
+                                                      return 1793;
                                                     }
                                                 }
                                               else
@@ -6080,7 +6938,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0001xxxxx110xxxxxxxxxxxxx
                                                          ld1b.  */
-                                                      return 1518;
+                                                      return 1522;
                                                     }
                                                   else
                                                     {
@@ -6088,7 +6946,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0101xxxxx110xxxxxxxxxxxxx
                                                          ld1h.  */
-                                                      return 1540;
+                                                      return 1544;
                                                     }
                                                 }
                                             }
@@ -6100,7 +6958,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x001xxxxxx110xxxxxxxxxxxxx
                                                      ld1rb.  */
-                                                  return 1547;
+                                                  return 1551;
                                                 }
                                               else
                                                 {
@@ -6108,7 +6966,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x011xxxxxx110xxxxxxxxxxxxx
                                                      ld1rh.  */
-                                                  return 1551;
+                                                  return 1555;
                                                 }
                                             }
                                         }
@@ -6117,42 +6975,64 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                     {
                                       if (((word >> 21) & 0x1) == 0)
                                         {
-                                          if (((word >> 22) & 0x1) == 0)
+                                          if (((word >> 31) & 0x1) == 0)
                                             {
-                                              if (((word >> 23) & 0x1) == 0)
+                                              if (((word >> 10) & 0x1) == 0)
                                                 {
                                                   /* 33222222222211111111110000000000
                                                      10987654321098765432109876543210
-                                                     x10001x0000xxxxx110xxxxxxxxxxxxx
-                                                     ldnt1b.  */
-                                                  return 2100;
+                                                     010001x0xx0xxxxx110xx0xxxxxxxxxx
+                                                     sclamp.  */
+                                                  return 2411;
                                                 }
                                               else
                                                 {
                                                   /* 33222222222211111111110000000000
                                                      10987654321098765432109876543210
-                                                     x10001x0100xxxxx110xxxxxxxxxxxxx
-                                                     ldnt1h.  */
-                                                  return 2103;
+                                                     010001x0xx0xxxxx110xx1xxxxxxxxxx
+                                                     uclamp.  */
+                                                  return 2412;
                                                 }
                                             }
                                           else
                                             {
-                                              if (((word >> 23) & 0x1) == 0)
+                                              if (((word >> 22) & 0x1) == 0)
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x10001x0010xxxxx110xxxxxxxxxxxxx
-                                                     ld1b.  */
-                                                  return 1517;
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         110001x0000xxxxx110xxxxxxxxxxxxx
+                                                         ldnt1b.  */
+                                                      return 2104;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         110001x0100xxxxx110xxxxxxxxxxxxx
+                                                         ldnt1h.  */
+                                                      return 2107;
+                                                    }
                                                 }
                                               else
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x10001x0110xxxxx110xxxxxxxxxxxxx
-                                                     ld1h.  */
-                                                  return 1538;
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         110001x0010xxxxx110xxxxxxxxxxxxx
+                                                         ld1b.  */
+                                                      return 1521;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         110001x0110xxxxx110xxxxxxxxxxxxx
+                                                         ld1h.  */
+                                                      return 1542;
+                                                    }
                                                 }
                                             }
                                         }
@@ -6166,7 +7046,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0001xxxxx110xxxxxxxxxxxxx
                                                      ld1b.  */
-                                                  return 1523;
+                                                  return 1527;
                                                 }
                                               else
                                                 {
@@ -6180,7 +7060,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1100x0xxxxxxxxxx
                                                                  smullb.  */
-                                                              return 2165;
+                                                              return 2169;
                                                             }
                                                           else
                                                             {
@@ -6188,7 +7068,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1101x0xxxxxxxxxx
                                                                  umullb.  */
-                                                              return 2290;
+                                                              return 2294;
                                                             }
                                                         }
                                                       else
@@ -6199,7 +7079,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1100x1xxxxxxxxxx
                                                                  smullt.  */
-                                                              return 2168;
+                                                              return 2172;
                                                             }
                                                           else
                                                             {
@@ -6207,7 +7087,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1101x1xxxxxxxxxx
                                                                  umullt.  */
-                                                              return 2293;
+                                                              return 2297;
                                                             }
                                                         }
                                                     }
@@ -6217,7 +7097,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0101xxxxx110xxxxxxxxxxxxx
                                                          ld1h.  */
-                                                      return 1544;
+                                                      return 1548;
                                                     }
                                                 }
                                             }
@@ -6229,7 +7109,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0011xxxxx110xxxxxxxxxxxxx
                                                      prfw.  */
-                                                  return 1798;
+                                                  return 1802;
                                                 }
                                               else
                                                 {
@@ -6243,7 +7123,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1100x0xxxxxxxxxx
                                                                  smullb.  */
-                                                              return 2166;
+                                                              return 2170;
                                                             }
                                                           else
                                                             {
@@ -6251,7 +7131,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1101x0xxxxxxxxxx
                                                                  umullb.  */
-                                                              return 2291;
+                                                              return 2295;
                                                             }
                                                         }
                                                       else
@@ -6262,7 +7142,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1100x1xxxxxxxxxx
                                                                  smullt.  */
-                                                              return 2169;
+                                                              return 2173;
                                                             }
                                                           else
                                                             {
@@ -6270,7 +7150,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1101x1xxxxxxxxxx
                                                                  umullt.  */
-                                                              return 2294;
+                                                              return 2298;
                                                             }
                                                         }
                                                     }
@@ -6280,7 +7160,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0111xxxxx110xxxxxxxxxxxxx
                                                          ld1h.  */
-                                                      return 1539;
+                                                      return 1543;
                                                     }
                                                 }
                                             }
@@ -6313,7 +7193,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx000x00001xxxxxxxxxxxxx
                                                                  saddv.  */
-                                                              return 1818;
+                                                              return 1822;
                                                             }
                                                           else
                                                             {
@@ -6321,7 +7201,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx000x01001xxxxxxxxxxxxx
                                                                  uaddv.  */
-                                                              return 1970;
+                                                              return 1974;
                                                             }
                                                         }
                                                       else
@@ -6330,7 +7210,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx010x0x001xxxxxxxxxxxxx
                                                              movprfx.  */
-                                                          return 1753;
+                                                          return 1757;
                                                         }
                                                     }
                                                   else
@@ -6343,7 +7223,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx001x00001xxxxxxxxxxxxx
                                                                  smaxv.  */
-                                                              return 1836;
+                                                              return 1840;
                                                             }
                                                           else
                                                             {
@@ -6351,7 +7231,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx011x00001xxxxxxxxxxxxx
                                                                  orv.  */
-                                                              return 1770;
+                                                              return 1774;
                                                             }
                                                         }
                                                       else
@@ -6362,7 +7242,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx001x01001xxxxxxxxxxxxx
                                                                  umaxv.  */
-                                                              return 1985;
+                                                              return 1989;
                                                             }
                                                           else
                                                             {
@@ -6370,7 +7250,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx011x01001xxxxxxxxxxxxx
                                                                  eorv.  */
-                                                              return 1385;
+                                                              return 1389;
                                                             }
                                                         }
                                                     }
@@ -6385,7 +7265,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx00xx10001xxxxxxxxxxxxx
                                                              sminv.  */
-                                                          return 1839;
+                                                          return 1843;
                                                         }
                                                       else
                                                         {
@@ -6393,7 +7273,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx01xx10001xxxxxxxxxxxxx
                                                              andv.  */
-                                                          return 1298;
+                                                          return 1302;
                                                         }
                                                     }
                                                   else
@@ -6402,7 +7282,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx0xxx11001xxxxxxxxxxxxx
                                                          uminv.  */
-                                                      return 1988;
+                                                      return 1992;
                                                     }
                                                 }
                                             }
@@ -6414,7 +7294,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x0xxxxx001xxxxxxxxxxxxx
                                                      ldff1sb.  */
-                                                  return 1669;
+                                                  return 1673;
                                                 }
                                               else
                                                 {
@@ -6422,7 +7302,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x0xxxxx001xxxxxxxxxxxxx
                                                      ldff1sh.  */
-                                                  return 1680;
+                                                  return 1684;
                                                 }
                                             }
                                         }
@@ -6436,7 +7316,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x0xx0xxxxx0010xxxxxxxxxxxx
                                                      cmla.  */
-                                                  return 2070;
+                                                  return 2074;
                                                 }
                                               else
                                                 {
@@ -6444,7 +7324,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x0xx0xxxxx0011xxxxxxxxxxxx
                                                      sqrdcmlah.  */
-                                                  return 2202;
+                                                  return 2206;
                                                 }
                                             }
                                           else
@@ -6455,7 +7335,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x00x0xxxxx001xxxxxxxxxxxxx
                                                      ldff1sb.  */
-                                                  return 1676;
+                                                  return 1680;
                                                 }
                                               else
                                                 {
@@ -6463,7 +7343,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x0xxxxx001xxxxxxxxxxxxx
                                                      ldff1sh.  */
-                                                  return 1686;
+                                                  return 1690;
                                                 }
                                             }
                                         }
@@ -6486,7 +7366,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0001xxxxx001x00xxxxxxxxxx
                                                                  and.  */
-                                                              return 1293;
+                                                              return 1297;
                                                             }
                                                           else
                                                             {
@@ -6494,7 +7374,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0101xxxxx001x00xxxxxxxxxx
                                                                  eor.  */
-                                                              return 1380;
+                                                              return 1384;
                                                             }
                                                         }
                                                       else
@@ -6505,7 +7385,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0011xxxxx001x00xxxxxxxxxx
                                                                  orr.  */
-                                                              return 1765;
+                                                              return 1769;
                                                             }
                                                           else
                                                             {
@@ -6513,7 +7393,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0111xxxxx001x00xxxxxxxxxx
                                                                  bic.  */
-                                                              return 1306;
+                                                              return 1310;
                                                             }
                                                         }
                                                     }
@@ -6525,7 +7405,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0x01xxxxx001x10xxxxxxxxxx
                                                              eor3.  */
-                                                          return 2073;
+                                                          return 2077;
                                                         }
                                                       else
                                                         {
@@ -6533,7 +7413,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0x11xxxxx001x10xxxxxxxxxx
                                                              bcax.  */
-                                                          return 2062;
+                                                          return 2066;
                                                         }
                                                     }
                                                 }
@@ -6545,7 +7425,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx001x01xxxxxxxxxx
                                                          xar.  */
-                                                      return 2335;
+                                                      return 2339;
                                                     }
                                                   else
                                                     {
@@ -6557,7 +7437,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0001xxxxx001x11xxxxxxxxxx
                                                                  bsl.  */
-                                                              return 2063;
+                                                              return 2067;
                                                             }
                                                           else
                                                             {
@@ -6565,7 +7445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0101xxxxx001x11xxxxxxxxxx
                                                                  bsl2n.  */
-                                                              return 2065;
+                                                              return 2069;
                                                             }
                                                         }
                                                       else
@@ -6576,7 +7456,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0011xxxxx001x11xxxxxxxxxx
                                                                  bsl1n.  */
-                                                              return 2064;
+                                                              return 2068;
                                                             }
                                                           else
                                                             {
@@ -6584,7 +7464,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0111xxxxx001x11xxxxxxxxxx
                                                                  nbsl.  */
-                                                              return 2120;
+                                                              return 2124;
                                                             }
                                                         }
                                                     }
@@ -6598,7 +7478,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x1xxxxx001xxxxxxxxxxxxx
                                                      prfh.  */
-                                                  return 1788;
+                                                  return 1792;
                                                 }
                                               else
                                                 {
@@ -6606,7 +7486,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x1xxxxx001xxxxxxxxxxxxx
                                                      ldff1sh.  */
-                                                  return 1681;
+                                                  return 1685;
                                                 }
                                             }
                                         }
@@ -6618,7 +7498,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x10001x00x1xxxxx001xxxxxxxxxxxxx
                                                  prfh.  */
-                                              return 1790;
+                                              return 1794;
                                             }
                                           else
                                             {
@@ -6634,7 +7514,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx0010x0xxxxxxxxxx
                                                                  sqdmlalb.  */
-                                                              return 2175;
+                                                              return 2179;
                                                             }
                                                           else
                                                             {
@@ -6642,7 +7522,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx0010x0xxxxxxxxxx
                                                                  sqdmlalb.  */
-                                                              return 2176;
+                                                              return 2180;
                                                             }
                                                         }
                                                       else
@@ -6653,7 +7533,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx0011x0xxxxxxxxxx
                                                                  sqdmlslb.  */
-                                                              return 2182;
+                                                              return 2186;
                                                             }
                                                           else
                                                             {
@@ -6661,7 +7541,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx0011x0xxxxxxxxxx
                                                                  sqdmlslb.  */
-                                                              return 2183;
+                                                              return 2187;
                                                             }
                                                         }
                                                     }
@@ -6675,7 +7555,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx0010x1xxxxxxxxxx
                                                                  sqdmlalt.  */
-                                                              return 2179;
+                                                              return 2183;
                                                             }
                                                           else
                                                             {
@@ -6683,7 +7563,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx0010x1xxxxxxxxxx
                                                                  sqdmlalt.  */
-                                                              return 2180;
+                                                              return 2184;
                                                             }
                                                         }
                                                       else
@@ -6694,7 +7574,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx0011x1xxxxxxxxxx
                                                                  sqdmlslt.  */
-                                                              return 2186;
+                                                              return 2190;
                                                             }
                                                           else
                                                             {
@@ -6702,7 +7582,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx0011x1xxxxxxxxxx
                                                                  sqdmlslt.  */
-                                                              return 2187;
+                                                              return 2191;
                                                             }
                                                         }
                                                     }
@@ -6713,7 +7593,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x1xxxxx001xxxxxxxxxxxxx
                                                      ldff1sh.  */
-                                                  return 1687;
+                                                  return 1691;
                                                 }
                                             }
                                         }
@@ -6739,7 +7619,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0000101xxxxxxxxxxxxx
                                                                  sxtb.  */
-                                                              return 1961;
+                                                              return 1965;
                                                             }
                                                           else
                                                             {
@@ -6747,7 +7627,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1000101xxxxxxxxxxxxx
                                                                  cls.  */
-                                                              return 1326;
+                                                              return 1330;
                                                             }
                                                         }
                                                       else
@@ -6758,7 +7638,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0100101xxxxxxxxxxxxx
                                                                  sxtw.  */
-                                                              return 1963;
+                                                              return 1967;
                                                             }
                                                           else
                                                             {
@@ -6766,7 +7646,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1100101xxxxxxxxxxxxx
                                                                  fabs.  */
-                                                              return 1388;
+                                                              return 1392;
                                                             }
                                                         }
                                                     }
@@ -6780,7 +7660,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0010101xxxxxxxxxxxxx
                                                                  sxth.  */
-                                                              return 1962;
+                                                              return 1966;
                                                             }
                                                           else
                                                             {
@@ -6788,7 +7668,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1010101xxxxxxxxxxxxx
                                                                  cnt.  */
-                                                              return 1355;
+                                                              return 1359;
                                                             }
                                                         }
                                                       else
@@ -6799,7 +7679,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0110101xxxxxxxxxxxxx
                                                                  abs.  */
-                                                              return 1284;
+                                                              return 1288;
                                                             }
                                                           else
                                                             {
@@ -6807,7 +7687,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1110101xxxxxxxxxxxxx
                                                                  not.  */
-                                                              return 1762;
+                                                              return 1766;
                                                             }
                                                         }
                                                     }
@@ -6824,7 +7704,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0001101xxxxxxxxxxxxx
                                                                  uxtb.  */
-                                                              return 2024;
+                                                              return 2028;
                                                             }
                                                           else
                                                             {
@@ -6832,7 +7712,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1001101xxxxxxxxxxxxx
                                                                  clz.  */
-                                                              return 1327;
+                                                              return 1331;
                                                             }
                                                         }
                                                       else
@@ -6843,7 +7723,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0101101xxxxxxxxxxxxx
                                                                  uxtw.  */
-                                                              return 2026;
+                                                              return 2030;
                                                             }
                                                           else
                                                             {
@@ -6851,7 +7731,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1101101xxxxxxxxxxxxx
                                                                  fneg.  */
-                                                              return 1465;
+                                                              return 1469;
                                                             }
                                                         }
                                                     }
@@ -6865,7 +7745,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x0011101xxxxxxxxxxxxx
                                                                  uxth.  */
-                                                              return 2025;
+                                                              return 2029;
                                                             }
                                                           else
                                                             {
@@ -6873,7 +7753,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x0xx0x1011101xxxxxxxxxxxxx
                                                                  cnot.  */
-                                                              return 1354;
+                                                              return 1358;
                                                             }
                                                         }
                                                       else
@@ -6882,7 +7762,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx0xx111101xxxxxxxxxxxxx
                                                              neg.  */
-                                                          return 1759;
+                                                          return 1763;
                                                         }
                                                     }
                                                 }
@@ -6899,7 +7779,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0001xxxxx1010xxxxxxxxxxxx
                                                              adr.  */
-                                                          return 1290;
+                                                          return 1294;
                                                         }
                                                       else
                                                         {
@@ -6907,7 +7787,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0011xxxxx1010xxxxxxxxxxxx
                                                              adr.  */
-                                                          return 1291;
+                                                          return 1295;
                                                         }
                                                     }
                                                   else
@@ -6916,7 +7796,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x01x1xxxxx1010xxxxxxxxxxxx
                                                          adr.  */
-                                                      return 1292;
+                                                      return 1296;
                                                     }
                                                 }
                                               else
@@ -6929,7 +7809,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx101100xxxxxxxxxx
                                                              ftssel.  */
-                                                          return 1491;
+                                                          return 1495;
                                                         }
                                                       else
                                                         {
@@ -6937,7 +7817,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx101110xxxxxxxxxx
                                                              fexpa.  */
-                                                          return 1435;
+                                                          return 1439;
                                                         }
                                                     }
                                                   else
@@ -6946,7 +7826,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx1011x1xxxxxxxxxx
                                                          movprfx.  */
-                                                      return 1752;
+                                                      return 1756;
                                                     }
                                                 }
                                             }
@@ -6963,7 +7843,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0000xxxxx101xxxxxxxxxxxxx
                                                          ldnt1b.  */
-                                                      return 2099;
+                                                      return 2103;
                                                     }
                                                   else
                                                     {
@@ -6971,7 +7851,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0100xxxxx101xxxxxxxxxxxxx
                                                          ldnt1h.  */
-                                                      return 2102;
+                                                      return 2106;
                                                     }
                                                 }
                                               else
@@ -6982,7 +7862,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0001xxxxx101xxxxxxxxxxxxx
                                                          ldff1sb.  */
-                                                      return 1678;
+                                                      return 1682;
                                                     }
                                                   else
                                                     {
@@ -6990,7 +7870,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0101xxxxx101xxxxxxxxxxxxx
                                                          ldff1sh.  */
-                                                      return 1690;
+                                                      return 1694;
                                                     }
                                                 }
                                             }
@@ -7002,7 +7882,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x001xxxxxx101xxxxxxxxxxxxx
                                                      ld1rb.  */
-                                                  return 1546;
+                                                  return 1550;
                                                 }
                                               else
                                                 {
@@ -7010,7 +7890,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x011xxxxxx101xxxxxxxxxxxxx
                                                      ld1rh.  */
-                                                  return 1550;
+                                                  return 1554;
                                                 }
                                             }
                                         }
@@ -7033,7 +7913,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx0x0000101xxxxxxxxxxxxx
                                                                  urecpe.  */
-                                                              return 2310;
+                                                              return 2314;
                                                             }
                                                           else
                                                             {
@@ -7041,7 +7921,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx0x1000101xxxxxxxxxxxxx
                                                                  sqabs.  */
-                                                              return 2172;
+                                                              return 2176;
                                                             }
                                                         }
                                                       else
@@ -7052,7 +7932,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx00x100101xxxxxxxxxxxxx
                                                                  sadalp.  */
-                                                              return 2136;
+                                                              return 2140;
                                                             }
                                                           else
                                                             {
@@ -7060,7 +7940,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx01x100101xxxxxxxxxxxxx
                                                                  smaxp.  */
-                                                              return 2150;
+                                                              return 2154;
                                                             }
                                                         }
                                                     }
@@ -7070,7 +7950,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x0xx0xxx10101xxxxxxxxxxxxx
                                                          sminp.  */
-                                                      return 2151;
+                                                      return 2155;
                                                     }
                                                 }
                                               else
@@ -7087,7 +7967,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx000001101xxxxxxxxxxxxx
                                                                      ursqrte.  */
-                                                                  return 2315;
+                                                                  return 2319;
                                                                 }
                                                               else
                                                                 {
@@ -7095,7 +7975,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0xx010001101xxxxxxxxxxxxx
                                                                      addp.  */
-                                                                  return 2061;
+                                                                  return 2065;
                                                                 }
                                                             }
                                                           else
@@ -7104,7 +7984,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx0x1001101xxxxxxxxxxxxx
                                                                  sqneg.  */
-                                                              return 2199;
+                                                              return 2203;
                                                             }
                                                         }
                                                       else
@@ -7115,7 +7995,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx00x101101xxxxxxxxxxxxx
                                                                  uadalp.  */
-                                                              return 2267;
+                                                              return 2271;
                                                             }
                                                           else
                                                             {
@@ -7123,7 +8003,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0xx01x101101xxxxxxxxxxxxx
                                                                  umaxp.  */
-                                                              return 2275;
+                                                              return 2279;
                                                             }
                                                         }
                                                     }
@@ -7133,7 +8013,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x0xx0xxx11101xxxxxxxxxxxxx
                                                          uminp.  */
-                                                      return 2276;
+                                                      return 2280;
                                                     }
                                                 }
                                             }
@@ -7145,7 +8025,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x00x0xxxxx101xxxxxxxxxxxxx
                                                      ldff1sb.  */
-                                                  return 1677;
+                                                  return 1681;
                                                 }
                                               else
                                                 {
@@ -7153,7 +8033,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x0xxxxx101xxxxxxxxxxxxx
                                                      ldff1sh.  */
-                                                  return 1688;
+                                                  return 1692;
                                                 }
                                             }
                                         }
@@ -7167,7 +8047,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0001xxxxx101xxxxxxxxxxxxx
                                                      ldff1sb.  */
-                                                  return 1679;
+                                                  return 1683;
                                                 }
                                               else
                                                 {
@@ -7181,7 +8061,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1010x0xxxxxxxxxx
                                                                  smlslb.  */
-                                                              return 2158;
+                                                              return 2162;
                                                             }
                                                           else
                                                             {
@@ -7189,7 +8069,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1011x0xxxxxxxxxx
                                                                  umlslb.  */
-                                                              return 2283;
+                                                              return 2287;
                                                             }
                                                         }
                                                       else
@@ -7200,7 +8080,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1010x1xxxxxxxxxx
                                                                  smlslt.  */
-                                                              return 2161;
+                                                              return 2165;
                                                             }
                                                           else
                                                             {
@@ -7208,7 +8088,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1011x1xxxxxxxxxx
                                                                  umlslt.  */
-                                                              return 2286;
+                                                              return 2290;
                                                             }
                                                         }
                                                     }
@@ -7218,7 +8098,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0101xxxxx101xxxxxxxxxxxxx
                                                          ldff1sh.  */
-                                                      return 1691;
+                                                      return 1695;
                                                     }
                                                 }
                                             }
@@ -7230,7 +8110,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0011xxxxx101xxxxxxxxxxxxx
                                                      prfh.  */
-                                                  return 1791;
+                                                  return 1795;
                                                 }
                                               else
                                                 {
@@ -7244,7 +8124,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1010x0xxxxxxxxxx
                                                                  smlslb.  */
-                                                              return 2159;
+                                                              return 2163;
                                                             }
                                                           else
                                                             {
@@ -7252,7 +8132,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1011x0xxxxxxxxxx
                                                                  umlslb.  */
-                                                              return 2284;
+                                                              return 2288;
                                                             }
                                                         }
                                                       else
@@ -7263,7 +8143,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1010x1xxxxxxxxxx
                                                                  smlslt.  */
-                                                              return 2162;
+                                                              return 2166;
                                                             }
                                                           else
                                                             {
@@ -7271,7 +8151,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1011x1xxxxxxxxxx
                                                                  umlslt.  */
-                                                              return 2287;
+                                                              return 2291;
                                                             }
                                                         }
                                                     }
@@ -7281,7 +8161,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0111xxxxx101xxxxxxxxxxxxx
                                                          ldff1sh.  */
-                                                      return 1689;
+                                                      return 1693;
                                                     }
                                                 }
                                             }
@@ -7303,7 +8183,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x0xx0xxxxx011xxxxxxxxxxxxx
                                                  mls.  */
-                                              return 1751;
+                                              return 1755;
                                             }
                                           else
                                             {
@@ -7313,7 +8193,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1b.  */
-                                                  return 1635;
+                                                  return 1639;
                                                 }
                                               else
                                                 {
@@ -7321,7 +8201,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1h.  */
-                                                  return 1655;
+                                                  return 1659;
                                                 }
                                             }
                                         }
@@ -7339,7 +8219,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011000xxxxxxxxxx
                                                              sqdmlalb.  */
-                                                          return 2177;
+                                                          return 2181;
                                                         }
                                                       else
                                                         {
@@ -7347,7 +8227,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011100xxxxxxxxxx
                                                              sqrdmlah.  */
-                                                          return 2206;
+                                                          return 2210;
                                                         }
                                                     }
                                                   else
@@ -7358,7 +8238,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011010xxxxxxxxxx
                                                              sqdmlslb.  */
-                                                          return 2184;
+                                                          return 2188;
                                                         }
                                                       else
                                                         {
@@ -7366,7 +8246,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011110xxxxxxxxxx
                                                              usdot.  */
-                                                          return 2432;
+                                                          return 2470;
                                                         }
                                                     }
                                                 }
@@ -7380,7 +8260,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011001xxxxxxxxxx
                                                              sqdmlalt.  */
-                                                          return 2181;
+                                                          return 2185;
                                                         }
                                                       else
                                                         {
@@ -7388,7 +8268,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0xx0xxxxx011101xxxxxxxxxx
                                                              sqrdmlsh.  */
-                                                          return 2210;
+                                                          return 2214;
                                                         }
                                                     }
                                                   else
@@ -7397,7 +8277,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x0xx0xxxxx011x11xxxxxxxxxx
                                                          sqdmlslt.  */
-                                                      return 2188;
+                                                      return 2192;
                                                     }
                                                 }
                                             }
@@ -7409,7 +8289,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x00x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1b.  */
-                                                  return 1644;
+                                                  return 1648;
                                                 }
                                               else
                                                 {
@@ -7417,7 +8297,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1h.  */
-                                                  return 1663;
+                                                  return 1667;
                                                 }
                                             }
                                         }
@@ -7438,7 +8318,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx011000xxxxxxxxxx
                                                              mul.  */
-                                                          return 2119;
+                                                          return 2123;
                                                         }
                                                       else
                                                         {
@@ -7446,7 +8326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx011100xxxxxxxxxx
                                                              sqdmulh.  */
-                                                          return 2192;
+                                                          return 2196;
                                                         }
                                                     }
                                                   else
@@ -7455,7 +8335,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx011x10xxxxxxxxxx
                                                          smulh.  */
-                                                      return 2164;
+                                                      return 2168;
                                                     }
                                                 }
                                               else
@@ -7468,7 +8348,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx011001xxxxxxxxxx
                                                              pmul.  */
-                                                          return 2122;
+                                                          return 2126;
                                                         }
                                                       else
                                                         {
@@ -7476,7 +8356,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x0xx1xxxxx011101xxxxxxxxxx
                                                              sqrdmulh.  */
-                                                          return 2214;
+                                                          return 2218;
                                                         }
                                                     }
                                                   else
@@ -7485,7 +8365,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x0xx1xxxxx011x11xxxxxxxxxx
                                                          umulh.  */
-                                                      return 2289;
+                                                      return 2293;
                                                     }
                                                 }
                                             }
@@ -7497,7 +8377,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x00x1xxxxx011xxxxxxxxxxxxx
                                                      prfd.  */
-                                                  return 1781;
+                                                  return 1785;
                                                 }
                                               else
                                                 {
@@ -7505,7 +8385,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x01x1xxxxx011xxxxxxxxxxxxx
                                                      ldff1h.  */
-                                                  return 1656;
+                                                  return 1660;
                                                 }
                                             }
                                         }
@@ -7517,7 +8397,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x10001x00x1xxxxx011xxxxxxxxxxxxx
                                                  prfd.  */
-                                              return 1783;
+                                              return 1787;
                                             }
                                           else
                                             {
@@ -7531,7 +8411,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0101xxxxx0110xxxxxxxxxxxx
                                                              cmla.  */
-                                                          return 2071;
+                                                          return 2075;
                                                         }
                                                       else
                                                         {
@@ -7539,7 +8419,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0111xxxxx0110xxxxxxxxxxxx
                                                              cmla.  */
-                                                          return 2072;
+                                                          return 2076;
                                                         }
                                                     }
                                                   else
@@ -7550,7 +8430,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0101xxxxx0111xxxxxxxxxxxx
                                                              sqrdcmlah.  */
-                                                          return 2200;
+                                                          return 2204;
                                                         }
                                                       else
                                                         {
@@ -7558,7 +8438,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x0111xxxxx0111xxxxxxxxxxxx
                                                              sqrdcmlah.  */
-                                                          return 2201;
+                                                          return 2205;
                                                         }
                                                     }
                                                 }
@@ -7568,7 +8448,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x01x1xxxxx011xxxxxxxxxxxxx
                                                      ldff1h.  */
-                                                  return 1664;
+                                                  return 1668;
                                                 }
                                             }
                                         }
@@ -7586,7 +8466,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x0xx0xxxxx111xxxxxxxxxxxxx
                                                  msb.  */
-                                              return 1754;
+                                              return 1758;
                                             }
                                           else
                                             {
@@ -7606,7 +8486,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00010xxxx111000xxxxxxxxxx
                                                                          cntb.  */
-                                                                      return 1356;
+                                                                      return 1360;
                                                                     }
                                                                   else
                                                                     {
@@ -7614,7 +8494,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01010xxxx111000xxxxxxxxxx
                                                                          cntw.  */
-                                                                      return 1360;
+                                                                      return 1364;
                                                                     }
                                                                 }
                                                               else
@@ -7625,7 +8505,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00110xxxx111000xxxxxxxxxx
                                                                          cnth.  */
-                                                                      return 1358;
+                                                                      return 1362;
                                                                     }
                                                                   else
                                                                     {
@@ -7633,7 +8513,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01110xxxx111000xxxxxxxxxx
                                                                          cntd.  */
-                                                                      return 1357;
+                                                                      return 1361;
                                                                     }
                                                                 }
                                                             }
@@ -7647,7 +8527,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00011xxxx111000xxxxxxxxxx
                                                                          incb.  */
-                                                                      return 1492;
+                                                                      return 1496;
                                                                     }
                                                                   else
                                                                     {
@@ -7655,7 +8535,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01011xxxx111000xxxxxxxxxx
                                                                          incw.  */
-                                                                      return 1500;
+                                                                      return 1504;
                                                                     }
                                                                 }
                                                               else
@@ -7666,7 +8546,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00111xxxx111000xxxxxxxxxx
                                                                          inch.  */
-                                                                      return 1496;
+                                                                      return 1500;
                                                                     }
                                                                   else
                                                                     {
@@ -7674,7 +8554,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01111xxxx111000xxxxxxxxxx
                                                                          incd.  */
-                                                                      return 1494;
+                                                                      return 1498;
                                                                     }
                                                                 }
                                                             }
@@ -7691,7 +8571,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00010xxxx111100xxxxxxxxxx
                                                                          sqincb.  */
-                                                                      return 1859;
+                                                                      return 1863;
                                                                     }
                                                                   else
                                                                     {
@@ -7699,7 +8579,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01010xxxx111100xxxxxxxxxx
                                                                          sqincw.  */
-                                                                      return 1871;
+                                                                      return 1875;
                                                                     }
                                                                 }
                                                               else
@@ -7710,7 +8590,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00110xxxx111100xxxxxxxxxx
                                                                          sqinch.  */
-                                                                      return 1865;
+                                                                      return 1869;
                                                                     }
                                                                   else
                                                                     {
@@ -7718,7 +8598,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01110xxxx111100xxxxxxxxxx
                                                                          sqincd.  */
-                                                                      return 1862;
+                                                                      return 1866;
                                                                     }
                                                                 }
                                                             }
@@ -7732,7 +8612,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00011xxxx111100xxxxxxxxxx
                                                                          sqincb.  */
-                                                                      return 1858;
+                                                                      return 1862;
                                                                     }
                                                                   else
                                                                     {
@@ -7740,7 +8620,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01011xxxx111100xxxxxxxxxx
                                                                          sqincw.  */
-                                                                      return 1870;
+                                                                      return 1874;
                                                                     }
                                                                 }
                                                               else
@@ -7751,7 +8631,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00111xxxx111100xxxxxxxxxx
                                                                          sqinch.  */
-                                                                      return 1864;
+                                                                      return 1868;
                                                                     }
                                                                   else
                                                                     {
@@ -7759,7 +8639,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01111xxxx111100xxxxxxxxxx
                                                                          sqincd.  */
-                                                                      return 1861;
+                                                                      return 1865;
                                                                     }
                                                                 }
                                                             }
@@ -7777,7 +8657,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00010xxxx111x10xxxxxxxxxx
                                                                      sqdecb.  */
-                                                                  return 1845;
+                                                                  return 1849;
                                                                 }
                                                               else
                                                                 {
@@ -7785,7 +8665,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01010xxxx111x10xxxxxxxxxx
                                                                      sqdecw.  */
-                                                                  return 1857;
+                                                                  return 1861;
                                                                 }
                                                             }
                                                           else
@@ -7796,7 +8676,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00110xxxx111x10xxxxxxxxxx
                                                                      sqdech.  */
-                                                                  return 1851;
+                                                                  return 1855;
                                                                 }
                                                               else
                                                                 {
@@ -7804,7 +8684,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01110xxxx111x10xxxxxxxxxx
                                                                      sqdecd.  */
-                                                                  return 1848;
+                                                                  return 1852;
                                                                 }
                                                             }
                                                         }
@@ -7818,7 +8698,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00011xxxx111x10xxxxxxxxxx
                                                                      sqdecb.  */
-                                                                  return 1844;
+                                                                  return 1848;
                                                                 }
                                                               else
                                                                 {
@@ -7826,7 +8706,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01011xxxx111x10xxxxxxxxxx
                                                                      sqdecw.  */
-                                                                  return 1856;
+                                                                  return 1860;
                                                                 }
                                                             }
                                                           else
@@ -7837,7 +8717,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00111xxxx111x10xxxxxxxxxx
                                                                      sqdech.  */
-                                                                  return 1850;
+                                                                  return 1854;
                                                                 }
                                                               else
                                                                 {
@@ -7845,7 +8725,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01111xxxx111x10xxxxxxxxxx
                                                                      sqdecd.  */
-                                                                  return 1847;
+                                                                  return 1851;
                                                                 }
                                                             }
                                                         }
@@ -7865,7 +8745,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0001xxxxx111001xxxxxxxxxx
                                                                      decb.  */
-                                                                  return 1367;
+                                                                  return 1371;
                                                                 }
                                                               else
                                                                 {
@@ -7873,7 +8753,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0101xxxxx111001xxxxxxxxxx
                                                                      decw.  */
-                                                                  return 1375;
+                                                                  return 1379;
                                                                 }
                                                             }
                                                           else
@@ -7884,7 +8764,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0011xxxxx111001xxxxxxxxxx
                                                                      dech.  */
-                                                                  return 1371;
+                                                                  return 1375;
                                                                 }
                                                               else
                                                                 {
@@ -7892,7 +8772,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x0111xxxxx111001xxxxxxxxxx
                                                                      decd.  */
-                                                                  return 1369;
+                                                                  return 1373;
                                                                 }
                                                             }
                                                         }
@@ -7908,7 +8788,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00010xxxx111101xxxxxxxxxx
                                                                          uqincb.  */
-                                                                      return 2006;
+                                                                      return 2010;
                                                                     }
                                                                   else
                                                                     {
@@ -7916,7 +8796,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01010xxxx111101xxxxxxxxxx
                                                                          uqincw.  */
-                                                                      return 2018;
+                                                                      return 2022;
                                                                     }
                                                                 }
                                                               else
@@ -7927,7 +8807,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00110xxxx111101xxxxxxxxxx
                                                                          uqinch.  */
-                                                                      return 2012;
+                                                                      return 2016;
                                                                     }
                                                                   else
                                                                     {
@@ -7935,7 +8815,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01110xxxx111101xxxxxxxxxx
                                                                          uqincd.  */
-                                                                      return 2009;
+                                                                      return 2013;
                                                                     }
                                                                 }
                                                             }
@@ -7949,7 +8829,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00011xxxx111101xxxxxxxxxx
                                                                          uqincb.  */
-                                                                      return 2007;
+                                                                      return 2011;
                                                                     }
                                                                   else
                                                                     {
@@ -7957,7 +8837,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01011xxxx111101xxxxxxxxxx
                                                                          uqincw.  */
-                                                                      return 2019;
+                                                                      return 2023;
                                                                     }
                                                                 }
                                                               else
@@ -7968,7 +8848,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x00111xxxx111101xxxxxxxxxx
                                                                          uqinch.  */
-                                                                      return 2013;
+                                                                      return 2017;
                                                                     }
                                                                   else
                                                                     {
@@ -7976,7 +8856,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x01111xxxx111101xxxxxxxxxx
                                                                          uqincd.  */
-                                                                      return 2010;
+                                                                      return 2014;
                                                                     }
                                                                 }
                                                             }
@@ -7994,7 +8874,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00010xxxx111x11xxxxxxxxxx
                                                                      uqdecb.  */
-                                                                  return 1992;
+                                                                  return 1996;
                                                                 }
                                                               else
                                                                 {
@@ -8002,7 +8882,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01010xxxx111x11xxxxxxxxxx
                                                                      uqdecw.  */
-                                                                  return 2004;
+                                                                  return 2008;
                                                                 }
                                                             }
                                                           else
@@ -8013,7 +8893,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00110xxxx111x11xxxxxxxxxx
                                                                      uqdech.  */
-                                                                  return 1998;
+                                                                  return 2002;
                                                                 }
                                                               else
                                                                 {
@@ -8021,7 +8901,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01110xxxx111x11xxxxxxxxxx
                                                                      uqdecd.  */
-                                                                  return 1995;
+                                                                  return 1999;
                                                                 }
                                                             }
                                                         }
@@ -8035,7 +8915,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00011xxxx111x11xxxxxxxxxx
                                                                      uqdecb.  */
-                                                                  return 1993;
+                                                                  return 1997;
                                                                 }
                                                               else
                                                                 {
@@ -8043,7 +8923,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01011xxxx111x11xxxxxxxxxx
                                                                      uqdecw.  */
-                                                                  return 2005;
+                                                                  return 2009;
                                                                 }
                                                             }
                                                           else
@@ -8054,7 +8934,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x00111xxxx111x11xxxxxxxxxx
                                                                      uqdech.  */
-                                                                  return 1999;
+                                                                  return 2003;
                                                                 }
                                                               else
                                                                 {
@@ -8062,7 +8942,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x01111xxxx111x11xxxxxxxxxx
                                                                      uqdecd.  */
-                                                                  return 1996;
+                                                                  return 2000;
                                                                 }
                                                             }
                                                         }
@@ -8082,7 +8962,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0000xxxxx111xxxxxxxxxxxxx
                                                          prfb.  */
-                                                      return 1778;
+                                                      return 1782;
                                                     }
                                                   else
                                                     {
@@ -8090,7 +8970,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0100xxxxx111xxxxxxxxxxxxx
                                                          prfh.  */
-                                                      return 1792;
+                                                      return 1796;
                                                     }
                                                 }
                                               else
@@ -8101,7 +8981,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0001xxxxx111xxxxxxxxxxxxx
                                                          ldff1b.  */
-                                                      return 1646;
+                                                      return 1650;
                                                     }
                                                   else
                                                     {
@@ -8109,7 +8989,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x0101xxxxx111xxxxxxxxxxxxx
                                                          ldff1h.  */
-                                                      return 1667;
+                                                      return 1671;
                                                     }
                                                 }
                                             }
@@ -8121,7 +9001,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x001xxxxxx111xxxxxxxxxxxxx
                                                      ld1rb.  */
-                                                  return 1548;
+                                                  return 1552;
                                                 }
                                               else
                                                 {
@@ -8129,7 +9009,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x011xxxxxx111xxxxxxxxxxxxx
                                                      ld1rh.  */
-                                                  return 1552;
+                                                  return 1556;
                                                 }
                                             }
                                         }
@@ -8146,7 +9026,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0000xxxxx111xxxxxxxxxxxxx
                                                      prfb.  */
-                                                  return 1780;
+                                                  return 1784;
                                                 }
                                               else
                                                 {
@@ -8154,7 +9034,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0100xxxxx111xxxxxxxxxxxxx
                                                      prfh.  */
-                                                  return 1794;
+                                                  return 1798;
                                                 }
                                             }
                                           else
@@ -8165,7 +9045,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0010xxxxx111xxxxxxxxxxxxx
                                                      ldff1b.  */
-                                                  return 1645;
+                                                  return 1649;
                                                 }
                                               else
                                                 {
@@ -8173,7 +9053,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x0110xxxxx111xxxxxxxxxxxxx
                                                      ldff1h.  */
-                                                  return 1665;
+                                                  return 1669;
                                                 }
                                             }
                                         }
@@ -8191,7 +9071,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x1xxxxx111x00xxxxxxxxxx
                                                              sqdmulh.  */
-                                                          return 2189;
+                                                          return 2193;
                                                         }
                                                       else
                                                         {
@@ -8199,7 +9079,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x00x1xxxxx111x10xxxxxxxxxx
                                                              mul.  */
-                                                          return 2116;
+                                                          return 2120;
                                                         }
                                                     }
                                                   else
@@ -8208,7 +9088,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x00x1xxxxx111xx1xxxxxxxxxx
                                                          sqrdmulh.  */
-                                                      return 2211;
+                                                      return 2215;
                                                     }
                                                 }
                                               else
@@ -8219,7 +9099,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0001xxxxx111xxxxxxxxxxxxx
                                                          ldff1b.  */
-                                                      return 1647;
+                                                      return 1651;
                                                     }
                                                   else
                                                     {
@@ -8227,7 +9107,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0011xxxxx111xxxxxxxxxxxxx
                                                          prfd.  */
-                                                      return 1784;
+                                                      return 1788;
                                                     }
                                                 }
                                             }
@@ -8245,7 +9125,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1110x0xxxxxxxxxx
                                                                  sqdmullb.  */
-                                                              return 2193;
+                                                              return 2197;
                                                             }
                                                           else
                                                             {
@@ -8255,7 +9135,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx111100xxxxxxxxxx
                                                                      sqdmulh.  */
-                                                                  return 2190;
+                                                                  return 2194;
                                                                 }
                                                               else
                                                                 {
@@ -8263,7 +9143,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0101xxxxx111110xxxxxxxxxx
                                                                      mul.  */
-                                                                  return 2117;
+                                                                  return 2121;
                                                                 }
                                                             }
                                                         }
@@ -8275,7 +9155,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1110x1xxxxxxxxxx
                                                                  sqdmullt.  */
-                                                              return 2196;
+                                                              return 2200;
                                                             }
                                                           else
                                                             {
@@ -8283,7 +9163,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0101xxxxx1111x1xxxxxxxxxx
                                                                  sqrdmulh.  */
-                                                              return 2212;
+                                                              return 2216;
                                                             }
                                                         }
                                                     }
@@ -8293,7 +9173,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0101xxxxx111xxxxxxxxxxxxx
                                                          ldff1h.  */
-                                                      return 1668;
+                                                      return 1672;
                                                     }
                                                 }
                                               else
@@ -8308,7 +9188,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1110x0xxxxxxxxxx
                                                                  sqdmullb.  */
-                                                              return 2194;
+                                                              return 2198;
                                                             }
                                                           else
                                                             {
@@ -8318,7 +9198,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx111100xxxxxxxxxx
                                                                      sqdmulh.  */
-                                                                  return 2191;
+                                                                  return 2195;
                                                                 }
                                                               else
                                                                 {
@@ -8326,7 +9206,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x0111xxxxx111110xxxxxxxxxx
                                                                      mul.  */
-                                                                  return 2118;
+                                                                  return 2122;
                                                                 }
                                                             }
                                                         }
@@ -8338,7 +9218,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1110x1xxxxxxxxxx
                                                                  sqdmullt.  */
-                                                              return 2197;
+                                                              return 2201;
                                                             }
                                                           else
                                                             {
@@ -8346,7 +9226,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x0111xxxxx1111x1xxxxxxxxxx
                                                                  sqrdmulh.  */
-                                                              return 2213;
+                                                              return 2217;
                                                             }
                                                         }
                                                     }
@@ -8356,7 +9236,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x0111xxxxx111xxxxxxxxxxxxx
                                                          ldff1h.  */
-                                                      return 1666;
+                                                      return 1670;
                                                     }
                                                 }
                                             }
@@ -8386,7 +9266,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx000xxxxxxxx0xxxx
                                                      cmphs.  */
-                                                  return 1340;
+                                                  return 1344;
                                                 }
                                               else
                                                 {
@@ -8394,7 +9274,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx000xxxxxxxx1xxxx
                                                      cmphi.  */
-                                                  return 1337;
+                                                  return 1341;
                                                 }
                                             }
                                           else
@@ -8405,7 +9285,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x00x0xxxxx000xxxxxxxxxxxxx
                                                      ld1rqb.  */
-                                                  return 1554;
+                                                  return 1558;
                                                 }
                                               else
                                                 {
@@ -8413,7 +9293,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x01x0xxxxx000xxxxxxxxxxxxx
                                                      ld1rqh.  */
-                                                  return 1558;
+                                                  return 1562;
                                                 }
                                             }
                                         }
@@ -8427,7 +9307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx010xxxxxxxx0xxxx
                                                      cmpge.  */
-                                                  return 1331;
+                                                  return 1335;
                                                 }
                                               else
                                                 {
@@ -8435,7 +9315,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx010xxxxxxxx1xxxx
                                                      cmpgt.  */
-                                                  return 1334;
+                                                  return 1338;
                                                 }
                                             }
                                           else
@@ -8448,7 +9328,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0000xxxxx010xxxxxxxxxxxxx
                                                          ld1b.  */
-                                                      return 1512;
+                                                      return 1516;
                                                     }
                                                   else
                                                     {
@@ -8456,7 +9336,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0100xxxxx010xxxxxxxxxxxxx
                                                          ld1sw.  */
-                                                      return 1592;
+                                                      return 1596;
                                                     }
                                                 }
                                               else
@@ -8467,7 +9347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0010xxxxx010xxxxxxxxxxxxx
                                                          ld1b.  */
-                                                      return 1514;
+                                                      return 1518;
                                                     }
                                                   else
                                                     {
@@ -8475,7 +9355,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0110xxxxx010xxxxxxxxxxxxx
                                                          ld1h.  */
-                                                      return 1534;
+                                                      return 1538;
                                                     }
                                                 }
                                             }
@@ -8493,7 +9373,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx001xxxxxxxx0xxxx
                                                      cmpeq.  */
-                                                  return 1328;
+                                                  return 1332;
                                                 }
                                               else
                                                 {
@@ -8501,7 +9381,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx001xxxxxxxx1xxxx
                                                      cmpne.  */
-                                                  return 1351;
+                                                  return 1355;
                                                 }
                                             }
                                           else
@@ -8512,7 +9392,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x00x0xxxxx001xxxxxxxxxxxxx
                                                      ld1rqb.  */
-                                                  return 1553;
+                                                  return 1557;
                                                 }
                                               else
                                                 {
@@ -8520,7 +9400,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x01x0xxxxx001xxxxxxxxxxxxx
                                                      ld1rqh.  */
-                                                  return 1557;
+                                                  return 1561;
                                                 }
                                             }
                                         }
@@ -8534,7 +9414,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx011xxxxxxxx0xxxx
                                                      cmplt.  */
-                                                  return 1349;
+                                                  return 1353;
                                                 }
                                               else
                                                 {
@@ -8542,7 +9422,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx011xxxxxxxx1xxxx
                                                      cmple.  */
-                                                  return 1343;
+                                                  return 1347;
                                                 }
                                             }
                                           else
@@ -8555,7 +9435,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0000xxxxx011xxxxxxxxxxxxx
                                                          ldff1b.  */
-                                                      return 1636;
+                                                      return 1640;
                                                     }
                                                   else
                                                     {
@@ -8563,7 +9443,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0100xxxxx011xxxxxxxxxxxxx
                                                          ldff1sw.  */
-                                                      return 1692;
+                                                      return 1696;
                                                     }
                                                 }
                                               else
@@ -8574,7 +9454,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0010xxxxx011xxxxxxxxxxxxx
                                                          ldff1b.  */
-                                                      return 1640;
+                                                      return 1644;
                                                     }
                                                   else
                                                     {
@@ -8582,7 +9462,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0110xxxxx011xxxxxxxxxxxxx
                                                          ldff1h.  */
-                                                      return 1659;
+                                                      return 1663;
                                                     }
                                                 }
                                             }
@@ -8597,7 +9477,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          011001x0xx0xxxxx0xxxxxxxxxxxxxxx
                                          fcmla.  */
-                                      return 1397;
+                                      return 1401;
                                     }
                                   else
                                     {
@@ -8609,7 +9489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  111001x0x00xxxxx0x0xxxxxxxxxxxxx
                                                  st1b.  */
-                                              return 1874;
+                                              return 1878;
                                             }
                                           else
                                             {
@@ -8619,7 +9499,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0010xxxxx0x0xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1878;
+                                                  return 1882;
                                                 }
                                               else
                                                 {
@@ -8627,7 +9507,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0110xxxxx0x0xxxxxxxxxxxxx
                                                      st1h.  */
-                                                  return 1899;
+                                                  return 1903;
                                                 }
                                             }
                                         }
@@ -8643,7 +9523,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0000xxxxx001xxxxxxxxxxxxx
                                                          stnt1b.  */
-                                                      return 2251;
+                                                      return 2255;
                                                     }
                                                   else
                                                     {
@@ -8651,7 +9531,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0100xxxxx001xxxxxxxxxxxxx
                                                          stnt1h.  */
-                                                      return 2254;
+                                                      return 2258;
                                                     }
                                                 }
                                               else
@@ -8662,7 +9542,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0010xxxxx001xxxxxxxxxxxxx
                                                          stnt1b.  */
-                                                      return 2250;
+                                                      return 2254;
                                                     }
                                                   else
                                                     {
@@ -8670,7 +9550,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0110xxxxx001xxxxxxxxxxxxx
                                                          stnt1h.  */
-                                                      return 2253;
+                                                      return 2257;
                                                     }
                                                 }
                                             }
@@ -8684,7 +9564,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0000xxxxx011xxxxxxxxxxxxx
                                                          stnt1b.  */
-                                                      return 1944;
+                                                      return 1948;
                                                     }
                                                   else
                                                     {
@@ -8692,7 +9572,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0100xxxxx011xxxxxxxxxxxxx
                                                          stnt1h.  */
-                                                      return 1948;
+                                                      return 1952;
                                                     }
                                                 }
                                               else
@@ -8703,7 +9583,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0010xxxxx011xxxxxxxxxxxxx
                                                          st3b.  */
-                                                      return 1928;
+                                                      return 1932;
                                                     }
                                                   else
                                                     {
@@ -8711,7 +9591,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0110xxxxx011xxxxxxxxxxxxx
                                                          st3h.  */
-                                                      return 1932;
+                                                      return 1936;
                                                     }
                                                 }
                                             }
@@ -8733,7 +9613,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x01001x0xx0xxxxx100xxxxxxxx0xxxx
                                                  cmpge.  */
-                                              return 1332;
+                                              return 1336;
                                             }
                                           else
                                             {
@@ -8741,7 +9621,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x01001x0xx0xxxxx100xxxxxxxx1xxxx
                                                  cmpgt.  */
-                                              return 1335;
+                                              return 1339;
                                             }
                                         }
                                       else
@@ -8754,7 +9634,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx110xxxxxxxx0xxxx
                                                      cmphs.  */
-                                                  return 1341;
+                                                  return 1345;
                                                 }
                                               else
                                                 {
@@ -8762,7 +9642,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx110xxxxxxxx1xxxx
                                                      cmphi.  */
-                                                  return 1338;
+                                                  return 1342;
                                                 }
                                             }
                                           else
@@ -8775,7 +9655,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0000xxxxx110xxxxxxxxxxxxx
                                                          ldnt1b.  */
-                                                      return 1727;
+                                                      return 1731;
                                                     }
                                                   else
                                                     {
@@ -8783,7 +9663,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0100xxxxx110xxxxxxxxxxxxx
                                                          ldnt1h.  */
-                                                      return 1731;
+                                                      return 1735;
                                                     }
                                                 }
                                               else
@@ -8794,7 +9674,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0010xxxxx110xxxxxxxxxxxxx
                                                          ld3b.  */
-                                                      return 1619;
+                                                      return 1623;
                                                     }
                                                   else
                                                     {
@@ -8802,7 +9682,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0110xxxxx110xxxxxxxxxxxxx
                                                          ld3h.  */
-                                                      return 1623;
+                                                      return 1627;
                                                     }
                                                 }
                                             }
@@ -8822,7 +9702,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0xx00x00x1x0xxxxxxxxxxxxx
                                                          fcadd.  */
-                                                      return 1396;
+                                                      return 1400;
                                                     }
                                                   else
                                                     {
@@ -8830,7 +9710,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0xx01x00x1x0xxxxxxxxxxxxx
                                                          faddp.  */
-                                                      return 2077;
+                                                      return 2081;
                                                     }
                                                 }
                                               else
@@ -8841,7 +9721,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0xx0xx1001x0xxxxxxxxxxxxx
                                                          fmaxnmp.  */
-                                                      return 2085;
+                                                      return 2089;
                                                     }
                                                   else
                                                     {
@@ -8849,7 +9729,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0xx0xx1011x0xxxxxxxxxxxxx
                                                          fminnmp.  */
-                                                      return 2087;
+                                                      return 2091;
                                                     }
                                                 }
                                             }
@@ -8861,7 +9741,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x0xx0xxx101x0xxxxxxxxxxxxx
                                                      fmaxp.  */
-                                                  return 2086;
+                                                  return 2090;
                                                 }
                                               else
                                                 {
@@ -8869,7 +9749,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x0xx0xxx111x0xxxxxxxxxxxxx
                                                      fminp.  */
-                                                  return 2088;
+                                                  return 2092;
                                                 }
                                             }
                                         }
@@ -8883,7 +9763,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0000xxxxx1x0xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1875;
+                                                  return 1879;
                                                 }
                                               else
                                                 {
@@ -8891,7 +9771,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0100xxxxx1x0xxxxxxxxxxxxx
                                                      st1h.  */
-                                                  return 1894;
+                                                  return 1898;
                                                 }
                                             }
                                           else
@@ -8902,7 +9782,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0010xxxxx1x0xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1879;
+                                                  return 1883;
                                                 }
                                               else
                                                 {
@@ -8910,7 +9790,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0110xxxxx1x0xxxxxxxxxxxxx
                                                      st1h.  */
-                                                  return 1900;
+                                                  return 1904;
                                                 }
                                             }
                                         }
@@ -8930,7 +9810,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx101xxxxxxxx0xxxx
                                                      cmpeq.  */
-                                                  return 1329;
+                                                  return 1333;
                                                 }
                                               else
                                                 {
@@ -8938,7 +9818,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx101xxxxxxxx1xxxx
                                                      cmpne.  */
-                                                  return 1352;
+                                                  return 1356;
                                                 }
                                             }
                                           else
@@ -8953,7 +9833,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00000xxxx101xxxxxxxxxxxxx
                                                              ld1b.  */
-                                                          return 1519;
+                                                          return 1523;
                                                         }
                                                       else
                                                         {
@@ -8961,7 +9841,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01000xxxx101xxxxxxxxxxxxx
                                                              ld1sw.  */
-                                                          return 1597;
+                                                          return 1601;
                                                         }
                                                     }
                                                   else
@@ -8972,7 +9852,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00100xxxx101xxxxxxxxxxxxx
                                                              ld1b.  */
-                                                          return 1521;
+                                                          return 1525;
                                                         }
                                                       else
                                                         {
@@ -8980,7 +9860,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01100xxxx101xxxxxxxxxxxxx
                                                              ld1h.  */
-                                                          return 1542;
+                                                          return 1546;
                                                         }
                                                     }
                                                 }
@@ -8994,7 +9874,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00001xxxx101xxxxxxxxxxxxx
                                                              ldnf1b.  */
-                                                          return 1711;
+                                                          return 1715;
                                                         }
                                                       else
                                                         {
@@ -9002,7 +9882,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01001xxxx101xxxxxxxxxxxxx
                                                              ldnf1sw.  */
-                                                          return 1724;
+                                                          return 1728;
                                                         }
                                                     }
                                                   else
@@ -9013,7 +9893,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00101xxxx101xxxxxxxxxxxxx
                                                              ldnf1b.  */
-                                                          return 1713;
+                                                          return 1717;
                                                         }
                                                       else
                                                         {
@@ -9021,7 +9901,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01101xxxx101xxxxxxxxxxxxx
                                                              ldnf1h.  */
-                                                          return 1717;
+                                                          return 1721;
                                                         }
                                                     }
                                                 }
@@ -9039,7 +9919,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0000xxxxx101xxxxxxxxxxxxx
                                                          fcvtxnt.  */
-                                                      return 2083;
+                                                      return 2087;
                                                     }
                                                   else
                                                     {
@@ -9047,7 +9927,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0000xxxxx101xxxxxxxxxxxxx
                                                          st1b.  */
-                                                      return 1876;
+                                                      return 1880;
                                                     }
                                                 }
                                               else
@@ -9062,7 +9942,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x0100xxx00101xxxxxxxxxxxxx
                                                                  fcvtnt.  */
-                                                              return 2080;
+                                                              return 2084;
                                                             }
                                                           else
                                                             {
@@ -9070,7 +9950,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x0100xxx10101xxxxxxxxxxxxx
                                                                  bfcvtnt.  */
-                                                              return 2461;
+                                                              return 2499;
                                                             }
                                                         }
                                                       else
@@ -9079,7 +9959,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0100xxxx1101xxxxxxxxxxxxx
                                                              fcvtlt.  */
-                                                          return 2078;
+                                                          return 2082;
                                                         }
                                                     }
                                                   else
@@ -9088,7 +9968,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0100xxxxx101xxxxxxxxxxxxx
                                                          st1h.  */
-                                                      return 1895;
+                                                      return 1899;
                                                     }
                                                 }
                                             }
@@ -9100,7 +9980,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0010xxxxx101xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1883;
+                                                  return 1887;
                                                 }
                                               else
                                                 {
@@ -9112,7 +9992,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0110xxxx0101xxxxxxxxxxxxx
                                                              fcvtnt.  */
-                                                          return 2081;
+                                                          return 2085;
                                                         }
                                                       else
                                                         {
@@ -9120,7 +10000,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0110xxxx1101xxxxxxxxxxxxx
                                                              fcvtlt.  */
-                                                          return 2079;
+                                                          return 2083;
                                                         }
                                                     }
                                                   else
@@ -9129,7 +10009,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0110xxxxx101xxxxxxxxxxxxx
                                                          st1h.  */
-                                                      return 1904;
+                                                      return 1908;
                                                     }
                                                 }
                                             }
@@ -9147,7 +10027,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx111xxxxxxxx0xxxx
                                                      cmplo.  */
-                                                  return 1345;
+                                                  return 1349;
                                                 }
                                               else
                                                 {
@@ -9155,7 +10035,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x0xx0xxxxx111xxxxxxxx1xxxx
                                                      cmpls.  */
-                                                  return 1347;
+                                                  return 1351;
                                                 }
                                             }
                                           else
@@ -9168,7 +10048,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0000xxxxx111xxxxxxxxxxxxx
                                                          ldnt1b.  */
-                                                      return 1728;
+                                                      return 1732;
                                                     }
                                                   else
                                                     {
@@ -9176,7 +10056,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0100xxxxx111xxxxxxxxxxxxx
                                                          ldnt1h.  */
-                                                      return 1732;
+                                                      return 1736;
                                                     }
                                                 }
                                               else
@@ -9187,7 +10067,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0010xxxxx111xxxxxxxxxxxxx
                                                          ld3b.  */
-                                                      return 1620;
+                                                      return 1624;
                                                     }
                                                   else
                                                     {
@@ -9195,7 +10075,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0110xxxxx111xxxxxxxxxxxxx
                                                          ld3h.  */
-                                                      return 1624;
+                                                      return 1628;
                                                     }
                                                 }
                                             }
@@ -9210,7 +10090,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0x000xxxx111xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1881;
+                                                  return 1885;
                                                 }
                                               else
                                                 {
@@ -9220,7 +10100,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00100xxxx111xxxxxxxxxxxxx
                                                          st1b.  */
-                                                      return 1884;
+                                                      return 1888;
                                                     }
                                                   else
                                                     {
@@ -9228,7 +10108,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x01100xxxx111xxxxxxxxxxxxx
                                                          st1h.  */
-                                                      return 1905;
+                                                      return 1909;
                                                     }
                                                 }
                                             }
@@ -9242,7 +10122,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00001xxxx111xxxxxxxxxxxxx
                                                          stnt1b.  */
-                                                      return 1945;
+                                                      return 1949;
                                                     }
                                                   else
                                                     {
@@ -9250,7 +10130,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x01001xxxx111xxxxxxxxxxxxx
                                                          stnt1h.  */
-                                                      return 1949;
+                                                      return 1953;
                                                     }
                                                 }
                                               else
@@ -9261,7 +10141,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00101xxxx111xxxxxxxxxxxxx
                                                          st3b.  */
-                                                      return 1929;
+                                                      return 1933;
                                                     }
                                                   else
                                                     {
@@ -9269,7 +10149,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x01101xxxx111xxxxxxxxxxxxx
                                                          st3h.  */
-                                                      return 1933;
+                                                      return 1937;
                                                     }
                                                 }
                                             }
@@ -9292,7 +10172,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              001001x0xx1xxxxxxx0xxxxxxxx0xxxx
                                              cmphs.  */
-                                          return 1342;
+                                          return 1346;
                                         }
                                       else
                                         {
@@ -9300,7 +10180,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              001001x0xx1xxxxxxx0xxxxxxxx1xxxx
                                              cmphi.  */
-                                          return 1339;
+                                          return 1343;
                                         }
                                     }
                                   else
@@ -9313,7 +10193,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  101001x00x1xxxxxx00xxxxxxxxxxxxx
                                                  ld1rob.  */
-                                              return 2437;
+                                              return 2475;
                                             }
                                           else
                                             {
@@ -9321,7 +10201,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  101001x01x1xxxxxx00xxxxxxxxxxxxx
                                                  ld1roh.  */
-                                              return 2438;
+                                              return 2476;
                                             }
                                         }
                                       else
@@ -9336,7 +10216,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0001xxxxx010xxxxxxxxxxxxx
                                                          ld1b.  */
-                                                      return 1513;
+                                                      return 1517;
                                                     }
                                                   else
                                                     {
@@ -9344,7 +10224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0101xxxxx010xxxxxxxxxxxxx
                                                          ld1h.  */
-                                                      return 1533;
+                                                      return 1537;
                                                     }
                                                 }
                                               else
@@ -9355,7 +10235,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0011xxxxx010xxxxxxxxxxxxx
                                                          ld1b.  */
-                                                      return 1515;
+                                                      return 1519;
                                                     }
                                                   else
                                                     {
@@ -9363,7 +10243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0111xxxxx010xxxxxxxxxxxxx
                                                          ld1h.  */
-                                                      return 1535;
+                                                      return 1539;
                                                     }
                                                 }
                                             }
@@ -9377,7 +10257,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0001xxxxx110xxxxxxxxxxxxx
                                                          ld2b.  */
-                                                      return 1611;
+                                                      return 1615;
                                                     }
                                                   else
                                                     {
@@ -9385,7 +10265,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0101xxxxx110xxxxxxxxxxxxx
                                                          ld2h.  */
-                                                      return 1615;
+                                                      return 1619;
                                                     }
                                                 }
                                               else
@@ -9396,7 +10276,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0011xxxxx110xxxxxxxxxxxxx
                                                          ld4b.  */
-                                                      return 1627;
+                                                      return 1631;
                                                     }
                                                   else
                                                     {
@@ -9404,7 +10284,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0111xxxxx110xxxxxxxxxxxxx
                                                          ld4h.  */
-                                                      return 1631;
+                                                      return 1635;
                                                     }
                                                 }
                                             }
@@ -9427,7 +10307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00x1xxxxx0000x0xxxxxxxxxx
                                                          fmla.  */
-                                                      return 1450;
+                                                      return 1454;
                                                     }
                                                   else
                                                     {
@@ -9437,7 +10317,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x11001x0101xxxxx0000x0xxxxxxxxxx
                                                              fmla.  */
-                                                          return 1451;
+                                                          return 1455;
                                                         }
                                                       else
                                                         {
@@ -9445,7 +10325,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x11001x0111xxxxx0000x0xxxxxxxxxx
                                                              fmla.  */
-                                                          return 1452;
+                                                          return 1456;
                                                         }
                                                     }
                                                 }
@@ -9457,7 +10337,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00x1xxxxx0000x1xxxxxxxxxx
                                                          fmls.  */
-                                                      return 1454;
+                                                      return 1458;
                                                     }
                                                   else
                                                     {
@@ -9467,7 +10347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x11001x0101xxxxx0000x1xxxxxxxxxx
                                                              fmls.  */
-                                                          return 1455;
+                                                          return 1459;
                                                         }
                                                       else
                                                         {
@@ -9475,7 +10355,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x11001x0111xxxxx0000x1xxxxxxxxxx
                                                              fmls.  */
-                                                          return 1456;
+                                                          return 1460;
                                                         }
                                                     }
                                                 }
@@ -9488,7 +10368,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0x01xxxxx0001xxxxxxxxxxxx
                                                      fcmla.  */
-                                                  return 1398;
+                                                  return 1402;
                                                 }
                                               else
                                                 {
@@ -9496,7 +10376,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0x11xxxxx0001xxxxxxxxxxxx
                                                      fcmla.  */
-                                                  return 1399;
+                                                  return 1403;
                                                 }
                                             }
                                         }
@@ -9510,7 +10390,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0001xxxxx010xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1877;
+                                                  return 1881;
                                                 }
                                               else
                                                 {
@@ -9522,7 +10402,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0101xxxxx010xx0xxxxxxxxxx
                                                              fmlalb.  */
-                                                          return 2089;
+                                                          return 2093;
                                                         }
                                                       else
                                                         {
@@ -9530,7 +10410,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0101xxxxx010xx1xxxxxxxxxx
                                                              fmlalt.  */
-                                                          return 2091;
+                                                          return 2095;
                                                         }
                                                     }
                                                   else
@@ -9539,7 +10419,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0101xxxxx010xxxxxxxxxxxxx
                                                          st1h.  */
-                                                      return 1896;
+                                                      return 1900;
                                                     }
                                                 }
                                             }
@@ -9553,7 +10433,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0011xxxxx010xxxxxxxxxxxxx
                                                          bfdot.  */
-                                                      return 2458;
+                                                      return 2496;
                                                     }
                                                   else
                                                     {
@@ -9561,7 +10441,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0011xxxxx010xxxxxxxxxxxxx
                                                          st1b.  */
-                                                      return 1880;
+                                                      return 1884;
                                                     }
                                                 }
                                               else
@@ -9574,7 +10454,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0111xxxxx010xx0xxxxxxxxxx
                                                              bfmlalb.  */
-                                                          return 2465;
+                                                          return 2503;
                                                         }
                                                       else
                                                         {
@@ -9582,7 +10462,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0111xxxxx010xx1xxxxxxxxxx
                                                              bfmlalt.  */
-                                                          return 2464;
+                                                          return 2502;
                                                         }
                                                     }
                                                   else
@@ -9591,7 +10471,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0111xxxxx010xxxxxxxxxxxxx
                                                          st1h.  */
-                                                      return 1901;
+                                                      return 1905;
                                                     }
                                                 }
                                             }
@@ -9609,7 +10489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x0x01xxxxx1x0xx0xxxxxxxxxx
                                                      fmlalb.  */
-                                                  return 2090;
+                                                  return 2094;
                                                 }
                                               else
                                                 {
@@ -9617,7 +10497,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x0x01xxxxx1x0xx1xxxxxxxxxx
                                                      fmlalt.  */
-                                                  return 2092;
+                                                  return 2096;
                                                 }
                                             }
                                           else
@@ -9626,7 +10506,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  111001x0x01xxxxx1x0xxxxxxxxxxxxx
                                                  st1h.  */
-                                              return 1897;
+                                              return 1901;
                                             }
                                         }
                                       else
@@ -9637,7 +10517,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x11001x0011xxxxx1x0xxxxxxxxxxxxx
                                                  bfdot.  */
-                                              return 2457;
+                                              return 2495;
                                             }
                                           else
                                             {
@@ -9649,7 +10529,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0111xxxxx1x0xx0xxxxxxxxxx
                                                          bfmlalb.  */
-                                                      return 2463;
+                                                      return 2501;
                                                     }
                                                   else
                                                     {
@@ -9657,7 +10537,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0111xxxxx1x0xx1xxxxxxxxxx
                                                          bfmlalt.  */
-                                                      return 2462;
+                                                      return 2500;
                                                     }
                                                 }
                                               else
@@ -9666,7 +10546,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0111xxxxx1x0xxxxxxxxxxxxx
                                                      st1h.  */
-                                                  return 1902;
+                                                  return 1906;
                                                 }
                                             }
                                         }
@@ -9685,7 +10565,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              001001x0xx1xxxxxxx1xxxxxxxx0xxxx
                                              cmplo.  */
-                                          return 1346;
+                                          return 1350;
                                         }
                                       else
                                         {
@@ -9693,7 +10573,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              001001x0xx1xxxxxxx1xxxxxxxx1xxxx
                                              cmpls.  */
-                                          return 1348;
+                                          return 1352;
                                         }
                                     }
                                   else
@@ -9708,7 +10588,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x00x1xxxxx001xxxxxxxxxxxxx
                                                      ld1rob.  */
-                                                  return 2441;
+                                                  return 2479;
                                                 }
                                               else
                                                 {
@@ -9716,7 +10596,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x01x1xxxxx001xxxxxxxxxxxxx
                                                      ld1roh.  */
-                                                  return 2442;
+                                                  return 2480;
                                                 }
                                             }
                                           else
@@ -9731,7 +10611,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00010xxxx101xxxxxxxxxxxxx
                                                              ld1b.  */
-                                                          return 1520;
+                                                          return 1524;
                                                         }
                                                       else
                                                         {
@@ -9739,7 +10619,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01010xxxx101xxxxxxxxxxxxx
                                                              ld1h.  */
-                                                          return 1541;
+                                                          return 1545;
                                                         }
                                                     }
                                                   else
@@ -9750,7 +10630,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00110xxxx101xxxxxxxxxxxxx
                                                              ld1b.  */
-                                                          return 1522;
+                                                          return 1526;
                                                         }
                                                       else
                                                         {
@@ -9758,7 +10638,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01110xxxx101xxxxxxxxxxxxx
                                                              ld1h.  */
-                                                          return 1543;
+                                                          return 1547;
                                                         }
                                                     }
                                                 }
@@ -9772,7 +10652,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00011xxxx101xxxxxxxxxxxxx
                                                              ldnf1b.  */
-                                                          return 1712;
+                                                          return 1716;
                                                         }
                                                       else
                                                         {
@@ -9780,7 +10660,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01011xxxx101xxxxxxxxxxxxx
                                                              ldnf1h.  */
-                                                          return 1716;
+                                                          return 1720;
                                                         }
                                                     }
                                                   else
@@ -9791,7 +10671,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x00111xxxx101xxxxxxxxxxxxx
                                                              ldnf1b.  */
-                                                          return 1714;
+                                                          return 1718;
                                                         }
                                                       else
                                                         {
@@ -9799,7 +10679,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              101001x01111xxxx101xxxxxxxxxxxxx
                                                              ldnf1h.  */
-                                                          return 1718;
+                                                          return 1722;
                                                         }
                                                     }
                                                 }
@@ -9817,7 +10697,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0001xxxxx011xxxxxxxxxxxxx
                                                          ldff1b.  */
-                                                      return 1638;
+                                                      return 1642;
                                                     }
                                                   else
                                                     {
@@ -9825,7 +10705,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0101xxxxx011xxxxxxxxxxxxx
                                                          ldff1h.  */
-                                                      return 1657;
+                                                      return 1661;
                                                     }
                                                 }
                                               else
@@ -9836,7 +10716,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0011xxxxx011xxxxxxxxxxxxx
                                                          ldff1b.  */
-                                                      return 1642;
+                                                      return 1646;
                                                     }
                                                   else
                                                     {
@@ -9844,7 +10724,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0111xxxxx011xxxxxxxxxxxxx
                                                          ldff1h.  */
-                                                      return 1661;
+                                                      return 1665;
                                                     }
                                                 }
                                             }
@@ -9858,7 +10738,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0001xxxxx111xxxxxxxxxxxxx
                                                          ld2b.  */
-                                                      return 1612;
+                                                      return 1616;
                                                     }
                                                   else
                                                     {
@@ -9866,7 +10746,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0101xxxxx111xxxxxxxxxxxxx
                                                          ld2h.  */
-                                                      return 1616;
+                                                      return 1620;
                                                     }
                                                 }
                                               else
@@ -9877,7 +10757,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0011xxxxx111xxxxxxxxxxxxx
                                                          ld4b.  */
-                                                      return 1628;
+                                                      return 1632;
                                                     }
                                                   else
                                                     {
@@ -9885,7 +10765,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x0111xxxxx111xxxxxxxxxxxxx
                                                          ld4h.  */
-                                                      return 1632;
+                                                      return 1636;
                                                     }
                                                 }
                                             }
@@ -9904,7 +10784,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x11001x00x1xxxxx001xxxxxxxxxxxxx
                                                  fmul.  */
-                                              return 1461;
+                                              return 1465;
                                             }
                                           else
                                             {
@@ -9914,7 +10794,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0101xxxxx001xxxxxxxxxxxxx
                                                      fmul.  */
-                                                  return 1462;
+                                                  return 1466;
                                                 }
                                               else
                                                 {
@@ -9922,7 +10802,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0111xxxxx001xxxxxxxxxxxxx
                                                      fmul.  */
-                                                  return 1463;
+                                                  return 1467;
                                                 }
                                             }
                                         }
@@ -9938,7 +10818,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0x01xxxxx101xx0xxxxxxxxxx
                                                          fmlslb.  */
-                                                      return 2094;
+                                                      return 2098;
                                                     }
                                                   else
                                                     {
@@ -9946,7 +10826,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0x01xxxxx101xx1xxxxxxxxxx
                                                          fmlslt.  */
-                                                      return 2096;
+                                                      return 2100;
                                                     }
                                                 }
                                               else
@@ -9955,7 +10835,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x0x01xxxxx101xxxxxxxxxxxxx
                                                      st1h.  */
-                                                  return 1898;
+                                                  return 1902;
                                                 }
                                             }
                                           else
@@ -9966,7 +10846,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0011xxxxx101xxxxxxxxxxxxx
                                                      st1b.  */
-                                                  return 1885;
+                                                  return 1889;
                                                 }
                                               else
                                                 {
@@ -9974,7 +10854,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0111xxxxx101xxxxxxxxxxxxx
                                                      st1h.  */
-                                                  return 1906;
+                                                  return 1910;
                                                 }
                                             }
                                         }
@@ -9991,7 +10871,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0001xxxxx011xxxxxxxxxxxxx
                                                      st2b.  */
-                                                  return 1920;
+                                                  return 1924;
                                                 }
                                               else
                                                 {
@@ -10003,7 +10883,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0101xxxxx011xx0xxxxxxxxxx
                                                              fmlslb.  */
-                                                          return 2093;
+                                                          return 2097;
                                                         }
                                                       else
                                                         {
@@ -10011,7 +10891,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x0101xxxxx011xx1xxxxxxxxxx
                                                              fmlslt.  */
-                                                          return 2095;
+                                                          return 2099;
                                                         }
                                                     }
                                                   else
@@ -10020,7 +10900,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x0101xxxxx011xxxxxxxxxxxxx
                                                          st2h.  */
-                                                      return 1924;
+                                                      return 1928;
                                                     }
                                                 }
                                             }
@@ -10032,7 +10912,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0011xxxxx011xxxxxxxxxxxxx
                                                      st4b.  */
-                                                  return 1936;
+                                                  return 1940;
                                                 }
                                               else
                                                 {
@@ -10040,7 +10920,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x11001x0111xxxxx011xxxxxxxxxxxxx
                                                      st4h.  */
-                                                  return 1940;
+                                                  return 1944;
                                                 }
                                             }
                                         }
@@ -10056,7 +10936,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00010xxxx111xxxxxxxxxxxxx
                                                          st1b.  */
-                                                      return 1882;
+                                                      return 1886;
                                                     }
                                                   else
                                                     {
@@ -10064,7 +10944,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x11001x00011xxxx111xxxxxxxxxxxxx
                                                          st2b.  */
-                                                      return 1921;
+                                                      return 1925;
                                                     }
                                                 }
                                               else
@@ -10075,7 +10955,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0101xxxxx111xxxxxxxxxxxxx
                                                          fmmla.  */
-                                                      return 2435;
+                                                      return 2473;
                                                     }
                                                   else
                                                     {
@@ -10085,7 +10965,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x01010xxxx111xxxxxxxxxxxxx
                                                              st1h.  */
-                                                          return 1903;
+                                                          return 1907;
                                                         }
                                                       else
                                                         {
@@ -10093,7 +10973,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x01011xxxx111xxxxxxxxxxxxx
                                                              st2h.  */
-                                                          return 1925;
+                                                          return 1929;
                                                         }
                                                     }
                                                 }
@@ -10108,7 +10988,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0011xxxxx111xxxxxxxxxxxxx
                                                          bfmmla.  */
-                                                      return 2459;
+                                                      return 2497;
                                                     }
                                                   else
                                                     {
@@ -10118,7 +10998,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x00110xxxx111xxxxxxxxxxxxx
                                                              st1b.  */
-                                                          return 1886;
+                                                          return 1890;
                                                         }
                                                       else
                                                         {
@@ -10126,7 +11006,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x00111xxxx111xxxxxxxxxxxxx
                                                              st4b.  */
-                                                          return 1937;
+                                                          return 1941;
                                                         }
                                                     }
                                                 }
@@ -10138,7 +11018,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x0111xxxxx111xxxxxxxxxxxxx
                                                          fmmla.  */
-                                                      return 2436;
+                                                      return 2474;
                                                     }
                                                   else
                                                     {
@@ -10148,7 +11028,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x01110xxxx111xxxxxxxxxxxxx
                                                              st1h.  */
-                                                          return 1907;
+                                                          return 1911;
                                                         }
                                                       else
                                                         {
@@ -10156,7 +11036,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x01111xxxx111xxxxxxxxxxxxx
                                                              st4h.  */
-                                                          return 1941;
+                                                          return 1945;
                                                         }
                                                     }
                                                 }
@@ -10188,7 +11068,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x10000xxxxxxxxxxxxxxxxxxxx
                                                  orr.  */
-                                              return 1766;
+                                              return 1770;
                                             }
                                           else
                                             {
@@ -10196,7 +11076,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x11000xxxxxxxxxxxxxxxxxxxx
                                                  and.  */
-                                              return 1294;
+                                              return 1298;
                                             }
                                         }
                                       else
@@ -10207,7 +11087,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x10100xxxxxxxxxxxxxxxxxxxx
                                                  eor.  */
-                                              return 1381;
+                                              return 1385;
                                             }
                                           else
                                             {
@@ -10215,7 +11095,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  000001x11100xxxxxxxxxxxxxxxxxxxx
                                                  dupm.  */
-                                              return 1379;
+                                              return 1383;
                                             }
                                         }
                                     }
@@ -10227,7 +11107,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              000001x1xx01xxxx0xxxxxxxxxxxxxxx
                                              cpy.  */
-                                          return 1364;
+                                          return 1368;
                                         }
                                       else
                                         {
@@ -10235,7 +11115,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              000001x1xx01xxxx1xxxxxxxxxxxxxxx
                                              fcpy.  */
-                                          return 1411;
+                                          return 1415;
                                         }
                                     }
                                 }
@@ -10255,7 +11135,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1001xxxxx000xxxxxxxxxxxxx
                                                          ext.  */
-                                                      return 1386;
+                                                      return 1390;
                                                     }
                                                   else
                                                     {
@@ -10267,7 +11147,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1101xxxxx000x00xxxxxxxxxx
                                                                  zip1.  */
-                                                              return 2445;
+                                                              return 2483;
                                                             }
                                                           else
                                                             {
@@ -10277,7 +11157,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000010xxxxxxxxxx
                                                                      uzp1.  */
-                                                                  return 2447;
+                                                                  return 2485;
                                                                 }
                                                               else
                                                                 {
@@ -10285,7 +11165,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000110xxxxxxxxxx
                                                                      trn1.  */
-                                                                  return 2449;
+                                                                  return 2487;
                                                                 }
                                                             }
                                                         }
@@ -10297,7 +11177,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1101xxxxx000x01xxxxxxxxxx
                                                                  zip2.  */
-                                                              return 2446;
+                                                              return 2484;
                                                             }
                                                           else
                                                             {
@@ -10307,7 +11187,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000011xxxxxxxxxx
                                                                      uzp2.  */
-                                                                  return 2448;
+                                                                  return 2486;
                                                                 }
                                                               else
                                                                 {
@@ -10315,7 +11195,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1101xxxxx000111xxxxxxxxxx
                                                                      trn2.  */
-                                                                  return 2450;
+                                                                  return 2488;
                                                                 }
                                                             }
                                                         }
@@ -10327,7 +11207,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      000001x1x11xxxxx000xxxxxxxxxxxxx
                                                      ext.  */
-                                                  return 2076;
+                                                  return 2080;
                                                 }
                                             }
                                           else
@@ -10344,7 +11224,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x0000100xxxxxxxxxxxxx
                                                                  cpy.  */
-                                                              return 1362;
+                                                              return 1366;
                                                             }
                                                           else
                                                             {
@@ -10352,7 +11232,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x1000100xxxxxxxxxxxxx
                                                                  clasta.  */
-                                                              return 1320;
+                                                              return 1324;
                                                             }
                                                         }
                                                       else
@@ -10363,7 +11243,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x0100100xxxxxxxxxxxxx
                                                                  revb.  */
-                                                              return 1814;
+                                                              return 1818;
                                                             }
                                                           else
                                                             {
@@ -10371,7 +11251,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x1100100xxxxxxxxxxxxx
                                                                  splice.  */
-                                                              return 1841;
+                                                              return 1845;
                                                             }
                                                         }
                                                     }
@@ -10385,7 +11265,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x0010100xxxxxxxxxxxxx
                                                                  lasta.  */
-                                                              return 1508;
+                                                              return 1512;
                                                             }
                                                           else
                                                             {
@@ -10393,16 +11273,27 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x1010100xxxxxxxxxxxxx
                                                                  clasta.  */
-                                                              return 1321;
+                                                              return 1325;
                                                             }
                                                         }
                                                       else
                                                         {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             000001x1xx1xx110100xxxxxxxxxxxxx
-                                                             revw.  */
-                                                          return 1816;
+                                                          if (((word >> 19) & 0x1) == 0)
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 000001x1xx1x0110100xxxxxxxxxxxxx
+                                                                 revw.  */
+                                                              return 1820;
+                                                            }
+                                                          else
+                                                            {
+                                                              /* 33222222222211111111110000000000
+                                                                 10987654321098765432109876543210
+                                                                 000001x1xx1x1110100xxxxxxxxxxxxx
+                                                                 revd.  */
+                                                              return 2410;
+                                                            }
                                                         }
                                                     }
                                                 }
@@ -10418,7 +11309,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x0001100xxxxxxxxxxxxx
                                                                  compact.  */
-                                                              return 1361;
+                                                              return 1365;
                                                             }
                                                           else
                                                             {
@@ -10426,7 +11317,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x1001100xxxxxxxxxxxxx
                                                                  clastb.  */
-                                                              return 1323;
+                                                              return 1327;
                                                             }
                                                         }
                                                       else
@@ -10437,7 +11328,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x0101100xxxxxxxxxxxxx
                                                                  revh.  */
-                                                              return 1815;
+                                                              return 1819;
                                                             }
                                                           else
                                                             {
@@ -10445,7 +11336,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x1101100xxxxxxxxxxxxx
                                                                  splice.  */
-                                                              return 2171;
+                                                              return 2175;
                                                             }
                                                         }
                                                     }
@@ -10459,7 +11350,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x0011100xxxxxxxxxxxxx
                                                                  lastb.  */
-                                                              return 1510;
+                                                              return 1514;
                                                             }
                                                           else
                                                             {
@@ -10467,7 +11358,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx1x1011100xxxxxxxxxxxxx
                                                                  clastb.  */
-                                                              return 1324;
+                                                              return 1328;
                                                             }
                                                         }
                                                       else
@@ -10476,7 +11367,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xx111100xxxxxxxxxxxxx
                                                              rbit.  */
-                                                          return 1807;
+                                                          return 1811;
                                                         }
                                                     }
                                                 }
@@ -10496,7 +11387,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx001000xxxxxxxxxx
                                                              dup.  */
-                                                          return 1377;
+                                                          return 1381;
                                                         }
                                                       else
                                                         {
@@ -10504,7 +11395,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx001100xxxxxxxxxx
                                                              tbl.  */
-                                                          return 1964;
+                                                          return 1968;
                                                         }
                                                     }
                                                   else
@@ -10515,7 +11406,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx001010xxxxxxxxxx
                                                              tbl.  */
-                                                          return 2260;
+                                                          return 2264;
                                                         }
                                                       else
                                                         {
@@ -10533,7 +11424,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  000001x1xx100000001110xxxxxxxxxx
                                                                                  dup.  */
-                                                                              return 1376;
+                                                                              return 1380;
                                                                             }
                                                                           else
                                                                             {
@@ -10541,7 +11432,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                                  10987654321098765432109876543210
                                                                                  000001x1xx110000001110xxxxxxxxxx
                                                                                  sunpklo.  */
-                                                                              return 1960;
+                                                                              return 1964;
                                                                             }
                                                                         }
                                                                       else
@@ -10550,7 +11441,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              000001x1xx1x1000001110xxxxxxxxxx
                                                                              rev.  */
-                                                                          return 1813;
+                                                                          return 1817;
                                                                         }
                                                                     }
                                                                   else
@@ -10561,7 +11452,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              000001x1xx10x100001110xxxxxxxxxx
                                                                              insr.  */
-                                                                          return 1505;
+                                                                          return 1509;
                                                                         }
                                                                       else
                                                                         {
@@ -10569,7 +11460,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              000001x1xx11x100001110xxxxxxxxxx
                                                                              insr.  */
-                                                                          return 1506;
+                                                                          return 1510;
                                                                         }
                                                                     }
                                                                 }
@@ -10579,7 +11470,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1xx1xxx10001110xxxxxxxxxx
                                                                      uunpklo.  */
-                                                                  return 2023;
+                                                                  return 2027;
                                                                 }
                                                             }
                                                           else
@@ -10590,7 +11481,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1xx1xxx01001110xxxxxxxxxx
                                                                      sunpkhi.  */
-                                                                  return 1959;
+                                                                  return 1963;
                                                                 }
                                                               else
                                                                 {
@@ -10598,7 +11489,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1xx1xxx11001110xxxxxxxxxx
                                                                      uunpkhi.  */
-                                                                  return 2022;
+                                                                  return 2026;
                                                                 }
                                                             }
                                                         }
@@ -10610,7 +11501,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      000001x1xx1xxxxx001xx1xxxxxxxxxx
                                                      tbx.  */
-                                                  return 2261;
+                                                  return 2265;
                                                 }
                                             }
                                           else
@@ -10625,7 +11516,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx100xx0101xxxxxxxxxxxxx
                                                              lasta.  */
-                                                          return 1507;
+                                                          return 1511;
                                                         }
                                                       else
                                                         {
@@ -10633,7 +11524,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx110xx0101xxxxxxxxxxxxx
                                                              clasta.  */
-                                                          return 1322;
+                                                          return 1326;
                                                         }
                                                     }
                                                   else
@@ -10642,7 +11533,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx1x1xx0101xxxxxxxxxxxxx
                                                          cpy.  */
-                                                      return 1363;
+                                                      return 1367;
                                                     }
                                                 }
                                               else
@@ -10653,7 +11544,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx10xxx1101xxxxxxxxxxxxx
                                                          lastb.  */
-                                                      return 1509;
+                                                      return 1513;
                                                     }
                                                   else
                                                     {
@@ -10661,7 +11552,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx11xxx1101xxxxxxxxxxxxx
                                                          clastb.  */
-                                                      return 1325;
+                                                      return 1329;
                                                     }
                                                 }
                                             }
@@ -10685,7 +11576,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  000001x1xx10xxxx010000xxxxxxxxxx
                                                                  zip1.  */
-                                                              return 2040;
+                                                              return 2044;
                                                             }
                                                           else
                                                             {
@@ -10697,7 +11588,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x1xx11x0x0010000xxxxxxxxxx
                                                                          punpklo.  */
-                                                                      return 1806;
+                                                                      return 1810;
                                                                     }
                                                                   else
                                                                     {
@@ -10705,7 +11596,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000001x1xx11x1x0010000xxxxxxxxxx
                                                                          rev.  */
-                                                                      return 1812;
+                                                                      return 1816;
                                                                     }
                                                                 }
                                                               else
@@ -10714,7 +11605,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      000001x1xx11xxx1010000xxxxxxxxxx
                                                                      punpkhi.  */
-                                                                  return 1805;
+                                                                  return 1809;
                                                                 }
                                                             }
                                                         }
@@ -10724,7 +11615,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx011000xxxxxxxxxx
                                                              zip1.  */
-                                                          return 2041;
+                                                          return 2045;
                                                         }
                                                     }
                                                   else
@@ -10735,7 +11626,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx010100xxxxxxxxxx
                                                              trn1.  */
-                                                          return 1965;
+                                                          return 1969;
                                                         }
                                                       else
                                                         {
@@ -10743,7 +11634,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx011100xxxxxxxxxx
                                                              trn1.  */
-                                                          return 1966;
+                                                          return 1970;
                                                         }
                                                     }
                                                 }
@@ -10755,7 +11646,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx1xxxxx010x10xxxxxxxxxx
                                                          uzp1.  */
-                                                      return 2027;
+                                                      return 2031;
                                                     }
                                                   else
                                                     {
@@ -10763,7 +11654,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx1xxxxx011x10xxxxxxxxxx
                                                          uzp1.  */
-                                                      return 2028;
+                                                      return 2032;
                                                     }
                                                 }
                                             }
@@ -10779,7 +11670,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx010001xxxxxxxxxx
                                                              zip2.  */
-                                                          return 2042;
+                                                          return 2046;
                                                         }
                                                       else
                                                         {
@@ -10787,7 +11678,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx011001xxxxxxxxxx
                                                              zip2.  */
-                                                          return 2043;
+                                                          return 2047;
                                                         }
                                                     }
                                                   else
@@ -10798,7 +11689,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx010101xxxxxxxxxx
                                                              trn2.  */
-                                                          return 1967;
+                                                          return 1971;
                                                         }
                                                       else
                                                         {
@@ -10806,7 +11697,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              000001x1xx1xxxxx011101xxxxxxxxxx
                                                              trn2.  */
-                                                          return 1968;
+                                                          return 1972;
                                                         }
                                                     }
                                                 }
@@ -10818,7 +11709,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx1xxxxx010x11xxxxxxxxxx
                                                          uzp2.  */
-                                                      return 2029;
+                                                      return 2033;
                                                     }
                                                   else
                                                     {
@@ -10826,7 +11717,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          000001x1xx1xxxxx011x11xxxxxxxxxx
                                                          uzp2.  */
-                                                      return 2030;
+                                                      return 2034;
                                                     }
                                                 }
                                             }
@@ -10837,7 +11728,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              000001x1xx1xxxxx11xxxxxxxxxxxxxx
                                              sel.  */
-                                          return 1831;
+                                          return 1835;
                                         }
                                     }
                                 }
@@ -10856,7 +11747,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  100001x1x0xxxxxx000xxxxxxxxxxxxx
                                                  ldr.  */
-                                              return 1735;
+                                              return 1739;
                                             }
                                           else
                                             {
@@ -10864,7 +11755,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  100001x1x1xxxxxx000xxxxxxxxxxxxx
                                                  prfb.  */
-                                              return 1779;
+                                              return 1783;
                                             }
                                         }
                                       else
@@ -10875,7 +11766,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  100001x10xxxxxxx100xxxxxxxxxxxxx
                                                  ld1rsh.  */
-                                              return 1564;
+                                              return 1568;
                                             }
                                           else
                                             {
@@ -10883,7 +11774,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  100001x11xxxxxxx100xxxxxxxxxxxxx
                                                  ld1rsb.  */
-                                              return 1561;
+                                              return 1565;
                                             }
                                         }
                                     }
@@ -10899,7 +11790,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x10x0xxxxx010xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1599;
+                                                  return 1603;
                                                 }
                                               else
                                                 {
@@ -10907,7 +11798,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x10x1xxxxx010xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1600;
+                                                  return 1604;
                                                 }
                                             }
                                           else
@@ -10918,7 +11809,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x110xxxxxx010xxxxxxxxxxxxx
                                                      ldr.  */
-                                                  return 1736;
+                                                  return 1740;
                                                 }
                                               else
                                                 {
@@ -10926,7 +11817,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x111xxxxxx010xxxxxxxxxxxxx
                                                      prfw.  */
-                                                  return 1800;
+                                                  return 1804;
                                                 }
                                             }
                                         }
@@ -10942,7 +11833,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x1000xxxxx110xxxxxxxxxxxxx
                                                          prfw.  */
-                                                      return 1796;
+                                                      return 1800;
                                                     }
                                                   else
                                                     {
@@ -10950,7 +11841,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x1100xxxxx110xxxxxxxxxxxxx
                                                          prfd.  */
-                                                      return 1782;
+                                                      return 1786;
                                                     }
                                                 }
                                               else
@@ -10959,7 +11850,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x1x01xxxxx110xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1607;
+                                                  return 1611;
                                                 }
                                             }
                                           else
@@ -10970,7 +11861,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x101xxxxxx110xxxxxxxxxxxxx
                                                      ld1rw.  */
-                                                  return 1567;
+                                                  return 1571;
                                                 }
                                               else
                                                 {
@@ -10978,7 +11869,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x111xxxxxx110xxxxxxxxxxxxx
                                                      ld1rsb.  */
-                                                  return 1563;
+                                                  return 1567;
                                                 }
                                             }
                                         }
@@ -10994,7 +11885,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              100001x1xxxxxxxx001xxxxxxxxxxxxx
                                              prfh.  */
-                                          return 1793;
+                                          return 1797;
                                         }
                                       else
                                         {
@@ -11004,7 +11895,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  100001x1x0xxxxxx101xxxxxxxxxxxxx
                                                  ldnt1w.  */
-                                              return 2107;
+                                              return 2111;
                                             }
                                           else
                                             {
@@ -11014,7 +11905,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x101xxxxxx101xxxxxxxxxxxxx
                                                      ld1rsh.  */
-                                                  return 1565;
+                                                  return 1569;
                                                 }
                                               else
                                                 {
@@ -11022,7 +11913,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x111xxxxxx101xxxxxxxxxxxxx
                                                      ld1rsb.  */
-                                                  return 1562;
+                                                  return 1566;
                                                 }
                                             }
                                         }
@@ -11039,7 +11930,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x10x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1w.  */
-                                                  return 1699;
+                                                  return 1703;
                                                 }
                                               else
                                                 {
@@ -11047,7 +11938,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x10x1xxxxx011xxxxxxxxxxxxx
                                                      ldff1w.  */
-                                                  return 1700;
+                                                  return 1704;
                                                 }
                                             }
                                           else
@@ -11056,7 +11947,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  100001x11xxxxxxx011xxxxxxxxxxxxx
                                                  prfd.  */
-                                              return 1786;
+                                              return 1790;
                                             }
                                         }
                                       else
@@ -11071,7 +11962,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x1000xxxxx111xxxxxxxxxxxxx
                                                          prfw.  */
-                                                      return 1799;
+                                                      return 1803;
                                                     }
                                                   else
                                                     {
@@ -11079,7 +11970,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          100001x1100xxxxx111xxxxxxxxxxxxx
                                                          prfd.  */
-                                                      return 1785;
+                                                      return 1789;
                                                     }
                                                 }
                                               else
@@ -11088,7 +11979,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x1x01xxxxx111xxxxxxxxxxxxx
                                                      ldff1w.  */
-                                                  return 1709;
+                                                  return 1713;
                                                 }
                                             }
                                           else
@@ -11099,7 +11990,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x101xxxxxx111xxxxxxxxxxxxx
                                                      ld1rw.  */
-                                                  return 1568;
+                                                  return 1572;
                                                 }
                                               else
                                                 {
@@ -11107,7 +11998,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      100001x111xxxxxx111xxxxxxxxxxxxx
                                                      ld1rd.  */
-                                                  return 1549;
+                                                  return 1553;
                                                 }
                                             }
                                         }
@@ -11137,7 +12028,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000000xxxxxxxxxx
                                                              saddlb.  */
-                                                          return 2137;
+                                                          return 2141;
                                                         }
                                                       else
                                                         {
@@ -11145,7 +12036,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000100xxxxxxxxxx
                                                              ssublb.  */
-                                                          return 2244;
+                                                          return 2248;
                                                         }
                                                     }
                                                   else
@@ -11156,7 +12047,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000010xxxxxxxxxx
                                                              uaddlb.  */
-                                                          return 2268;
+                                                          return 2272;
                                                         }
                                                       else
                                                         {
@@ -11164,7 +12055,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000110xxxxxxxxxx
                                                              usublb.  */
-                                                          return 2321;
+                                                          return 2325;
                                                         }
                                                     }
                                                 }
@@ -11178,7 +12069,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000001xxxxxxxxxx
                                                              saddlt.  */
-                                                          return 2139;
+                                                          return 2143;
                                                         }
                                                       else
                                                         {
@@ -11186,7 +12077,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000101xxxxxxxxxx
                                                              ssublt.  */
-                                                          return 2246;
+                                                          return 2250;
                                                         }
                                                     }
                                                   else
@@ -11197,7 +12088,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000011xxxxxxxxxx
                                                              uaddlt.  */
-                                                          return 2269;
+                                                          return 2273;
                                                         }
                                                       else
                                                         {
@@ -11205,7 +12096,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx000111xxxxxxxxxx
                                                              usublt.  */
-                                                          return 2322;
+                                                          return 2326;
                                                         }
                                                     }
                                                 }
@@ -11216,7 +12107,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  110001x1xx0xxxxx000xxxxxxxxxxxxx
                                                  ld1sw.  */
-                                              return 1593;
+                                              return 1597;
                                             }
                                         }
                                       else
@@ -11233,7 +12124,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000000xxxxxxxxxx
                                                              sqshrunb.  */
-                                                          return 2227;
+                                                          return 2231;
                                                         }
                                                       else
                                                         {
@@ -11241,7 +12132,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000100xxxxxxxxxx
                                                              shrnb.  */
-                                                          return 2145;
+                                                          return 2149;
                                                         }
                                                     }
                                                   else
@@ -11252,7 +12143,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000010xxxxxxxxxx
                                                              sqrshrunb.  */
-                                                          return 2219;
+                                                          return 2223;
                                                         }
                                                       else
                                                         {
@@ -11260,7 +12151,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000110xxxxxxxxxx
                                                              rshrnb.  */
-                                                          return 2127;
+                                                          return 2131;
                                                         }
                                                     }
                                                 }
@@ -11274,7 +12165,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000001xxxxxxxxxx
                                                              sqshrunt.  */
-                                                          return 2228;
+                                                          return 2232;
                                                         }
                                                       else
                                                         {
@@ -11282,7 +12173,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000101xxxxxxxxxx
                                                              shrnt.  */
-                                                          return 2146;
+                                                          return 2150;
                                                         }
                                                     }
                                                   else
@@ -11293,7 +12184,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000011xxxxxxxxxx
                                                              sqrshrunt.  */
-                                                          return 2220;
+                                                          return 2224;
                                                         }
                                                       else
                                                         {
@@ -11301,7 +12192,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx000111xxxxxxxxxx
                                                              rshrnt.  */
-                                                          return 2128;
+                                                          return 2132;
                                                         }
                                                     }
                                                 }
@@ -11312,7 +12203,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  110001x1xx1xxxxx000xxxxxxxxxxxxx
                                                  ld1sw.  */
-                                              return 1594;
+                                              return 1598;
                                             }
                                         }
                                     }
@@ -11332,7 +12223,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx100000xxxxxxxxxx
                                                              saddlbt.  */
-                                                          return 2138;
+                                                          return 2142;
                                                         }
                                                       else
                                                         {
@@ -11340,7 +12231,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx100100xxxxxxxxxx
                                                              eorbt.  */
-                                                          return 2074;
+                                                          return 2078;
                                                         }
                                                     }
                                                   else
@@ -11351,7 +12242,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx100010xxxxxxxxxx
                                                              ssublbt.  */
-                                                          return 2245;
+                                                          return 2249;
                                                         }
                                                       else
                                                         {
@@ -11363,7 +12254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1000xxxxx100110xxxxxxxxxx
                                                                      smmla.  */
-                                                                  return 2429;
+                                                                  return 2467;
                                                                 }
                                                               else
                                                                 {
@@ -11371,7 +12262,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1100xxxxx100110xxxxxxxxxx
                                                                      usmmla.  */
-                                                                  return 2431;
+                                                                  return 2469;
                                                                 }
                                                             }
                                                           else
@@ -11380,7 +12271,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1x10xxxxx100110xxxxxxxxxx
                                                                  ummla.  */
-                                                              return 2430;
+                                                              return 2468;
                                                             }
                                                         }
                                                     }
@@ -11393,7 +12284,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx100x01xxxxxxxxxx
                                                          eortb.  */
-                                                      return 2075;
+                                                      return 2079;
                                                     }
                                                   else
                                                     {
@@ -11401,7 +12292,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx100x11xxxxxxxxxx
                                                          ssubltb.  */
-                                                      return 2247;
+                                                      return 2251;
                                                     }
                                                 }
                                             }
@@ -11413,7 +12304,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x1x00xxxxx100xxxxxxxxxxxxx
                                                      ldnt1sw.  */
-                                                  return 2106;
+                                                  return 2110;
                                                 }
                                               else
                                                 {
@@ -11421,7 +12312,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x1x10xxxxx100xxxxxxxxxxxxx
                                                      ld1sw.  */
-                                                  return 1595;
+                                                  return 1599;
                                                 }
                                             }
                                         }
@@ -11435,7 +12326,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x1xx1xxxxx100xxxxxxxx0xxxx
                                                      match.  */
-                                                  return 2109;
+                                                  return 2113;
                                                 }
                                               else
                                                 {
@@ -11443,7 +12334,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x1xx1xxxxx100xxxxxxxx1xxxx
                                                      nmatch.  */
-                                                  return 2121;
+                                                  return 2125;
                                                 }
                                             }
                                           else
@@ -11454,7 +12345,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x1x01xxxxx100xxxxxxxxxxxxx
                                                      ld1sw.  */
-                                                  return 1598;
+                                                  return 1602;
                                                 }
                                               else
                                                 {
@@ -11462,7 +12353,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x1x11xxxxx100xxxxxxxxxxxxx
                                                      ld1sw.  */
-                                                  return 1596;
+                                                  return 1600;
                                                 }
                                             }
                                         }
@@ -11486,7 +12377,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010000xxxxxxxxxx
                                                              saddwb.  */
-                                                          return 2140;
+                                                          return 2144;
                                                         }
                                                       else
                                                         {
@@ -11494,7 +12385,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010100xxxxxxxxxx
                                                              ssubwb.  */
-                                                          return 2248;
+                                                          return 2252;
                                                         }
                                                     }
                                                   else
@@ -11505,7 +12396,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010010xxxxxxxxxx
                                                              uaddwb.  */
-                                                          return 2270;
+                                                          return 2274;
                                                         }
                                                       else
                                                         {
@@ -11513,7 +12404,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010110xxxxxxxxxx
                                                              usubwb.  */
-                                                          return 2323;
+                                                          return 2327;
                                                         }
                                                     }
                                                 }
@@ -11527,7 +12418,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010001xxxxxxxxxx
                                                              saddwt.  */
-                                                          return 2141;
+                                                          return 2145;
                                                         }
                                                       else
                                                         {
@@ -11535,7 +12426,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010101xxxxxxxxxx
                                                              ssubwt.  */
-                                                          return 2249;
+                                                          return 2253;
                                                         }
                                                     }
                                                   else
@@ -11546,7 +12437,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010011xxxxxxxxxx
                                                              uaddwt.  */
-                                                          return 2271;
+                                                          return 2275;
                                                         }
                                                       else
                                                         {
@@ -11554,7 +12445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx010111xxxxxxxxxx
                                                              usubwt.  */
-                                                          return 2324;
+                                                          return 2328;
                                                         }
                                                     }
                                                 }
@@ -11567,7 +12458,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x10x0xxxxx010xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1603;
+                                                  return 1607;
                                                 }
                                               else
                                                 {
@@ -11575,7 +12466,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x11x0xxxxx010xxxxxxxxxxxxx
                                                      ld1d.  */
-                                                  return 1525;
+                                                  return 1529;
                                                 }
                                             }
                                         }
@@ -11595,7 +12486,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x1xxxxx010000xxxxxxxxxx
                                                                  sqxtnb.  */
-                                                              return 2231;
+                                                              return 2235;
                                                             }
                                                           else
                                                             {
@@ -11603,7 +12494,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x1xxxxx010100xxxxxxxxxx
                                                                  sqxtunb.  */
-                                                              return 2233;
+                                                              return 2237;
                                                             }
                                                         }
                                                       else
@@ -11612,7 +12503,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x10x1xxxxx010x10xxxxxxxxxx
                                                              uqxtnb.  */
-                                                          return 2308;
+                                                          return 2312;
                                                         }
                                                     }
                                                   else
@@ -11625,7 +12516,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x1xxxxx010001xxxxxxxxxx
                                                                  sqxtnt.  */
-                                                              return 2232;
+                                                              return 2236;
                                                             }
                                                           else
                                                             {
@@ -11633,7 +12524,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x1xxxxx010101xxxxxxxxxx
                                                                  sqxtunt.  */
-                                                              return 2234;
+                                                              return 2238;
                                                             }
                                                         }
                                                       else
@@ -11642,7 +12533,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x10x1xxxxx010x11xxxxxxxxxx
                                                              uqxtnt.  */
-                                                          return 2309;
+                                                          return 2313;
                                                         }
                                                     }
                                                 }
@@ -11652,7 +12543,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x10x1xxxxx010xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1604;
+                                                  return 1608;
                                                 }
                                             }
                                           else
@@ -11661,7 +12552,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x10001x11x1xxxxx010xxxxxxxxxxxxx
                                                  ld1d.  */
-                                              return 1526;
+                                              return 1530;
                                             }
                                         }
                                     }
@@ -11681,7 +12572,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx110000xxxxxxxxxx
                                                              sabalb.  */
-                                                          return 2132;
+                                                          return 2136;
                                                         }
                                                       else
                                                         {
@@ -11691,7 +12582,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x0xxxxx110100xxxxxxxxxx
                                                                  adclb.  */
-                                                              return 2057;
+                                                              return 2061;
                                                             }
                                                           else
                                                             {
@@ -11699,7 +12590,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x11x0xxxxx110100xxxxxxxxxx
                                                                  sbclb.  */
-                                                              return 2142;
+                                                              return 2146;
                                                             }
                                                         }
                                                     }
@@ -11711,7 +12602,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx110001xxxxxxxxxx
                                                              sabalt.  */
-                                                          return 2133;
+                                                          return 2137;
                                                         }
                                                       else
                                                         {
@@ -11721,7 +12612,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x10x0xxxxx110101xxxxxxxxxx
                                                                  adclt.  */
-                                                              return 2058;
+                                                              return 2062;
                                                             }
                                                           else
                                                             {
@@ -11729,7 +12620,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x11x0xxxxx110101xxxxxxxxxx
                                                                  sbclt.  */
-                                                              return 2143;
+                                                              return 2147;
                                                             }
                                                         }
                                                     }
@@ -11744,7 +12635,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx110010xxxxxxxxxx
                                                              uabalb.  */
-                                                          return 2263;
+                                                          return 2267;
                                                         }
                                                       else
                                                         {
@@ -11752,7 +12643,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx110011xxxxxxxxxx
                                                              uabalt.  */
-                                                          return 2264;
+                                                          return 2268;
                                                         }
                                                     }
                                                   else
@@ -11763,7 +12654,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxx011011xxxxxxxxxxx
                                                              cadd.  */
-                                                          return 2066;
+                                                          return 2070;
                                                         }
                                                       else
                                                         {
@@ -11771,7 +12662,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxx111011xxxxxxxxxxx
                                                              sqcadd.  */
-                                                          return 2174;
+                                                          return 2178;
                                                         }
                                                     }
                                                 }
@@ -11786,7 +12677,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1000xxxxx110xxxxxxxxxxxxx
                                                          ldnt1w.  */
-                                                      return 2108;
+                                                      return 2112;
                                                     }
                                                   else
                                                     {
@@ -11794,7 +12685,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1100xxxxx110xxxxxxxxxxxxx
                                                          ldnt1d.  */
-                                                      return 2101;
+                                                      return 2105;
                                                     }
                                                 }
                                               else
@@ -11805,7 +12696,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1010xxxxx110xxxxxxxxxxxxx
                                                          ld1w.  */
-                                                      return 1605;
+                                                      return 1609;
                                                     }
                                                   else
                                                     {
@@ -11813,7 +12704,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1110xxxxx110xxxxxxxxxxxxx
                                                          ld1d.  */
-                                                      return 1527;
+                                                      return 1531;
                                                     }
                                                 }
                                             }
@@ -11828,7 +12719,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x1001xxxxx110xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1610;
+                                                  return 1614;
                                                 }
                                               else
                                                 {
@@ -11836,7 +12727,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x1011xxxxx110xxxxxxxxxxxxx
                                                      ld1w.  */
-                                                  return 1606;
+                                                  return 1610;
                                                 }
                                             }
                                           else
@@ -11847,7 +12738,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x11x1xxxxx110xxxxxxxxxxxxx
                                                      histcnt.  */
-                                                  return 2097;
+                                                  return 2101;
                                                 }
                                               else
                                                 {
@@ -11857,7 +12748,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1101xxxxx110xxxxxxxxxxxxx
                                                          ld1d.  */
-                                                      return 1530;
+                                                      return 1534;
                                                     }
                                                   else
                                                     {
@@ -11865,7 +12756,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1111xxxxx110xxxxxxxxxxxxx
                                                          ld1d.  */
-                                                      return 1528;
+                                                      return 1532;
                                                     }
                                                 }
                                             }
@@ -11891,7 +12782,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx001x00xxxxxxxxxx
                                                          sabdlb.  */
-                                                      return 2134;
+                                                      return 2138;
                                                     }
                                                   else
                                                     {
@@ -11899,7 +12790,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx001x10xxxxxxxxxx
                                                          uabdlb.  */
-                                                      return 2265;
+                                                      return 2269;
                                                     }
                                                 }
                                               else
@@ -11910,7 +12801,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx001x01xxxxxxxxxx
                                                          sabdlt.  */
-                                                      return 2135;
+                                                      return 2139;
                                                     }
                                                   else
                                                     {
@@ -11918,7 +12809,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx001x11xxxxxxxxxx
                                                          uabdlt.  */
-                                                      return 2266;
+                                                      return 2270;
                                                     }
                                                 }
                                             }
@@ -11928,7 +12819,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  110001x1xx0xxxxx001xxxxxxxxxxxxx
                                                  ldff1sw.  */
-                                              return 1694;
+                                              return 1698;
                                             }
                                         }
                                       else
@@ -11945,7 +12836,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001000xxxxxxxxxx
                                                              sqshrnb.  */
-                                                          return 2225;
+                                                          return 2229;
                                                         }
                                                       else
                                                         {
@@ -11953,7 +12844,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001100xxxxxxxxxx
                                                              uqshrnb.  */
-                                                          return 2304;
+                                                          return 2308;
                                                         }
                                                     }
                                                   else
@@ -11964,7 +12855,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001010xxxxxxxxxx
                                                              sqrshrnb.  */
-                                                          return 2217;
+                                                          return 2221;
                                                         }
                                                       else
                                                         {
@@ -11972,7 +12863,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001110xxxxxxxxxx
                                                              uqrshrnb.  */
-                                                          return 2299;
+                                                          return 2303;
                                                         }
                                                     }
                                                 }
@@ -11986,7 +12877,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001001xxxxxxxxxx
                                                              sqshrnt.  */
-                                                          return 2226;
+                                                          return 2230;
                                                         }
                                                       else
                                                         {
@@ -11994,7 +12885,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001101xxxxxxxxxx
                                                              uqshrnt.  */
-                                                          return 2305;
+                                                          return 2309;
                                                         }
                                                     }
                                                   else
@@ -12005,7 +12896,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001011xxxxxxxxxx
                                                              sqrshrnt.  */
-                                                          return 2218;
+                                                          return 2222;
                                                         }
                                                       else
                                                         {
@@ -12013,7 +12904,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx001111xxxxxxxxxx
                                                              uqrshrnt.  */
-                                                          return 2300;
+                                                          return 2304;
                                                         }
                                                     }
                                                 }
@@ -12024,7 +12915,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  110001x1xx1xxxxx001xxxxxxxxxxxxx
                                                  ldff1sw.  */
-                                              return 1695;
+                                              return 1699;
                                             }
                                         }
                                     }
@@ -12044,7 +12935,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx101000xxxxxxxxxx
                                                              sshllb.  */
-                                                          return 2241;
+                                                          return 2245;
                                                         }
                                                       else
                                                         {
@@ -12052,7 +12943,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx101100xxxxxxxxxx
                                                              bext.  */
-                                                          return 2346;
+                                                          return 2350;
                                                         }
                                                     }
                                                   else
@@ -12063,7 +12954,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx101010xxxxxxxxxx
                                                              ushllb.  */
-                                                          return 2317;
+                                                          return 2321;
                                                         }
                                                       else
                                                         {
@@ -12071,7 +12962,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx101110xxxxxxxxxx
                                                              bgrp.  */
-                                                          return 2347;
+                                                          return 2351;
                                                         }
                                                     }
                                                 }
@@ -12085,7 +12976,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx101001xxxxxxxxxx
                                                              sshllt.  */
-                                                          return 2242;
+                                                          return 2246;
                                                         }
                                                       else
                                                         {
@@ -12093,7 +12984,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx101101xxxxxxxxxx
                                                              bdep.  */
-                                                          return 2345;
+                                                          return 2349;
                                                         }
                                                     }
                                                   else
@@ -12102,7 +12993,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          010001x1xx0xxxxx101x11xxxxxxxxxx
                                                          ushllt.  */
-                                                      return 2318;
+                                                      return 2322;
                                                     }
                                                 }
                                             }
@@ -12112,7 +13003,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  110001x1xx0xxxxx101xxxxxxxxxxxxx
                                                  ldff1sw.  */
-                                              return 1696;
+                                              return 1700;
                                             }
                                         }
                                       else
@@ -12125,7 +13016,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      010001x1x01xxxxx101xxxxxxxxxxxxx
                                                      histseg.  */
-                                                  return 2098;
+                                                  return 2102;
                                                 }
                                               else
                                                 {
@@ -12133,7 +13024,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x1x01xxxxx101xxxxxxxxxxxxx
                                                      ldff1sw.  */
-                                                  return 1698;
+                                                  return 1702;
                                                 }
                                             }
                                           else
@@ -12142,7 +13033,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x10001x1x11xxxxx101xxxxxxxxxxxxx
                                                  ldff1sw.  */
-                                              return 1697;
+                                              return 1701;
                                             }
                                         }
                                     }
@@ -12165,7 +13056,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx011000xxxxxxxxxx
                                                              sqdmullb.  */
-                                                          return 2195;
+                                                          return 2199;
                                                         }
                                                       else
                                                         {
@@ -12173,7 +13064,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx011100xxxxxxxxxx
                                                              smullb.  */
-                                                          return 2167;
+                                                          return 2171;
                                                         }
                                                     }
                                                   else
@@ -12186,7 +13077,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1x00xxxxx011010xxxxxxxxxx
                                                                  pmullb.  */
-                                                              return 2342;
+                                                              return 2346;
                                                             }
                                                           else
                                                             {
@@ -12194,7 +13085,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1x10xxxxx011010xxxxxxxxxx
                                                                  pmullb.  */
-                                                              return 2123;
+                                                              return 2127;
                                                             }
                                                         }
                                                       else
@@ -12203,7 +13094,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx011110xxxxxxxxxx
                                                              umullb.  */
-                                                          return 2292;
+                                                          return 2296;
                                                         }
                                                     }
                                                 }
@@ -12217,7 +13108,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx011001xxxxxxxxxx
                                                              sqdmullt.  */
-                                                          return 2198;
+                                                          return 2202;
                                                         }
                                                       else
                                                         {
@@ -12225,7 +13116,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx011101xxxxxxxxxx
                                                              smullt.  */
-                                                          return 2170;
+                                                          return 2174;
                                                         }
                                                     }
                                                   else
@@ -12238,7 +13129,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1x00xxxxx011011xxxxxxxxxx
                                                                  pmullt.  */
-                                                              return 2343;
+                                                              return 2347;
                                                             }
                                                           else
                                                             {
@@ -12246,7 +13137,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1x10xxxxx011011xxxxxxxxxx
                                                                  pmullt.  */
-                                                              return 2124;
+                                                              return 2128;
                                                             }
                                                         }
                                                       else
@@ -12255,7 +13146,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx011111xxxxxxxxxx
                                                              umullt.  */
-                                                          return 2295;
+                                                          return 2299;
                                                         }
                                                     }
                                                 }
@@ -12268,7 +13159,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x10x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1w.  */
-                                                  return 1705;
+                                                  return 1709;
                                                 }
                                               else
                                                 {
@@ -12276,7 +13167,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x11x0xxxxx011xxxxxxxxxxxxx
                                                      ldff1d.  */
-                                                  return 1650;
+                                                  return 1654;
                                                 }
                                             }
                                         }
@@ -12294,7 +13185,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011000xxxxxxxxxx
                                                              addhnb.  */
-                                                          return 2059;
+                                                          return 2063;
                                                         }
                                                       else
                                                         {
@@ -12302,7 +13193,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011100xxxxxxxxxx
                                                              subhnb.  */
-                                                          return 2257;
+                                                          return 2261;
                                                         }
                                                     }
                                                   else
@@ -12313,7 +13204,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011010xxxxxxxxxx
                                                              raddhnb.  */
-                                                          return 2125;
+                                                          return 2129;
                                                         }
                                                       else
                                                         {
@@ -12321,7 +13212,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011110xxxxxxxxxx
                                                              rsubhnb.  */
-                                                          return 2129;
+                                                          return 2133;
                                                         }
                                                     }
                                                 }
@@ -12335,7 +13226,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011001xxxxxxxxxx
                                                              addhnt.  */
-                                                          return 2060;
+                                                          return 2064;
                                                         }
                                                       else
                                                         {
@@ -12343,7 +13234,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011101xxxxxxxxxx
                                                              subhnt.  */
-                                                          return 2258;
+                                                          return 2262;
                                                         }
                                                     }
                                                   else
@@ -12354,7 +13245,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011011xxxxxxxxxx
                                                              raddhnt.  */
-                                                          return 2126;
+                                                          return 2130;
                                                         }
                                                       else
                                                         {
@@ -12362,7 +13253,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx1xxxxx011111xxxxxxxxxx
                                                              rsubhnt.  */
-                                                          return 2130;
+                                                          return 2134;
                                                         }
                                                     }
                                                 }
@@ -12375,7 +13266,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x10x1xxxxx011xxxxxxxxxxxxx
                                                      ldff1w.  */
-                                                  return 1706;
+                                                  return 1710;
                                                 }
                                               else
                                                 {
@@ -12383,7 +13274,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      110001x11x1xxxxx011xxxxxxxxxxxxx
                                                      ldff1d.  */
-                                                  return 1651;
+                                                  return 1655;
                                                 }
                                             }
                                         }
@@ -12404,7 +13295,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111000xxxxxxxxxx
                                                              ssra.  */
-                                                          return 2243;
+                                                          return 2247;
                                                         }
                                                       else
                                                         {
@@ -12412,7 +13303,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111100xxxxxxxxxx
                                                              sri.  */
-                                                          return 2236;
+                                                          return 2240;
                                                         }
                                                     }
                                                   else
@@ -12423,7 +13314,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111010xxxxxxxxxx
                                                              srsra.  */
-                                                          return 2240;
+                                                          return 2244;
                                                         }
                                                       else
                                                         {
@@ -12431,7 +13322,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111110xxxxxxxxxx
                                                              saba.  */
-                                                          return 2131;
+                                                          return 2135;
                                                         }
                                                     }
                                                 }
@@ -12445,7 +13336,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111001xxxxxxxxxx
                                                              usra.  */
-                                                          return 2320;
+                                                          return 2324;
                                                         }
                                                       else
                                                         {
@@ -12453,7 +13344,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111101xxxxxxxxxx
                                                              sli.  */
-                                                          return 2149;
+                                                          return 2153;
                                                         }
                                                     }
                                                   else
@@ -12464,7 +13355,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111011xxxxxxxxxx
                                                              ursra.  */
-                                                          return 2316;
+                                                          return 2320;
                                                         }
                                                       else
                                                         {
@@ -12472,7 +13363,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              010001x1xx0xxxxx111111xxxxxxxxxx
                                                              uaba.  */
-                                                          return 2262;
+                                                          return 2266;
                                                         }
                                                     }
                                                 }
@@ -12487,7 +13378,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1000xxxxx111xxxxxxxxxxxxx
                                                          prfw.  */
-                                                      return 1801;
+                                                      return 1805;
                                                     }
                                                   else
                                                     {
@@ -12495,7 +13386,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1100xxxxx111xxxxxxxxxxxxx
                                                          prfd.  */
-                                                      return 1787;
+                                                      return 1791;
                                                     }
                                                 }
                                               else
@@ -12506,7 +13397,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1010xxxxx111xxxxxxxxxxxxx
                                                          ldff1w.  */
-                                                      return 1707;
+                                                      return 1711;
                                                     }
                                                   else
                                                     {
@@ -12514,7 +13405,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1110xxxxx111xxxxxxxxxxxxx
                                                          ldff1d.  */
-                                                      return 1652;
+                                                      return 1656;
                                                     }
                                                 }
                                             }
@@ -12539,7 +13430,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          010001x1001xxx001110x0xxxxxxxxxx
                                                                          aesmc.  */
-                                                                      return 2341;
+                                                                      return 2345;
                                                                     }
                                                                   else
                                                                     {
@@ -12547,7 +13438,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          010001x1001xxx101110x0xxxxxxxxxx
                                                                          aese.  */
-                                                                      return 2339;
+                                                                      return 2343;
                                                                     }
                                                                 }
                                                               else
@@ -12556,7 +13447,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1001xxxx11110x0xxxxxxxxxx
                                                                      sm4e.  */
-                                                                  return 2336;
+                                                                  return 2340;
                                                                 }
                                                             }
                                                           else
@@ -12565,7 +13456,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1001xxxxx1111x0xxxxxxxxxx
                                                                  sm4ekey.  */
-                                                              return 2337;
+                                                              return 2341;
                                                             }
                                                         }
                                                       else
@@ -12578,7 +13469,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1001xxx0x1110x1xxxxxxxxxx
                                                                      aesimc.  */
-                                                                  return 2340;
+                                                                  return 2344;
                                                                 }
                                                               else
                                                                 {
@@ -12586,7 +13477,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      010001x1001xxx1x1110x1xxxxxxxxxx
                                                                      aesd.  */
-                                                                  return 2338;
+                                                                  return 2342;
                                                                 }
                                                             }
                                                           else
@@ -12595,7 +13486,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  010001x1001xxxxx1111x1xxxxxxxxxx
                                                                  rax1.  */
-                                                              return 2344;
+                                                              return 2348;
                                                             }
                                                         }
                                                     }
@@ -12605,7 +13496,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          110001x1001xxxxx111xxxxxxxxxxxxx
                                                          ldff1w.  */
-                                                      return 1710;
+                                                      return 1714;
                                                     }
                                                 }
                                               else
@@ -12614,7 +13505,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x1101xxxxx111xxxxxxxxxxxxx
                                                      ldff1d.  */
-                                                  return 1654;
+                                                  return 1658;
                                                 }
                                             }
                                           else
@@ -12625,7 +13516,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x1011xxxxx111xxxxxxxxxxxxx
                                                      ldff1w.  */
-                                                  return 1708;
+                                                  return 1712;
                                                 }
                                               else
                                                 {
@@ -12633,7 +13524,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x10001x1111xxxxx111xxxxxxxxxxxxx
                                                      ldff1d.  */
-                                                  return 1653;
+                                                  return 1657;
                                                 }
                                             }
                                         }
@@ -12662,7 +13553,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1xx0xxxxx000xxxxxxxx0xxxx
                                                      cmpge.  */
-                                                  return 1333;
+                                                  return 1337;
                                                 }
                                               else
                                                 {
@@ -12670,7 +13561,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1xx0xxxxx000xxxxxxxx1xxxx
                                                      cmpgt.  */
-                                                  return 1336;
+                                                  return 1340;
                                                 }
                                             }
                                           else
@@ -12681,7 +13572,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x10x0xxxxx000xxxxxxxxxxxxx
                                                      ld1rqw.  */
-                                                  return 1560;
+                                                  return 1564;
                                                 }
                                               else
                                                 {
@@ -12689,7 +13580,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x11x0xxxxx000xxxxxxxxxxxxx
                                                      ld1rqd.  */
-                                                  return 1556;
+                                                  return 1560;
                                                 }
                                             }
                                         }
@@ -12709,7 +13600,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000000xxxxx0xxxx
                                                                  whilege.  */
-                                                              return 2325;
+                                                              return 2329;
                                                             }
                                                           else
                                                             {
@@ -12717,7 +13608,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000100xxxxx0xxxx
                                                                  whilege.  */
-                                                              return 2326;
+                                                              return 2330;
                                                             }
                                                         }
                                                       else
@@ -12728,7 +13619,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000010xxxxx0xxxx
                                                                  whilehs.  */
-                                                              return 2331;
+                                                              return 2335;
                                                             }
                                                           else
                                                             {
@@ -12736,7 +13627,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000110xxxxx0xxxx
                                                                  whilehs.  */
-                                                              return 2332;
+                                                              return 2336;
                                                             }
                                                         }
                                                     }
@@ -12750,7 +13641,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000001xxxxx0xxxx
                                                                  whilelt.  */
-                                                              return 2037;
+                                                              return 2041;
                                                             }
                                                           else
                                                             {
@@ -12758,7 +13649,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000101xxxxx0xxxx
                                                                  whilelt.  */
-                                                              return 2038;
+                                                              return 2042;
                                                             }
                                                         }
                                                       else
@@ -12769,7 +13660,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000011xxxxx0xxxx
                                                                  whilelo.  */
-                                                              return 2033;
+                                                              return 2037;
                                                             }
                                                           else
                                                             {
@@ -12777,7 +13668,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000111xxxxx0xxxx
                                                                  whilelo.  */
-                                                              return 2034;
+                                                              return 2038;
                                                             }
                                                         }
                                                     }
@@ -12794,7 +13685,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000000xxxxx1xxxx
                                                                  whilegt.  */
-                                                              return 2327;
+                                                              return 2331;
                                                             }
                                                           else
                                                             {
@@ -12802,7 +13693,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000100xxxxx1xxxx
                                                                  whilegt.  */
-                                                              return 2328;
+                                                              return 2332;
                                                             }
                                                         }
                                                       else
@@ -12813,7 +13704,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000010xxxxx1xxxx
                                                                  whilehi.  */
-                                                              return 2329;
+                                                              return 2333;
                                                             }
                                                           else
                                                             {
@@ -12821,7 +13712,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000110xxxxx1xxxx
                                                                  whilehi.  */
-                                                              return 2330;
+                                                              return 2334;
                                                             }
                                                         }
                                                     }
@@ -12835,7 +13726,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000001xxxxx1xxxx
                                                                  whilele.  */
-                                                              return 2031;
+                                                              return 2035;
                                                             }
                                                           else
                                                             {
@@ -12843,7 +13734,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000101xxxxx1xxxx
                                                                  whilele.  */
-                                                              return 2032;
+                                                              return 2036;
                                                             }
                                                         }
                                                       else
@@ -12854,7 +13745,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000011xxxxx1xxxx
                                                                  whilels.  */
-                                                              return 2035;
+                                                              return 2039;
                                                             }
                                                           else
                                                             {
@@ -12862,7 +13753,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx1xxxxx000111xxxxx1xxxx
                                                                  whilels.  */
-                                                              return 2036;
+                                                              return 2040;
                                                             }
                                                         }
                                                     }
@@ -12876,7 +13767,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x10x1xxxxx000xxxxxxxxxxxxx
                                                      ld1row.  */
-                                                  return 2439;
+                                                  return 2477;
                                                 }
                                               else
                                                 {
@@ -12884,7 +13775,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x11x1xxxxx000xxxxxxxxxxxxx
                                                      ld1rod.  */
-                                                  return 2440;
+                                                  return 2478;
                                                 }
                                             }
                                         }
@@ -12903,7 +13794,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x1xx0xxxxx000x00xxxxxxxxxx
                                                          fadd.  */
-                                                      return 1391;
+                                                      return 1395;
                                                     }
                                                   else
                                                     {
@@ -12913,7 +13804,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xxxxx000010xxxxxxxxxx
                                                              fmul.  */
-                                                          return 1458;
+                                                          return 1462;
                                                         }
                                                       else
                                                         {
@@ -12921,7 +13812,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xxxxx000110xxxxxxxxxx
                                                              frecps.  */
-                                                          return 1471;
+                                                          return 1475;
                                                         }
                                                     }
                                                 }
@@ -12933,7 +13824,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x1xx0xxxxx000x01xxxxxxxxxx
                                                          fsub.  */
-                                                      return 1484;
+                                                      return 1488;
                                                     }
                                                   else
                                                     {
@@ -12943,7 +13834,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xxxxx000011xxxxxxxxxx
                                                              ftsmul.  */
-                                                          return 1490;
+                                                          return 1494;
                                                         }
                                                       else
                                                         {
@@ -12951,7 +13842,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xxxxx000111xxxxxxxxxx
                                                              frsqrts.  */
-                                                          return 1481;
+                                                          return 1485;
                                                         }
                                                     }
                                                 }
@@ -12962,7 +13853,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  011001x1xx1xxxxx000xxxxxxxxxxxxx
                                                  fmla.  */
-                                              return 1449;
+                                              return 1453;
                                             }
                                         }
                                       else
@@ -12971,7 +13862,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              111001x1xxxxxxxx000xxxxxxxxxxxxx
                                              str.  */
-                                          return 1952;
+                                          return 1956;
                                         }
                                     }
                                 }
@@ -12989,7 +13880,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1xx0xxxxx001xxxxxxxx0xxxx
                                                      cmplt.  */
-                                                  return 1350;
+                                                  return 1354;
                                                 }
                                               else
                                                 {
@@ -12997,7 +13888,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1xx0xxxxx001xxxxxxxx1xxxx
                                                      cmple.  */
-                                                  return 1344;
+                                                  return 1348;
                                                 }
                                             }
                                           else
@@ -13008,7 +13899,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x10x0xxxxx001xxxxxxxxxxxxx
                                                      ld1rqw.  */
-                                                  return 1559;
+                                                  return 1563;
                                                 }
                                               else
                                                 {
@@ -13016,7 +13907,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x11x0xxxxx001xxxxxxxxxxxxx
                                                      ld1rqd.  */
-                                                  return 1555;
+                                                  return 1559;
                                                 }
                                             }
                                         }
@@ -13038,7 +13929,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000000001xxxxxxxxxxxxx
                                                                      faddv.  */
-                                                                  return 1395;
+                                                                  return 1399;
                                                                 }
                                                               else
                                                                 {
@@ -13048,7 +13939,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1xx010000001xxxxxxxx0xxxx
                                                                          fcmge.  */
-                                                                      return 1402;
+                                                                      return 1406;
                                                                     }
                                                                   else
                                                                     {
@@ -13056,7 +13947,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1xx010000001xxxxxxxx1xxxx
                                                                          fcmgt.  */
-                                                                      return 1404;
+                                                                      return 1408;
                                                                     }
                                                                 }
                                                             }
@@ -13066,7 +13957,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x1000001xxxxxxxxxxxxx
                                                                  fadda.  */
-                                                              return 1394;
+                                                              return 1398;
                                                             }
                                                         }
                                                       else
@@ -13075,7 +13966,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xx100001xxxxxxxxxxxxx
                                                              fmaxnmv.  */
-                                                          return 1441;
+                                                          return 1445;
                                                         }
                                                     }
                                                   else
@@ -13086,7 +13977,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xx010001xxxxxxxxxxxxx
                                                              fcmeq.  */
-                                                          return 1400;
+                                                          return 1404;
                                                         }
                                                       else
                                                         {
@@ -13096,7 +13987,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x0110001xxxxxxxxxxxxx
                                                                  fmaxv.  */
-                                                              return 1442;
+                                                              return 1446;
                                                             }
                                                           else
                                                             {
@@ -13104,7 +13995,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x1110001xxxxxxxxxxxxx
                                                                  frecpe.  */
-                                                              return 1470;
+                                                              return 1474;
                                                             }
                                                         }
                                                     }
@@ -13121,7 +14012,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0xx001001xxxxxxxx0xxxx
                                                                  fcmlt.  */
-                                                              return 1407;
+                                                              return 1411;
                                                             }
                                                           else
                                                             {
@@ -13129,7 +14020,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0xx001001xxxxxxxx1xxxx
                                                                  fcmle.  */
-                                                              return 1406;
+                                                              return 1410;
                                                             }
                                                         }
                                                       else
@@ -13138,7 +14029,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xx101001xxxxxxxxxxxxx
                                                              fminnmv.  */
-                                                          return 1447;
+                                                          return 1451;
                                                         }
                                                     }
                                                   else
@@ -13149,7 +14040,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              011001x1xx0xx011001xxxxxxxxxxxxx
                                                              fcmne.  */
-                                                          return 1408;
+                                                          return 1412;
                                                         }
                                                       else
                                                         {
@@ -13159,7 +14050,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x0111001xxxxxxxxxxxxx
                                                                  fminv.  */
-                                                              return 1448;
+                                                              return 1452;
                                                             }
                                                           else
                                                             {
@@ -13167,7 +14058,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x1111001xxxxxxxxxxxxx
                                                                  frsqrte.  */
-                                                              return 1480;
+                                                              return 1484;
                                                             }
                                                         }
                                                     }
@@ -13183,7 +14074,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1000xxxxx001xxxxxxxxxxxxx
                                                          stnt1w.  */
-                                                      return 2256;
+                                                      return 2260;
                                                     }
                                                   else
                                                     {
@@ -13191,7 +14082,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1100xxxxx001xxxxxxxxxxxxx
                                                          stnt1d.  */
-                                                      return 2252;
+                                                      return 2256;
                                                     }
                                                 }
                                               else
@@ -13200,7 +14091,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x1x10xxxxx001xxxxxxxxxxxxx
                                                      stnt1w.  */
-                                                  return 2255;
+                                                  return 2259;
                                                 }
                                             }
                                         }
@@ -13219,7 +14110,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xxxxx0010xxxxxxx0xxxx
                                                          ctermeq.  */
-                                                      return 1365;
+                                                      return 1369;
                                                     }
                                                   else
                                                     {
@@ -13227,7 +14118,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xxxxx0011xxxxxxx0xxxx
                                                          whilewr.  */
-                                                      return 2334;
+                                                      return 2338;
                                                     }
                                                 }
                                               else
@@ -13238,7 +14129,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xxxxx0010xxxxxxx1xxxx
                                                          ctermne.  */
-                                                      return 1366;
+                                                      return 1370;
                                                     }
                                                   else
                                                     {
@@ -13246,7 +14137,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xxxxx0011xxxxxxx1xxxx
                                                          whilerw.  */
-                                                      return 2333;
+                                                      return 2337;
                                                     }
                                                 }
                                             }
@@ -13258,7 +14149,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x10x1xxxxx001xxxxxxxxxxxxx
                                                      ld1row.  */
-                                                  return 2443;
+                                                  return 2481;
                                                 }
                                               else
                                                 {
@@ -13266,7 +14157,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      101001x11x1xxxxx001xxxxxxxxxxxxx
                                                      ld1rod.  */
-                                                  return 2444;
+                                                  return 2482;
                                                 }
                                             }
                                         }
@@ -13276,7 +14167,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              x11001x1xx1xxxxx001xxxxxxxxxxxxx
                                              fmls.  */
-                                          return 1453;
+                                          return 1457;
                                         }
                                     }
                                 }
@@ -13303,7 +14194,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x10000xxxx01xxxx0xxxx0xxxx
                                                                  and.  */
-                                                              return 1296;
+                                                              return 1300;
                                                             }
                                                           else
                                                             {
@@ -13311,7 +14202,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x10000xxxx01xxxx0xxxx1xxxx
                                                                  bic.  */
-                                                              return 1308;
+                                                              return 1312;
                                                             }
                                                         }
                                                       else
@@ -13322,7 +14213,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x100010xxx01xxxx0xxxxxxxxx
                                                                  brka.  */
-                                                              return 1310;
+                                                              return 1314;
                                                             }
                                                           else
                                                             {
@@ -13330,7 +14221,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x100011xxx01xxxx0xxxxxxxxx
                                                                  brkn.  */
-                                                              return 1314;
+                                                              return 1318;
                                                             }
                                                         }
                                                     }
@@ -13342,7 +14233,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1000xxxxx01xxxx1xxxx0xxxx
                                                              eor.  */
-                                                          return 1383;
+                                                          return 1387;
                                                         }
                                                       else
                                                         {
@@ -13350,7 +14241,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1000xxxxx01xxxx1xxxx1xxxx
                                                              sel.  */
-                                                          return 1832;
+                                                          return 1836;
                                                         }
                                                     }
                                                 }
@@ -13362,7 +14253,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1000xxxxx010xxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1582;
+                                                      return 1586;
                                                     }
                                                   else
                                                     {
@@ -13370,7 +14261,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1000xxxxx011xxxxxxxxxxxxx
                                                          ldff1sh.  */
-                                                      return 1682;
+                                                      return 1686;
                                                     }
                                                 }
                                             }
@@ -13388,7 +14279,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x11000xxxx01xxxx0xxxx0xxxx
                                                                  orr.  */
-                                                              return 1768;
+                                                              return 1772;
                                                             }
                                                           else
                                                             {
@@ -13396,7 +14287,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x11000xxxx01xxxx0xxxx1xxxx
                                                                  orn.  */
-                                                              return 1763;
+                                                              return 1767;
                                                             }
                                                         }
                                                       else
@@ -13405,7 +14296,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x11001xxxx01xxxx0xxxxxxxxx
                                                              brkb.  */
-                                                          return 1312;
+                                                          return 1316;
                                                         }
                                                     }
                                                   else
@@ -13416,7 +14307,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1100xxxxx01xxxx1xxxx0xxxx
                                                              nor.  */
-                                                          return 1760;
+                                                          return 1764;
                                                         }
                                                       else
                                                         {
@@ -13424,7 +14315,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1100xxxxx01xxxx1xxxx1xxxx
                                                              nand.  */
-                                                          return 1757;
+                                                          return 1761;
                                                         }
                                                     }
                                                 }
@@ -13436,7 +14327,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1100xxxxx010xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1570;
+                                                      return 1574;
                                                     }
                                                   else
                                                     {
@@ -13444,7 +14335,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1100xxxxx011xxxxxxxxxxxxx
                                                          ldff1sb.  */
-                                                      return 1670;
+                                                      return 1674;
                                                     }
                                                 }
                                             }
@@ -13465,7 +14356,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x10100xxxx01xxxx0xxxx0xxxx
                                                                  ands.  */
-                                                              return 1297;
+                                                              return 1301;
                                                             }
                                                           else
                                                             {
@@ -13475,7 +14366,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x101010xxx01xxxx0xxxx0xxxx
                                                                      brkas.  */
-                                                                  return 1311;
+                                                                  return 1315;
                                                                 }
                                                               else
                                                                 {
@@ -13483,7 +14374,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x101011xxx01xxxx0xxxx0xxxx
                                                                      brkns.  */
-                                                                  return 1315;
+                                                                  return 1319;
                                                                 }
                                                             }
                                                         }
@@ -13493,7 +14384,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1010xxxxx01xxxx1xxxx0xxxx
                                                              eors.  */
-                                                          return 1384;
+                                                          return 1388;
                                                         }
                                                     }
                                                   else
@@ -13502,7 +14393,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1010xxxxx01xxxxxxxxx1xxxx
                                                          bics.  */
-                                                      return 1309;
+                                                      return 1313;
                                                     }
                                                 }
                                               else
@@ -13513,7 +14404,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1010xxxxx010xxxxxxxxxxxxx
                                                          ld1w.  */
-                                                      return 1601;
+                                                      return 1605;
                                                     }
                                                   else
                                                     {
@@ -13521,7 +14412,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1010xxxxx011xxxxxxxxxxxxx
                                                          ldff1w.  */
-                                                      return 1701;
+                                                      return 1705;
                                                     }
                                                 }
                                             }
@@ -13539,7 +14430,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x11100xxxx01xxxx0xxxx0xxxx
                                                                  orrs.  */
-                                                              return 1769;
+                                                              return 1773;
                                                             }
                                                           else
                                                             {
@@ -13547,7 +14438,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x11101xxxx01xxxx0xxxx0xxxx
                                                                  brkbs.  */
-                                                              return 1313;
+                                                              return 1317;
                                                             }
                                                         }
                                                       else
@@ -13556,7 +14447,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1110xxxxx01xxxx1xxxx0xxxx
                                                              nors.  */
-                                                          return 1761;
+                                                          return 1765;
                                                         }
                                                     }
                                                   else
@@ -13567,7 +14458,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1110xxxxx01xxxx0xxxx1xxxx
                                                              orns.  */
-                                                          return 1764;
+                                                          return 1768;
                                                         }
                                                       else
                                                         {
@@ -13575,7 +14466,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1110xxxxx01xxxx1xxxx1xxxx
                                                              nands.  */
-                                                          return 1758;
+                                                          return 1762;
                                                         }
                                                     }
                                                 }
@@ -13587,7 +14478,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1110xxxxx010xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1572;
+                                                      return 1576;
                                                     }
                                                   else
                                                     {
@@ -13595,7 +14486,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1110xxxxx011xxxxxxxxxxxxx
                                                          ldff1sb.  */
-                                                      return 1674;
+                                                      return 1678;
                                                     }
                                                 }
                                             }
@@ -13603,85 +14494,96 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                     }
                                   else
                                     {
-                                      if (((word >> 13) & 0x1) == 0)
+                                      if (((word >> 31) & 0x1) == 0)
                                         {
-                                          if (((word >> 22) & 0x1) == 0)
-                                            {
-                                              if (((word >> 23) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1001xxxxx010xxxxxxxxxxxxx
-                                                     ld1sh.  */
-                                                  return 1583;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1101xxxxx010xxxxxxxxxxxxx
-                                                     ld1sb.  */
-                                                  return 1571;
-                                                }
-                                            }
-                                          else
-                                            {
-                                              if (((word >> 23) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1011xxxxx010xxxxxxxxxxxxx
-                                                     ld1w.  */
-                                                  return 1602;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1111xxxxx010xxxxxxxxxxxxx
-                                                     ld1d.  */
-                                                  return 1524;
-                                                }
-                                            }
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             001001x1xx1xxxxx01xxxxxxxxxxxxxx
+                                             psel.  */
+                                          return 2413;
                                         }
                                       else
                                         {
-                                          if (((word >> 22) & 0x1) == 0)
+                                          if (((word >> 13) & 0x1) == 0)
                                             {
-                                              if (((word >> 23) & 0x1) == 0)
+                                              if (((word >> 22) & 0x1) == 0)
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1001xxxxx011xxxxxxxxxxxxx
-                                                     ldff1sh.  */
-                                                  return 1684;
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1001xxxxx010xxxxxxxxxxxxx
+                                                         ld1sh.  */
+                                                      return 1587;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1101xxxxx010xxxxxxxxxxxxx
+                                                         ld1sb.  */
+                                                      return 1575;
+                                                    }
                                                 }
                                               else
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1101xxxxx011xxxxxxxxxxxxx
-                                                     ldff1sb.  */
-                                                  return 1672;
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1011xxxxx010xxxxxxxxxxxxx
+                                                         ld1w.  */
+                                                      return 1606;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1111xxxxx010xxxxxxxxxxxxx
+                                                         ld1d.  */
+                                                      return 1528;
+                                                    }
                                                 }
                                             }
                                           else
                                             {
-                                              if (((word >> 23) & 0x1) == 0)
+                                              if (((word >> 22) & 0x1) == 0)
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1011xxxxx011xxxxxxxxxxxxx
-                                                     ldff1w.  */
-                                                  return 1703;
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1001xxxxx011xxxxxxxxxxxxx
+                                                         ldff1sh.  */
+                                                      return 1688;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1101xxxxx011xxxxxxxxxxxxx
+                                                         ldff1sb.  */
+                                                      return 1676;
+                                                    }
                                                 }
                                               else
                                                 {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     x01001x1111xxxxx011xxxxxxxxxxxxx
-                                                     ldff1d.  */
-                                                  return 1648;
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1011xxxxx011xxxxxxxxxxxxx
+                                                         ldff1w.  */
+                                                      return 1707;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1111xxxxx011xxxxxxxxxxxxx
+                                                         ldff1d.  */
+                                                      return 1652;
+                                                    }
                                                 }
                                             }
                                         }
@@ -13701,7 +14603,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x1xx0xxxxx010xxxxxxxx0xxxx
                                                      fcmge.  */
-                                                  return 1403;
+                                                  return 1407;
                                                 }
                                               else
                                                 {
@@ -13709,7 +14611,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x1xx0xxxxx010xxxxxxxx1xxxx
                                                      fcmgt.  */
-                                                  return 1405;
+                                                  return 1409;
                                                 }
                                             }
                                           else
@@ -13718,7 +14620,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  011001x1xx1xxxxx010xxxxxxxxxxxxx
                                                  fnmla.  */
-                                              return 1467;
+                                              return 1471;
                                             }
                                         }
                                       else
@@ -13729,7 +14631,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  111001x1x0xxxxxx010xxxxxxxxxxxxx
                                                  str.  */
-                                              return 1953;
+                                              return 1957;
                                             }
                                           else
                                             {
@@ -13739,7 +14641,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x1x10xxxxx010xxxxxxxxxxxxx
                                                      st1w.  */
-                                                  return 1912;
+                                                  return 1916;
                                                 }
                                               else
                                                 {
@@ -13749,7 +14651,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1011xxxxx010xxxxxxxxxxxxx
                                                          st1w.  */
-                                                      return 1914;
+                                                      return 1918;
                                                     }
                                                   else
                                                     {
@@ -13757,7 +14659,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1111xxxxx010xxxxxxxxxxxxx
                                                          st1d.  */
-                                                      return 1891;
+                                                      return 1895;
                                                     }
                                                 }
                                             }
@@ -13775,7 +14677,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x1xx0xxxxx011xxxxxxxx0xxxx
                                                      fcmeq.  */
-                                                  return 1401;
+                                                  return 1405;
                                                 }
                                               else
                                                 {
@@ -13783,7 +14685,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x1xx0xxxxx011xxxxxxxx1xxxx
                                                      fcmne.  */
-                                                  return 1409;
+                                                  return 1413;
                                                 }
                                             }
                                           else
@@ -13796,7 +14698,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1000xxxxx011xxxxxxxxxxxxx
                                                          stnt1w.  */
-                                                      return 1950;
+                                                      return 1954;
                                                     }
                                                   else
                                                     {
@@ -13804,7 +14706,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1100xxxxx011xxxxxxxxxxxxx
                                                          stnt1d.  */
-                                                      return 1946;
+                                                      return 1950;
                                                     }
                                                 }
                                               else
@@ -13815,7 +14717,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1010xxxxx011xxxxxxxxxxxxx
                                                          st3w.  */
-                                                      return 1934;
+                                                      return 1938;
                                                     }
                                                   else
                                                     {
@@ -13823,7 +14725,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1110xxxxx011xxxxxxxxxxxxx
                                                          st3d.  */
-                                                      return 1930;
+                                                      return 1934;
                                                     }
                                                 }
                                             }
@@ -13836,7 +14738,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  011001x1xx1xxxxx011xxxxxxxxxxxxx
                                                  fnmls.  */
-                                              return 1468;
+                                              return 1472;
                                             }
                                           else
                                             {
@@ -13848,7 +14750,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1001xxxxx011xxxxxxxxxxxxx
                                                          st2w.  */
-                                                      return 1926;
+                                                      return 1930;
                                                     }
                                                   else
                                                     {
@@ -13856,7 +14758,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1101xxxxx011xxxxxxxxxxxxx
                                                          st2d.  */
-                                                      return 1922;
+                                                      return 1926;
                                                     }
                                                 }
                                               else
@@ -13867,7 +14769,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1011xxxxx011xxxxxxxxxxxxx
                                                          st4w.  */
-                                                      return 1942;
+                                                      return 1946;
                                                     }
                                                   else
                                                     {
@@ -13875,7 +14777,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1111xxxxx011xxxxxxxxxxxxx
                                                          st4d.  */
-                                                      return 1938;
+                                                      return 1942;
                                                     }
                                                 }
                                             }
@@ -13900,7 +14802,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x01001x1xx0xxxxx100xxxxxxxx0xxxx
                                                  cmpeq.  */
-                                              return 1330;
+                                              return 1334;
                                             }
                                           else
                                             {
@@ -13908,7 +14810,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  x01001x1xx0xxxxx100xxxxxxxx1xxxx
                                                  cmpne.  */
-                                              return 1353;
+                                              return 1357;
                                             }
                                         }
                                       else
@@ -13923,7 +14825,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x10000xxxx101xxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1589;
+                                                      return 1593;
                                                     }
                                                   else
                                                     {
@@ -13931,7 +14833,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x11000xxxx101xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1576;
+                                                      return 1580;
                                                     }
                                                 }
                                               else
@@ -13942,7 +14844,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x10100xxxx101xxxxxxxxxxxxx
                                                          ld1w.  */
-                                                      return 1608;
+                                                      return 1612;
                                                     }
                                                   else
                                                     {
@@ -13950,7 +14852,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x11100xxxx101xxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1578;
+                                                      return 1582;
                                                     }
                                                 }
                                             }
@@ -13964,7 +14866,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x10001xxxx101xxxxxxxxxxxxx
                                                          ldnf1sh.  */
-                                                      return 1722;
+                                                      return 1726;
                                                     }
                                                   else
                                                     {
@@ -13972,7 +14874,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x11001xxxx101xxxxxxxxxxxxx
                                                          ldnf1sb.  */
-                                                      return 1719;
+                                                      return 1723;
                                                     }
                                                 }
                                               else
@@ -13983,7 +14885,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x10101xxxx101xxxxxxxxxxxxx
                                                          ldnf1w.  */
-                                                      return 1725;
+                                                      return 1729;
                                                     }
                                                   else
                                                     {
@@ -13991,7 +14893,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          x01001x11101xxxx101xxxxxxxxxxxxx
                                                          ldnf1sb.  */
-                                                      return 1721;
+                                                      return 1725;
                                                     }
                                                 }
                                             }
@@ -14011,7 +14913,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1x000xxxx11xxxxxxxxx0xxxx
                                                          brkpa.  */
-                                                      return 1316;
+                                                      return 1320;
                                                     }
                                                   else
                                                     {
@@ -14019,7 +14921,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1x100xxxx11xxxxxxxxx0xxxx
                                                          brkpas.  */
-                                                      return 1317;
+                                                      return 1321;
                                                     }
                                                 }
                                               else
@@ -14032,7 +14934,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1xx010xx011xxxxxxxxx0xxxx
                                                              ptest.  */
-                                                          return 1802;
+                                                          return 1806;
                                                         }
                                                       else
                                                         {
@@ -14046,7 +14948,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          001001x1xx011xx01100x0xxxxx0xxxx
                                                                          pfirst.  */
-                                                                      return 1772;
+                                                                      return 1776;
                                                                     }
                                                                   else
                                                                     {
@@ -14054,7 +14956,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          001001x1xx011xx01110x0xxxxx0xxxx
                                                                          ptrue.  */
-                                                                      return 1803;
+                                                                      return 1807;
                                                                     }
                                                                 }
                                                               else
@@ -14065,7 +14967,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          001001x1x0011xx011x1x0xxxxx0xxxx
                                                                          rdffr.  */
-                                                                      return 1809;
+                                                                      return 1813;
                                                                     }
                                                                   else
                                                                     {
@@ -14073,7 +14975,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          001001x1x1011xx011x1x0xxxxx0xxxx
                                                                          rdffrs.  */
-                                                                      return 1810;
+                                                                      return 1814;
                                                                     }
                                                                 }
                                                             }
@@ -14083,7 +14985,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx011xx011xxx1xxxxx0xxxx
                                                                  pfalse.  */
-                                                              return 1771;
+                                                              return 1775;
                                                             }
                                                         }
                                                     }
@@ -14097,7 +14999,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx01xxx111x0x0xxxxx0xxxx
                                                                  ptrues.  */
-                                                              return 1804;
+                                                              return 1808;
                                                             }
                                                           else
                                                             {
@@ -14105,7 +15007,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx01xxx111x1x0xxxxx0xxxx
                                                                  rdffr.  */
-                                                              return 1808;
+                                                              return 1812;
                                                             }
                                                         }
                                                       else
@@ -14114,7 +15016,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1xx01xxx111xxx1xxxxx0xxxx
                                                              pnext.  */
-                                                          return 1773;
+                                                          return 1777;
                                                         }
                                                     }
                                                 }
@@ -14127,7 +15029,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1x00xxxxx11xxxxxxxxx1xxxx
                                                      brkpb.  */
-                                                  return 1318;
+                                                  return 1322;
                                                 }
                                               else
                                                 {
@@ -14135,7 +15037,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      001001x1x10xxxxx11xxxxxxxxx1xxxx
                                                      brkpbs.  */
-                                                  return 1319;
+                                                  return 1323;
                                                 }
                                             }
                                         }
@@ -14151,7 +15053,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1000xxxxx110xxxxxxxxxxxxx
                                                          ldnt1w.  */
-                                                      return 1733;
+                                                      return 1737;
                                                     }
                                                   else
                                                     {
@@ -14159,7 +15061,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1100xxxxx110xxxxxxxxxxxxx
                                                          ldnt1d.  */
-                                                      return 1729;
+                                                      return 1733;
                                                     }
                                                 }
                                               else
@@ -14170,7 +15072,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1010xxxxx110xxxxxxxxxxxxx
                                                          ld3w.  */
-                                                      return 1625;
+                                                      return 1629;
                                                     }
                                                   else
                                                     {
@@ -14178,7 +15080,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1110xxxxx110xxxxxxxxxxxxx
                                                          ld3d.  */
-                                                      return 1621;
+                                                      return 1625;
                                                     }
                                                 }
                                             }
@@ -14192,7 +15094,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1000xxxxx111xxxxxxxxxxxxx
                                                          ldnt1w.  */
-                                                      return 1734;
+                                                      return 1738;
                                                     }
                                                   else
                                                     {
@@ -14200,7 +15102,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1100xxxxx111xxxxxxxxxxxxx
                                                          ldnt1d.  */
-                                                      return 1730;
+                                                      return 1734;
                                                     }
                                                 }
                                               else
@@ -14211,7 +15113,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1010xxxxx111xxxxxxxxxxxxx
                                                          ld3w.  */
-                                                      return 1626;
+                                                      return 1630;
                                                     }
                                                   else
                                                     {
@@ -14219,7 +15121,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x1110xxxxx111xxxxxxxxxxxxx
                                                          ld3d.  */
-                                                      return 1622;
+                                                      return 1626;
                                                     }
                                                 }
                                             }
@@ -14248,7 +15150,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000000100xxxxxxxxxxxxx
                                                                      fadd.  */
-                                                                  return 1392;
+                                                                  return 1396;
                                                                 }
                                                               else
                                                                 {
@@ -14256,7 +15158,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000100100xxxxxxxxxxxxx
                                                                      fmaxnm.  */
-                                                                  return 1439;
+                                                                  return 1443;
                                                                 }
                                                             }
                                                           else
@@ -14267,7 +15169,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000010100xxxxxxxxxxxxx
                                                                      fmul.  */
-                                                                  return 1459;
+                                                                  return 1463;
                                                                 }
                                                               else
                                                                 {
@@ -14275,7 +15177,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000110100xxxxxxxxxxxxx
                                                                      fmax.  */
-                                                                  return 1437;
+                                                                  return 1441;
                                                                 }
                                                             }
                                                         }
@@ -14289,7 +15191,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000001100xxxxxxxxxxxxx
                                                                      fsub.  */
-                                                                  return 1485;
+                                                                  return 1489;
                                                                 }
                                                               else
                                                                 {
@@ -14297,7 +15199,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000101100xxxxxxxxxxxxx
                                                                      fminnm.  */
-                                                                  return 1445;
+                                                                  return 1449;
                                                                 }
                                                             }
                                                           else
@@ -14308,7 +15210,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000011100xxxxxxxxxxxxx
                                                                      fsubr.  */
-                                                                  return 1487;
+                                                                  return 1491;
                                                                 }
                                                               else
                                                                 {
@@ -14316,7 +15218,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000111100xxxxxxxxxxxxx
                                                                      fmin.  */
-                                                                  return 1443;
+                                                                  return 1447;
                                                                 }
                                                             }
                                                         }
@@ -14327,7 +15229,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          011001x1xx010xxx100xxxxxxxxxxxxx
                                                          ftmad.  */
-                                                      return 1489;
+                                                      return 1493;
                                                     }
                                                 }
                                               else
@@ -14344,7 +15246,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001000100xxxxxxxxxxxxx
                                                                      fabd.  */
-                                                                  return 1387;
+                                                                  return 1391;
                                                                 }
                                                               else
                                                                 {
@@ -14352,7 +15254,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011000100xxxxxxxxxxxxx
                                                                      fadd.  */
-                                                                  return 1393;
+                                                                  return 1397;
                                                                 }
                                                             }
                                                           else
@@ -14363,7 +15265,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001100100xxxxxxxxxxxxx
                                                                      fdivr.  */
-                                                                  return 1433;
+                                                                  return 1437;
                                                                 }
                                                               else
                                                                 {
@@ -14371,7 +15273,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011100100xxxxxxxxxxxxx
                                                                      fmaxnm.  */
-                                                                  return 1440;
+                                                                  return 1444;
                                                                 }
                                                             }
                                                         }
@@ -14385,7 +15287,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001010100xxxxxxxxxxxxx
                                                                      fmulx.  */
-                                                                  return 1464;
+                                                                  return 1468;
                                                                 }
                                                               else
                                                                 {
@@ -14393,7 +15295,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011010100xxxxxxxxxxxxx
                                                                      fmul.  */
-                                                                  return 1460;
+                                                                  return 1464;
                                                                 }
                                                             }
                                                           else
@@ -14402,7 +15304,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x1110100xxxxxxxxxxxxx
                                                                  fmax.  */
-                                                              return 1438;
+                                                              return 1442;
                                                             }
                                                         }
                                                     }
@@ -14418,7 +15320,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001001100xxxxxxxxxxxxx
                                                                      fscale.  */
-                                                                  return 1482;
+                                                                  return 1486;
                                                                 }
                                                               else
                                                                 {
@@ -14426,7 +15328,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011001100xxxxxxxxxxxxx
                                                                      fsub.  */
-                                                                  return 1486;
+                                                                  return 1490;
                                                                 }
                                                             }
                                                           else
@@ -14437,7 +15339,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001101100xxxxxxxxxxxxx
                                                                      fdiv.  */
-                                                                  return 1432;
+                                                                  return 1436;
                                                                 }
                                                               else
                                                                 {
@@ -14445,7 +15347,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011101100xxxxxxxxxxxxx
                                                                      fminnm.  */
-                                                                  return 1446;
+                                                                  return 1450;
                                                                 }
                                                             }
                                                         }
@@ -14457,7 +15359,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x1011100xxxxxxxxxxxxx
                                                                  fsubr.  */
-                                                              return 1488;
+                                                              return 1492;
                                                             }
                                                           else
                                                             {
@@ -14465,7 +15367,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  011001x1xx0x1111100xxxxxxxxxxxxx
                                                                  fmin.  */
-                                                              return 1444;
+                                                              return 1448;
                                                             }
                                                         }
                                                     }
@@ -14479,7 +15381,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x1xx0xxxxx110xxxxxxxx0xxxx
                                                      fcmuo.  */
-                                                  return 1410;
+                                                  return 1414;
                                                 }
                                               else
                                                 {
@@ -14487,7 +15389,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      011001x1xx0xxxxx110xxxxxxxx1xxxx
                                                      facge.  */
-                                                  return 1389;
+                                                  return 1393;
                                                 }
                                             }
                                         }
@@ -14501,7 +15403,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x1000xxxxx1x0xxxxxxxxxxxxx
                                                      st1w.  */
-                                                  return 1908;
+                                                  return 1912;
                                                 }
                                               else
                                                 {
@@ -14509,7 +15411,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x1100xxxxx1x0xxxxxxxxxxxxx
                                                      st1d.  */
-                                                  return 1887;
+                                                  return 1891;
                                                 }
                                             }
                                           else
@@ -14518,7 +15420,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  111001x1x10xxxxx1x0xxxxxxxxxxxxx
                                                  st1w.  */
-                                              return 1913;
+                                              return 1917;
                                             }
                                         }
                                     }
@@ -14542,7 +15444,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000000101xxxxxxxxxxxxx
                                                                      frintn.  */
-                                                                  return 1476;
+                                                                  return 1480;
                                                                 }
                                                               else
                                                                 {
@@ -14550,7 +15452,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx010000101xxxxxxxxxxxxx
                                                                      scvtf.  */
-                                                                  return 1822;
+                                                                  return 1826;
                                                                 }
                                                             }
                                                           else
@@ -14561,7 +15463,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000100101xxxxxxxxxxxxx
                                                                      frinta.  */
-                                                                  return 1473;
+                                                                  return 1477;
                                                                 }
                                                               else
                                                                 {
@@ -14571,7 +15473,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x0010100101xxxxxxxxxxxxx
                                                                          scvtf.  */
-                                                                      return 1821;
+                                                                      return 1825;
                                                                     }
                                                                   else
                                                                     {
@@ -14581,7 +15483,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x101010100101xxxxxxxxxxxxx
                                                                              scvtf.  */
-                                                                          return 1820;
+                                                                          return 1824;
                                                                         }
                                                                       else
                                                                         {
@@ -14589,7 +15491,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x111010100101xxxxxxxxxxxxx
                                                                              scvtf.  */
-                                                                          return 1824;
+                                                                          return 1828;
                                                                         }
                                                                     }
                                                                 }
@@ -14605,7 +15507,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000010101xxxxxxxxxxxxx
                                                                      frintm.  */
-                                                                  return 1475;
+                                                                  return 1479;
                                                                 }
                                                               else
                                                                 {
@@ -14613,7 +15515,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx010010101xxxxxxxxxxxxx
                                                                      scvtf.  */
-                                                                  return 1819;
+                                                                  return 1823;
                                                                 }
                                                             }
                                                           else
@@ -14624,7 +15526,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000110101xxxxxxxxxxxxx
                                                                      frintx.  */
-                                                                  return 1478;
+                                                                  return 1482;
                                                                 }
                                                               else
                                                                 {
@@ -14634,7 +15536,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x10x010110101xxxxxxxxxxxxx
                                                                          scvtf.  */
-                                                                      return 1823;
+                                                                      return 1827;
                                                                     }
                                                                   else
                                                                     {
@@ -14642,7 +15544,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x11x010110101xxxxxxxxxxxxx
                                                                          scvtf.  */
-                                                                      return 1825;
+                                                                      return 1829;
                                                                     }
                                                                 }
                                                             }
@@ -14662,7 +15564,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x0001000101xxxxxxxxxxxxx
                                                                          fcvt.  */
-                                                                      return 1412;
+                                                                      return 1416;
                                                                     }
                                                                   else
                                                                     {
@@ -14670,7 +15572,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x1001000101xxxxxxxxxxxxx
                                                                          fcvt.  */
-                                                                      return 1414;
+                                                                      return 1418;
                                                                     }
                                                                 }
                                                               else
@@ -14679,7 +15581,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001100101xxxxxxxxxxxxx
                                                                      frecpx.  */
-                                                                  return 1472;
+                                                                  return 1476;
                                                                 }
                                                             }
                                                           else
@@ -14692,7 +15594,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x100001x10101xxxxxxxxxxxxx
                                                                          fcvtx.  */
-                                                                      return 2082;
+                                                                      return 2086;
                                                                     }
                                                                   else
                                                                     {
@@ -14700,7 +15602,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x110001x10101xxxxxxxxxxxxx
                                                                          bfcvt.  */
-                                                                      return 2460;
+                                                                      return 2498;
                                                                     }
                                                                 }
                                                               else
@@ -14709,7 +15611,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1x1001x10101xxxxxxxxxxxxx
                                                                      fcvt.  */
-                                                                  return 1416;
+                                                                  return 1420;
                                                                 }
                                                             }
                                                         }
@@ -14723,7 +15625,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x100011xx0101xxxxxxxxxxxxx
                                                                      flogb.  */
-                                                                  return 2084;
+                                                                  return 2088;
                                                                 }
                                                               else
                                                                 {
@@ -14731,7 +15633,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x110011xx0101xxxxxxxxxxxxx
                                                                      fcvtzs.  */
-                                                                  return 1421;
+                                                                  return 1425;
                                                                 }
                                                             }
                                                           else
@@ -14744,7 +15646,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x1011000101xxxxxxxxxxxxx
                                                                          fcvtzs.  */
-                                                                      return 1422;
+                                                                      return 1426;
                                                                     }
                                                                   else
                                                                     {
@@ -14754,7 +15656,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x101011100101xxxxxxxxxxxxx
                                                                              fcvtzs.  */
-                                                                          return 1419;
+                                                                          return 1423;
                                                                         }
                                                                       else
                                                                         {
@@ -14762,7 +15664,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x111011100101xxxxxxxxxxxxx
                                                                              fcvtzs.  */
-                                                                          return 1423;
+                                                                          return 1427;
                                                                         }
                                                                     }
                                                                 }
@@ -14774,7 +15676,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x1011010101xxxxxxxxxxxxx
                                                                          fcvtzs.  */
-                                                                      return 1418;
+                                                                      return 1422;
                                                                     }
                                                                   else
                                                                     {
@@ -14784,7 +15686,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x101011110101xxxxxxxxxxxxx
                                                                              fcvtzs.  */
-                                                                          return 1420;
+                                                                          return 1424;
                                                                         }
                                                                       else
                                                                         {
@@ -14792,7 +15694,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x111011110101xxxxxxxxxxxxx
                                                                              fcvtzs.  */
-                                                                          return 1424;
+                                                                          return 1428;
                                                                         }
                                                                     }
                                                                 }
@@ -14814,7 +15716,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000001101xxxxxxxxxxxxx
                                                                      frintp.  */
-                                                                  return 1477;
+                                                                  return 1481;
                                                                 }
                                                               else
                                                                 {
@@ -14822,7 +15724,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx010001101xxxxxxxxxxxxx
                                                                      ucvtf.  */
-                                                                  return 1974;
+                                                                  return 1978;
                                                                 }
                                                             }
                                                           else
@@ -14835,7 +15737,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x0001001101xxxxxxxxxxxxx
                                                                          fcvt.  */
-                                                                      return 1413;
+                                                                      return 1417;
                                                                     }
                                                                   else
                                                                     {
@@ -14843,7 +15745,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x1001001101xxxxxxxxxxxxx
                                                                          fcvt.  */
-                                                                      return 1415;
+                                                                      return 1419;
                                                                     }
                                                                 }
                                                               else
@@ -14852,7 +15754,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011001101xxxxxxxxxxxxx
                                                                      fcvtzu.  */
-                                                                  return 1429;
+                                                                  return 1433;
                                                                 }
                                                             }
                                                         }
@@ -14866,7 +15768,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1x00x0101101xxxxxxxxxxxxx
                                                                      ucvtf.  */
-                                                                  return 1973;
+                                                                  return 1977;
                                                                 }
                                                               else
                                                                 {
@@ -14876,7 +15778,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1010x0101101xxxxxxxxxxxxx
                                                                          ucvtf.  */
-                                                                      return 1972;
+                                                                      return 1976;
                                                                     }
                                                                   else
                                                                     {
@@ -14884,7 +15786,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1110x0101101xxxxxxxxxxxxx
                                                                          ucvtf.  */
-                                                                      return 1976;
+                                                                      return 1980;
                                                                     }
                                                                 }
                                                             }
@@ -14896,7 +15798,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001101101xxxxxxxxxxxxx
                                                                      fsqrt.  */
-                                                                  return 1483;
+                                                                  return 1487;
                                                                 }
                                                               else
                                                                 {
@@ -14906,7 +15808,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x1x0011101101xxxxxxxxxxxxx
                                                                          fcvtzu.  */
-                                                                      return 1428;
+                                                                      return 1432;
                                                                     }
                                                                   else
                                                                     {
@@ -14916,7 +15818,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x101011101101xxxxxxxxxxxxx
                                                                              fcvtzu.  */
-                                                                          return 1426;
+                                                                          return 1430;
                                                                         }
                                                                       else
                                                                         {
@@ -14924,7 +15826,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              011001x111011101101xxxxxxxxxxxxx
                                                                              fcvtzu.  */
-                                                                          return 1430;
+                                                                          return 1434;
                                                                         }
                                                                     }
                                                                 }
@@ -14943,7 +15845,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000011101xxxxxxxxxxxxx
                                                                      frintz.  */
-                                                                  return 1479;
+                                                                  return 1483;
                                                                 }
                                                               else
                                                                 {
@@ -14951,7 +15853,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx010011101xxxxxxxxxxxxx
                                                                      ucvtf.  */
-                                                                  return 1971;
+                                                                  return 1975;
                                                                 }
                                                             }
                                                           else
@@ -14962,7 +15864,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx001011101xxxxxxxxxxxxx
                                                                      fcvt.  */
-                                                                  return 1417;
+                                                                  return 1421;
                                                                 }
                                                               else
                                                                 {
@@ -14970,7 +15872,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx011011101xxxxxxxxxxxxx
                                                                      fcvtzu.  */
-                                                                  return 1425;
+                                                                  return 1429;
                                                                 }
                                                             }
                                                         }
@@ -14984,7 +15886,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x1xx000111101xxxxxxxxxxxxx
                                                                      frinti.  */
-                                                                  return 1474;
+                                                                  return 1478;
                                                                 }
                                                               else
                                                                 {
@@ -14994,7 +15896,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x10x010111101xxxxxxxxxxxxx
                                                                          ucvtf.  */
-                                                                      return 1975;
+                                                                      return 1979;
                                                                     }
                                                                   else
                                                                     {
@@ -15002,7 +15904,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          011001x11x010111101xxxxxxxxxxxxx
                                                                          ucvtf.  */
-                                                                      return 1977;
+                                                                      return 1981;
                                                                     }
                                                                 }
                                                             }
@@ -15014,7 +15916,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x10x0x1111101xxxxxxxxxxxxx
                                                                      fcvtzu.  */
-                                                                  return 1427;
+                                                                  return 1431;
                                                                 }
                                                               else
                                                                 {
@@ -15022,7 +15924,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      011001x11x0x1111101xxxxxxxxxxxxx
                                                                      fcvtzu.  */
-                                                                  return 1431;
+                                                                  return 1435;
                                                                 }
                                                             }
                                                         }
@@ -15039,7 +15941,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1000xxxxx101xxxxxxxxxxxxx
                                                          st1w.  */
-                                                      return 1909;
+                                                      return 1913;
                                                     }
                                                   else
                                                     {
@@ -15047,7 +15949,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1100xxxxx101xxxxxxxxxxxxx
                                                          st1d.  */
-                                                      return 1888;
+                                                      return 1892;
                                                     }
                                                 }
                                               else
@@ -15058,7 +15960,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1010xxxxx101xxxxxxxxxxxxx
                                                          st1w.  */
-                                                      return 1916;
+                                                      return 1920;
                                                     }
                                                   else
                                                     {
@@ -15066,7 +15968,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          111001x1110xxxxx101xxxxxxxxxxxxx
                                                          st1d.  */
-                                                      return 1892;
+                                                      return 1896;
                                                     }
                                                 }
                                             }
@@ -15079,7 +15981,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  011001x1xx0xxxxx111xxxxxxxxxxxxx
                                                  facgt.  */
-                                              return 1390;
+                                              return 1394;
                                             }
                                           else
                                             {
@@ -15089,7 +15991,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      111001x1xx00xxxx111xxxxxxxxxxxxx
                                                      st1w.  */
-                                                  return 1917;
+                                                  return 1921;
                                                 }
                                               else
                                                 {
@@ -15101,7 +16003,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x10001xxxx111xxxxxxxxxxxxx
                                                              stnt1w.  */
-                                                          return 1951;
+                                                          return 1955;
                                                         }
                                                       else
                                                         {
@@ -15109,7 +16011,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x11001xxxx111xxxxxxxxxxxxx
                                                              stnt1d.  */
-                                                          return 1947;
+                                                          return 1951;
                                                         }
                                                     }
                                                   else
@@ -15120,7 +16022,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x10101xxxx111xxxxxxxxxxxxx
                                                              st3w.  */
-                                                          return 1935;
+                                                          return 1939;
                                                         }
                                                       else
                                                         {
@@ -15128,7 +16030,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              111001x11101xxxx111xxxxxxxxxxxxx
                                                              st3d.  */
-                                                          return 1931;
+                                                          return 1935;
                                                         }
                                                     }
                                                 }
@@ -15159,7 +16061,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10000010xxxxxxxxxxxxxx
                                                                  cntp.  */
-                                                              return 1359;
+                                                              return 1363;
                                                             }
                                                           else
                                                             {
@@ -15173,7 +16075,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              001001x1xx10100010x000xxxxxxxxxx
                                                                              sqincp.  */
-                                                                          return 1866;
+                                                                          return 1870;
                                                                         }
                                                                       else
                                                                         {
@@ -15181,7 +16083,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                              10987654321098765432109876543210
                                                                              001001x1xx10100010x100xxxxxxxxxx
                                                                              wrffr.  */
-                                                                          return 2039;
+                                                                          return 2043;
                                                                         }
                                                                     }
                                                                   else
@@ -15190,7 +16092,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          001001x1xx10100010xx10xxxxxxxxxx
                                                                          sqincp.  */
-                                                                      return 1868;
+                                                                      return 1872;
                                                                     }
                                                                 }
                                                               else
@@ -15199,7 +16101,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10100010xxx1xxxxxxxxxx
                                                                      sqincp.  */
-                                                                  return 1867;
+                                                                  return 1871;
                                                                 }
                                                             }
                                                         }
@@ -15213,7 +16115,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10x10010x00xxxxxxxxxxx
                                                                      incp.  */
-                                                                  return 1497;
+                                                                  return 1501;
                                                                 }
                                                               else
                                                                 {
@@ -15221,7 +16123,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10x10010x10xxxxxxxxxxx
                                                                      setffr.  */
-                                                                  return 1833;
+                                                                  return 1837;
                                                                 }
                                                             }
                                                           else
@@ -15230,7 +16132,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10x10010xx1xxxxxxxxxxx
                                                                  incp.  */
-                                                              return 1498;
+                                                              return 1502;
                                                             }
                                                         }
                                                     }
@@ -15244,7 +16146,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10xx1010xx00xxxxxxxxxx
                                                                  sqdecp.  */
-                                                              return 1852;
+                                                              return 1856;
                                                             }
                                                           else
                                                             {
@@ -15252,7 +16154,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10xx1010xx10xxxxxxxxxx
                                                                  sqdecp.  */
-                                                              return 1854;
+                                                              return 1858;
                                                             }
                                                         }
                                                       else
@@ -15261,7 +16163,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1xx10xx1010xxx1xxxxxxxxxx
                                                              sqdecp.  */
-                                                          return 1853;
+                                                          return 1857;
                                                         }
                                                     }
                                                 }
@@ -15279,7 +16181,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10x00110xx00xxxxxxxxxx
                                                                      uqincp.  */
-                                                                  return 2014;
+                                                                  return 2018;
                                                                 }
                                                               else
                                                                 {
@@ -15287,7 +16189,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10x10110xx00xxxxxxxxxx
                                                                      decp.  */
-                                                                  return 1372;
+                                                                  return 1376;
                                                                 }
                                                             }
                                                           else
@@ -15296,7 +16198,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10xx1110xx00xxxxxxxxxx
                                                                  uqdecp.  */
-                                                              return 2000;
+                                                              return 2004;
                                                             }
                                                         }
                                                       else
@@ -15309,7 +16211,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10x00110xx10xxxxxxxxxx
                                                                      uqincp.  */
-                                                                  return 2015;
+                                                                  return 2019;
                                                                 }
                                                               else
                                                                 {
@@ -15317,7 +16219,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                      10987654321098765432109876543210
                                                                      001001x1xx10x10110xx10xxxxxxxxxx
                                                                      decp.  */
-                                                                  return 1373;
+                                                                  return 1377;
                                                                 }
                                                             }
                                                           else
@@ -15326,7 +16228,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10xx1110xx10xxxxxxxxxx
                                                                  uqdecp.  */
-                                                              return 2001;
+                                                              return 2005;
                                                             }
                                                         }
                                                     }
@@ -15338,7 +16240,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1xx10xx0110xxx1xxxxxxxxxx
                                                              uqincp.  */
-                                                          return 2016;
+                                                          return 2020;
                                                         }
                                                       else
                                                         {
@@ -15346,7 +16248,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1xx10xx1110xxx1xxxxxxxxxx
                                                              uqdecp.  */
-                                                          return 2002;
+                                                          return 2006;
                                                         }
                                                     }
                                                 }
@@ -15361,7 +16263,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x10010xxxx10xxxxxxxxxxxxxx
                                                          ld1sh.  */
-                                                      return 1590;
+                                                      return 1594;
                                                     }
                                                   else
                                                     {
@@ -15369,7 +16271,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x11010xxxx10xxxxxxxxxxxxxx
                                                          ld1sb.  */
-                                                      return 1577;
+                                                      return 1581;
                                                     }
                                                 }
                                               else
@@ -15380,7 +16282,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x10110xxxx10xxxxxxxxxxxxxx
                                                          ld1w.  */
-                                                      return 1609;
+                                                      return 1613;
                                                     }
                                                   else
                                                     {
@@ -15388,7 +16290,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          101001x11110xxxx10xxxxxxxxxxxxxx
                                                          ld1d.  */
-                                                      return 1529;
+                                                      return 1533;
                                                     }
                                                 }
                                             }
@@ -15403,7 +16305,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x01001x10011xxxx10xxxxxxxxxxxxxx
                                                      ldnf1sh.  */
-                                                  return 1723;
+                                                  return 1727;
                                                 }
                                               else
                                                 {
@@ -15411,7 +16313,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x01001x11011xxxx10xxxxxxxxxxxxxx
                                                      ldnf1sb.  */
-                                                  return 1720;
+                                                  return 1724;
                                                 }
                                             }
                                           else
@@ -15422,7 +16324,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x01001x10111xxxx10xxxxxxxxxxxxxx
                                                      ldnf1w.  */
-                                                  return 1726;
+                                                  return 1730;
                                                 }
                                               else
                                                 {
@@ -15430,7 +16332,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x01001x11111xxxx10xxxxxxxxxxxxxx
                                                      ldnf1d.  */
-                                                  return 1715;
+                                                  return 1719;
                                                 }
                                             }
                                         }
@@ -15453,7 +16355,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10000011xxxxxxxxxxxxxx
                                                                  add.  */
-                                                              return 1286;
+                                                              return 1290;
                                                             }
                                                           else
                                                             {
@@ -15461,7 +16363,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx11000011xxxxxxxxxxxxxx
                                                                  mul.  */
-                                                              return 1755;
+                                                              return 1759;
                                                             }
                                                         }
                                                       else
@@ -15472,7 +16374,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10100011xxxxxxxxxxxxxx
                                                                  smax.  */
-                                                              return 1834;
+                                                              return 1838;
                                                             }
                                                           else
                                                             {
@@ -15480,7 +16382,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx11100011xxxxxxxxxxxxxx
                                                                  dup.  */
-                                                              return 1378;
+                                                              return 1382;
                                                             }
                                                         }
                                                     }
@@ -15490,7 +16392,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xx10011xxxxxxxxxxxxxx
                                                          sqadd.  */
-                                                      return 1843;
+                                                      return 1847;
                                                     }
                                                 }
                                               else
@@ -15501,7 +16403,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xx01011xxxxxxxxxxxxxx
                                                          smin.  */
-                                                      return 1837;
+                                                      return 1841;
                                                     }
                                                   else
                                                     {
@@ -15509,7 +16411,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xx11011xxxxxxxxxxxxxx
                                                          sqsub.  */
-                                                      return 1873;
+                                                      return 1877;
                                                     }
                                                 }
                                             }
@@ -15525,7 +16427,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              001001x1xx1x000111xxxxxxxxxxxxxx
                                                              sub.  */
-                                                          return 1955;
+                                                          return 1959;
                                                         }
                                                       else
                                                         {
@@ -15535,7 +16437,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx10100111xxxxxxxxxxxxxx
                                                                  umax.  */
-                                                              return 1983;
+                                                              return 1987;
                                                             }
                                                           else
                                                             {
@@ -15543,7 +16445,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  001001x1xx11100111xxxxxxxxxxxxxx
                                                                  fdup.  */
-                                                              return 1434;
+                                                              return 1438;
                                                             }
                                                         }
                                                     }
@@ -15553,123 +16455,437 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          001001x1xx1xx10111xxxxxxxxxxxxxx
                                                          uqadd.  */
-                                                      return 1991;
+                                                      return 1995;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 18) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 19) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             001001x1xx1x001111xxxxxxxxxxxxxx
+                                                             subr.  */
+                                                          return 1961;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             001001x1xx1x101111xxxxxxxxxxxxxx
+                                                             umin.  */
+                                                          return 1990;
+                                                        }
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         001001x1xx1xx11111xxxxxxxxxxxxxx
+                                                         uqsub.  */
+                                                      return 2025;
+                                                    }
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 13) & 0x1) == 0)
+                                            {
+                                              if (((word >> 22) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1001xxxxx110xxxxxxxxxxxxx
+                                                         ld2w.  */
+                                                      return 1621;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1101xxxxx110xxxxxxxxxxxxx
+                                                         ld2d.  */
+                                                      return 1617;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1011xxxxx110xxxxxxxxxxxxx
+                                                         ld4w.  */
+                                                      return 1637;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1111xxxxx110xxxxxxxxxxxxx
+                                                         ld4d.  */
+                                                      return 1633;
+                                                    }
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 22) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1001xxxxx111xxxxxxxxxxxxx
+                                                         ld2w.  */
+                                                      return 1622;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1101xxxxx111xxxxxxxxxxxxx
+                                                         ld2d.  */
+                                                      return 1618;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1011xxxxx111xxxxxxxxxxxxx
+                                                         ld4w.  */
+                                                      return 1638;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         101001x1111xxxxx111xxxxxxxxxxxxx
+                                                         ld4d.  */
+                                                      return 1634;
+                                                    }
+                                                }
+                                            }
+                                        }
+                                    }
+                                }
+                              else
+                                {
+                                  if (((word >> 13) & 0x1) == 0)
+                                    {
+                                      if (((word >> 31) & 0x1) == 0)
+                                        {
+                                          if (((word >> 14) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 011001x1xx1xxxxx100xxxxxxxxxxxxx
+                                                 fmad.  */
+                                              return 1440;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 011001x1xx1xxxxx110xxxxxxxxxxxxx
+                                                 fnmad.  */
+                                              return 1470;
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 22) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     111001x1001xxxxx1x0xxxxxxxxxxxxx
+                                                     st1w.  */
+                                                  return 1914;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     111001x1101xxxxx1x0xxxxxxxxxxxxx
+                                                     st1d.  */
+                                                  return 1893;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 111001x1x11xxxxx1x0xxxxxxxxxxxxx
+                                                 st1w.  */
+                                              return 1919;
+                                            }
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 14) & 0x1) == 0)
+                                        {
+                                          if (((word >> 31) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 011001x1xx1xxxxx101xxxxxxxxxxxxx
+                                                 fmsb.  */
+                                              return 1461;
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 22) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         111001x1001xxxxx101xxxxxxxxxxxxx
+                                                         st1w.  */
+                                                      return 1915;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         111001x1101xxxxx101xxxxxxxxxxxxx
+                                                         st1d.  */
+                                                      return 1894;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     111001x1x11xxxxx101xxxxxxxxxxxxx
+                                                     st1w.  */
+                                                  return 1922;
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 31) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 011001x1xx1xxxxx111xxxxxxxxxxxxx
+                                                 fnmsb.  */
+                                              return 1473;
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 20) & 0x1) == 0)
+                                                {
+                                                  if (((word >> 23) & 0x1) == 0)
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         111001x10x10xxxx111xxxxxxxxxxxxx
+                                                         st1w.  */
+                                                      return 1923;
+                                                    }
+                                                  else
+                                                    {
+                                                      /* 33222222222211111111110000000000
+                                                         10987654321098765432109876543210
+                                                         111001x11x10xxxx111xxxxxxxxxxxxx
+                                                         st1d.  */
+                                                      return 1897;
+                                                    }
+                                                }
+                                              else
+                                                {
+                                                  if (((word >> 22) & 0x1) == 0)
+                                                    {
+                                                      if (((word >> 23) & 0x1) == 0)
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             111001x10011xxxx111xxxxxxxxxxxxx
+                                                             st2w.  */
+                                                          return 1931;
+                                                        }
+                                                      else
+                                                        {
+                                                          /* 33222222222211111111110000000000
+                                                             10987654321098765432109876543210
+                                                             111001x11011xxxx111xxxxxxxxxxxxx
+                                                             st2d.  */
+                                                          return 1927;
+                                                        }
                                                     }
-                                                }
-                                              else
-                                                {
-                                                  if (((word >> 18) & 0x1) == 0)
+                                                  else
                                                     {
-                                                      if (((word >> 19) & 0x1) == 0)
+                                                      if (((word >> 23) & 0x1) == 0)
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             001001x1xx1x001111xxxxxxxxxxxxxx
-                                                             subr.  */
-                                                          return 1957;
+                                                             111001x10111xxxx111xxxxxxxxxxxxx
+                                                             st4w.  */
+                                                          return 1947;
                                                         }
                                                       else
                                                         {
                                                           /* 33222222222211111111110000000000
                                                              10987654321098765432109876543210
-                                                             001001x1xx1x101111xxxxxxxxxxxxxx
-                                                             umin.  */
-                                                          return 1986;
+                                                             111001x11111xxxx111xxxxxxxxxxxxx
+                                                             st4d.  */
+                                                          return 1943;
                                                         }
                                                     }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         001001x1xx1xx11111xxxxxxxxxxxxxx
-                                                         uqsub.  */
-                                                      return 2021;
-                                                    }
                                                 }
                                             }
                                         }
-                                      else
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+          else
+            {
+              if (((word >> 29) & 0x1) == 0)
+                {
+                  if (((word >> 30) & 0x1) == 0)
+                    {
+                      if (((word >> 31) & 0x1) == 0)
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             000101xxxxxxxxxxxxxxxxxxxxxxxxxx
+                             b.  */
+                          return 636;
+                        }
+                      else
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             100101xxxxxxxxxxxxxxxxxxxxxxxxxx
+                             bl.  */
+                          return 637;
+                        }
+                    }
+                  else
+                    {
+                      if (((word >> 24) & 0x1) == 0)
+                        {
+                          if (((word >> 4) & 0x1) == 0)
+                            {
+                              if (((word >> 25) & 0x1) == 0)
+                                {
+                                  if (((word >> 31) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         01010100xxxxxxxxxxxxxxxxxxx0xxxx
+                                         b.c.  */
+                                      return 657;
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 0) & 0x1) == 0)
                                         {
-                                          if (((word >> 13) & 0x1) == 0)
+                                          if (((word >> 1) & 0x1) == 0)
                                             {
-                                              if (((word >> 22) & 0x1) == 0)
+                                              if (((word >> 21) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 23) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         101001x1001xxxxx110xxxxxxxxxxxxx
-                                                         ld2w.  */
-                                                      return 1617;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         101001x1101xxxxx110xxxxxxxxxxxxx
-                                                         ld2d.  */
-                                                      return 1613;
-                                                    }
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx0xxxxxxxxxxxxxxxx0xx00
+                                                     hlt.  */
+                                                  return 753;
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 23) & 0x1) == 0)
+                                                  if (((word >> 22) & 0x1) == 0)
                                                     {
                                                       /* 33222222222211111111110000000000
                                                          10987654321098765432109876543210
-                                                         101001x1011xxxxx110xxxxxxxxxxxxx
-                                                         ld4w.  */
-                                                      return 1633;
+                                                         11010100x01xxxxxxxxxxxxxxxx0xx00
+                                                         brk.  */
+                                                      return 752;
                                                     }
                                                   else
                                                     {
                                                       /* 33222222222211111111110000000000
                                                          10987654321098765432109876543210
-                                                         101001x1111xxxxx110xxxxxxxxxxxxx
-                                                         ld4d.  */
-                                                      return 1629;
+                                                         11010100x11xxxxxxxxxxxxxxxx0xx00
+                                                         tcancel.  */
+                                                      return 1196;
                                                     }
                                                 }
                                             }
                                           else
                                             {
-                                              if (((word >> 22) & 0x1) == 0)
+                                              if (((word >> 21) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 23) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         101001x1001xxxxx111xxxxxxxxxxxxx
-                                                         ld2w.  */
-                                                      return 1618;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         101001x1101xxxxx111xxxxxxxxxxxxx
-                                                         ld2d.  */
-                                                      return 1614;
-                                                    }
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx0xxxxxxxxxxxxxxxx0xx10
+                                                     hvc.  */
+                                                  return 750;
                                                 }
                                               else
                                                 {
-                                                  if (((word >> 23) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         101001x1011xxxxx111xxxxxxxxxxxxx
-                                                         ld4w.  */
-                                                      return 1634;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         101001x1111xxxxx111xxxxxxxxxxxxx
-                                                         ld4d.  */
-                                                      return 1630;
-                                                    }
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx1xxxxxxxxxxxxxxxx0xx10
+                                                     dcps2.  */
+                                                  return 756;
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 1) & 0x1) == 0)
+                                            {
+                                              if (((word >> 21) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx0xxxxxxxxxxxxxxxx0xx01
+                                                     svc.  */
+                                                  return 749;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx1xxxxxxxxxxxxxxxx0xx01
+                                                     dcps1.  */
+                                                  return 755;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 21) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx0xxxxxxxxxxxxxxxx0xx11
+                                                     smc.  */
+                                                  return 751;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     11010100xx1xxxxxxxxxxxxxxxx0xx11
+                                                     dcps3.  */
+                                                  return 757;
                                                 }
                                             }
                                         }
@@ -15677,28 +16893,72 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                 }
                               else
                                 {
-                                  if (((word >> 13) & 0x1) == 0)
+                                  if (((word >> 21) & 0x1) == 0)
                                     {
-                                      if (((word >> 31) & 0x1) == 0)
+                                      if (((word >> 22) & 0x1) == 0)
                                         {
-                                          if (((word >> 14) & 0x1) == 0)
+                                          if (((word >> 23) & 0x1) == 0)
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 011001x1xx1xxxxx100xxxxxxxxxxxxx
-                                                 fmad.  */
-                                              return 1436;
+                                                 x1010110000xxxxxxxxxxxxxxxx0xxxx
+                                                 br.  */
+                                              return 638;
                                             }
                                           else
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 011001x1xx1xxxxx110xxxxxxxxxxxxx
-                                                 fnmad.  */
-                                              return 1466;
+                                                 x1010110100xxxxxxxxxxxxxxxx0xxxx
+                                                 eret.  */
+                                              return 641;
                                             }
                                         }
                                       else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x1010110x10xxxxxxxxxxxxxxxx0xxxx
+                                             ret.  */
+                                          return 640;
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 23) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x10101100x1xxxxxxxxxxxxxxxx0xxxx
+                                             blr.  */
+                                          return 639;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x10101101x1xxxxxxxxxxxxxxxx0xxxx
+                                             drps.  */
+                                          return 642;
+                                        }
+                                    }
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 25) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x1010100xxxxxxxxxxxxxxxxxxx1xxxx
+                                     bc.c.  */
+                                  return 2634;
+                                }
+                              else
+                                {
+                                  if (((word >> 10) & 0x1) == 0)
+                                    {
+                                      if (((word >> 21) & 0x1) == 0)
                                         {
                                           if (((word >> 22) & 0x1) == 0)
                                             {
@@ -15706,669 +16966,902 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                 {
                                                   /* 33222222222211111111110000000000
                                                      10987654321098765432109876543210
-                                                     111001x1001xxxxx1x0xxxxxxxxxxxxx
-                                                     st1w.  */
-                                                  return 1910;
+                                                     x1010110000xxxxxxxxxx0xxxxx1xxxx
+                                                     braaz.  */
+                                                  return 647;
                                                 }
                                               else
                                                 {
                                                   /* 33222222222211111111110000000000
                                                      10987654321098765432109876543210
-                                                     111001x1101xxxxx1x0xxxxxxxxxxxxx
-                                                     st1d.  */
-                                                  return 1889;
+                                                     x1010110100xxxxxxxxxx0xxxxx1xxxx
+                                                     eretaa.  */
+                                                  return 653;
                                                 }
                                             }
                                           else
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 111001x1x11xxxxx1x0xxxxxxxxxxxxx
-                                                 st1w.  */
-                                              return 1915;
+                                                 x1010110x10xxxxxxxxxx0xxxxx1xxxx
+                                                 retaa.  */
+                                              return 651;
                                             }
                                         }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x1010110xx1xxxxxxxxxx0xxxxx1xxxx
+                                             blraaz.  */
+                                          return 649;
+                                        }
                                     }
                                   else
                                     {
-                                      if (((word >> 14) & 0x1) == 0)
+                                      if (((word >> 21) & 0x1) == 0)
                                         {
-                                          if (((word >> 31) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 011001x1xx1xxxxx101xxxxxxxxxxxxx
-                                                 fmsb.  */
-                                              return 1457;
-                                            }
-                                          else
+                                          if (((word >> 22) & 0x1) == 0)
                                             {
-                                              if (((word >> 22) & 0x1) == 0)
+                                              if (((word >> 23) & 0x1) == 0)
                                                 {
-                                                  if (((word >> 23) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         111001x1001xxxxx101xxxxxxxxxxxxx
-                                                         st1w.  */
-                                                      return 1911;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         111001x1101xxxxx101xxxxxxxxxxxxx
-                                                         st1d.  */
-                                                      return 1890;
-                                                    }
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     x1010110000xxxxxxxxxx1xxxxx1xxxx
+                                                     brabz.  */
+                                                  return 648;
                                                 }
                                               else
                                                 {
                                                   /* 33222222222211111111110000000000
                                                      10987654321098765432109876543210
-                                                     111001x1x11xxxxx101xxxxxxxxxxxxx
-                                                     st1w.  */
-                                                  return 1918;
+                                                     x1010110100xxxxxxxxxx1xxxxx1xxxx
+                                                     eretab.  */
+                                                  return 654;
                                                 }
                                             }
-                                        }
-                                      else
-                                        {
-                                          if (((word >> 31) & 0x1) == 0)
+                                          else
                                             {
                                               /* 33222222222211111111110000000000
                                                  10987654321098765432109876543210
-                                                 011001x1xx1xxxxx111xxxxxxxxxxxxx
-                                                 fnmsb.  */
-                                              return 1469;
-                                            }
-                                          else
-                                            {
-                                              if (((word >> 20) & 0x1) == 0)
-                                                {
-                                                  if (((word >> 23) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         111001x10x10xxxx111xxxxxxxxxxxxx
-                                                         st1w.  */
-                                                      return 1919;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         111001x11x10xxxx111xxxxxxxxxxxxx
-                                                         st1d.  */
-                                                      return 1893;
-                                                    }
-                                                }
-                                              else
-                                                {
-                                                  if (((word >> 22) & 0x1) == 0)
-                                                    {
-                                                      if (((word >> 23) & 0x1) == 0)
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             111001x10011xxxx111xxxxxxxxxxxxx
-                                                             st2w.  */
-                                                          return 1927;
-                                                        }
-                                                      else
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             111001x11011xxxx111xxxxxxxxxxxxx
-                                                             st2d.  */
-                                                          return 1923;
-                                                        }
-                                                    }
-                                                  else
-                                                    {
-                                                      if (((word >> 23) & 0x1) == 0)
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             111001x10111xxxx111xxxxxxxxxxxxx
-                                                             st4w.  */
-                                                          return 1943;
-                                                        }
-                                                      else
-                                                        {
-                                                          /* 33222222222211111111110000000000
-                                                             10987654321098765432109876543210
-                                                             111001x11111xxxx111xxxxxxxxxxxxx
-                                                             st4d.  */
-                                                          return 1939;
-                                                        }
-                                                    }
-                                                }
+                                                 x1010110x10xxxxxxxxxx1xxxxx1xxxx
+                                                 retab.  */
+                                              return 652;
                                             }
                                         }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             x1010110xx1xxxxxxxxxx1xxxxx1xxxx
+                                             blrabz.  */
+                                          return 650;
+                                        }
+                                    }
+                                }
+                            }
+                        }
+                      else
+                        {
+                          if (((word >> 21) & 0x1) == 0)
+                            {
+                              if (((word >> 25) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x1010101xx0xxxxxxxxxxxxxxxxxxxxx
+                                     xaflag.  */
+                                  return 811;
+                                }
+                              else
+                                {
+                                  if (((word >> 10) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1010111xx0xxxxxxxxxx0xxxxxxxxxx
+                                         braa.  */
+                                      return 643;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1010111xx0xxxxxxxxxx1xxxxxxxxxx
+                                         brab.  */
+                                      return 644;
+                                    }
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 25) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     x1010101xx1xxxxxxxxxxxxxxxxxxxxx
+                                     tstart.  */
+                                  return 1193;
+                                }
+                              else
+                                {
+                                  if (((word >> 10) & 0x1) == 0)
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1010111xx1xxxxxxxxxx0xxxxxxxxxx
+                                         blraa.  */
+                                      return 645;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         x1010111xx1xxxxxxxxxx1xxxxxxxxxx
+                                         blrab.  */
+                                      return 646;
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+              else
+                {
+                  if (((word >> 24) & 0x1) == 0)
+                    {
+                      if (((word >> 25) & 0x1) == 0)
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xx110100xxxxxxxxxxxxxxxxxxxxxxxx
+                             cbz.  */
+                          return 655;
+                        }
+                      else
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xx110110xxxxxxxxxxxxxxxxxxxxxxxx
+                             tbz.  */
+                          return 1251;
+                        }
+                    }
+                  else
+                    {
+                      if (((word >> 25) & 0x1) == 0)
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xx110101xxxxxxxxxxxxxxxxxxxxxxxx
+                             cbnz.  */
+                          return 656;
+                        }
+                      else
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xx110111xxxxxxxxxxxxxxxxxxxxxxxx
+                             tbnz.  */
+                          return 1252;
+                        }
+                    }
+                }
+            }
+        }
+      else
+        {
+          if (((word >> 25) & 0x1) == 0)
+            {
+              if (((word >> 28) & 0x1) == 0)
+                {
+                  if (((word >> 22) & 0x1) == 0)
+                    {
+                      if (((word >> 23) & 0x1) == 0)
+                        {
+                          if (((word >> 24) & 0x1) == 0)
+                            {
+                              if (((word >> 29) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     xx00110000xxxxxxxxxxxxxxxxxxxxxx
+                                     st4.  */
+                                  return 440;
+                                }
+                              else
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     xx10110000xxxxxxxxxxxxxxxxxxxxxx
+                                     stnp.  */
+                                  return 973;
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 29) & 0x1) == 0)
+                                {
+                                  if (((word >> 13) & 0x1) == 0)
+                                    {
+                                      if (((word >> 21) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101000xxxxxxx0xxxxxxxxxxxxx
+                                             st1.  */
+                                          return 456;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101001xxxxxxx0xxxxxxxxxxxxx
+                                             st2.  */
+                                          return 458;
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 21) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101000xxxxxxx1xxxxxxxxxxxxx
+                                             st3.  */
+                                          return 457;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101001xxxxxxx1xxxxxxxxxxxxx
+                                             st4.  */
+                                          return 459;
+                                        }
                                     }
                                 }
+                              else
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     xx10110100xxxxxxxxxxxxxxxxxxxxxx
+                                     stp.  */
+                                  return 977;
+                                }
                             }
                         }
-                    }
-                }
-            }
-          else
-            {
-              if (((word >> 29) & 0x1) == 0)
-                {
-                  if (((word >> 30) & 0x1) == 0)
-                    {
-                      if (((word >> 31) & 0x1) == 0)
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             000101xxxxxxxxxxxxxxxxxxxxxxxxxx
-                             b.  */
-                          return 636;
-                        }
                       else
                         {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             100101xxxxxxxxxxxxxxxxxxxxxxxxxx
-                             bl.  */
-                          return 637;
-                        }
-                    }
-                  else
-                    {
-                      if (((word >> 24) & 0x1) == 0)
-                        {
-                          if (((word >> 4) & 0x1) == 0)
+                          if (((word >> 29) & 0x1) == 0)
                             {
-                              if (((word >> 25) & 0x1) == 0)
+                              if (((word >> 21) & 0x1) == 0)
                                 {
-                                  if (((word >> 31) & 0x1) == 0)
+                                  if (((word >> 24) & 0x1) == 0)
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         01010100xxxxxxxxxxxxxxxxxxx0xxxx
-                                         b.c.  */
-                                      return 657;
+                                         xx001100100xxxxxxxxxxxxxxxxxxxxx
+                                         st4.  */
+                                      return 448;
                                     }
                                   else
                                     {
-                                      if (((word >> 0) & 0x1) == 0)
+                                      if (((word >> 13) & 0x1) == 0)
                                         {
-                                          if (((word >> 1) & 0x1) == 0)
-                                            {
-                                              if (((word >> 21) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx0xxxxxxxxxxxxxxxx0xx00
-                                                     hlt.  */
-                                                  return 753;
-                                                }
-                                              else
-                                                {
-                                                  if (((word >> 22) & 0x1) == 0)
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         11010100x01xxxxxxxxxxxxxxxx0xx00
-                                                         brk.  */
-                                                      return 752;
-                                                    }
-                                                  else
-                                                    {
-                                                      /* 33222222222211111111110000000000
-                                                         10987654321098765432109876543210
-                                                         11010100x11xxxxxxxxxxxxxxxx0xx00
-                                                         tcancel.  */
-                                                      return 1196;
-                                                    }
-                                                }
-                                            }
-                                          else
-                                            {
-                                              if (((word >> 21) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx0xxxxxxxxxxxxxxxx0xx10
-                                                     hvc.  */
-                                                  return 750;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx1xxxxxxxxxxxxxxxx0xx10
-                                                     dcps2.  */
-                                                  return 756;
-                                                }
-                                            }
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101100xxxxxxx0xxxxxxxxxxxxx
+                                             st1.  */
+                                          return 468;
                                         }
                                       else
                                         {
-                                          if (((word >> 1) & 0x1) == 0)
-                                            {
-                                              if (((word >> 21) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx0xxxxxxxxxxxxxxxx0xx01
-                                                     svc.  */
-                                                  return 749;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx1xxxxxxxxxxxxxxxx0xx01
-                                                     dcps1.  */
-                                                  return 755;
-                                                }
-                                            }
-                                          else
-                                            {
-                                              if (((word >> 21) & 0x1) == 0)
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx0xxxxxxxxxxxxxxxx0xx11
-                                                     smc.  */
-                                                  return 751;
-                                                }
-                                              else
-                                                {
-                                                  /* 33222222222211111111110000000000
-                                                     10987654321098765432109876543210
-                                                     11010100xx1xxxxxxxxxxxxxxxx0xx11
-                                                     dcps3.  */
-                                                  return 757;
-                                                }
-                                            }
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101100xxxxxxx1xxxxxxxxxxxxx
+                                             st3.  */
+                                          return 469;
                                         }
                                     }
                                 }
                               else
                                 {
-                                  if (((word >> 21) & 0x1) == 0)
+                                  if (((word >> 13) & 0x1) == 0)
                                     {
-                                      if (((word >> 22) & 0x1) == 0)
-                                        {
-                                          if (((word >> 23) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x1010110000xxxxxxxxxxxxxxxx0xxxx
-                                                 br.  */
-                                              return 638;
-                                            }
-                                          else
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x1010110100xxxxxxxxxxxxxxxx0xxxx
-                                                 eret.  */
-                                              return 641;
-                                            }
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         xx00110x101xxxxxxx0xxxxxxxxxxxxx
+                                         st2.  */
+                                      return 470;
+                                    }
+                                  else
+                                    {
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         xx00110x101xxxxxxx1xxxxxxxxxxxxx
+                                         st4.  */
+                                      return 471;
+                                    }
+                                }
+                            }
+                          else
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 xx10110x10xxxxxxxxxxxxxxxxxxxxxx
+                                 stp.  */
+                              return 983;
+                            }
+                        }
+                    }
+                  else
+                    {
+                      if (((word >> 23) & 0x1) == 0)
+                        {
+                          if (((word >> 24) & 0x1) == 0)
+                            {
+                              if (((word >> 29) & 0x1) == 0)
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     xx00110001xxxxxxxxxxxxxxxxxxxxxx
+                                     ld4.  */
+                                  return 444;
+                                }
+                              else
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     xx10110001xxxxxxxxxxxxxxxxxxxxxx
+                                     ldnp.  */
+                                  return 974;
+                                }
+                            }
+                          else
+                            {
+                              if (((word >> 29) & 0x1) == 0)
+                                {
+                                  if (((word >> 13) & 0x1) == 0)
+                                    {
+                                      if (((word >> 21) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101010xxxxxxx0xxxxxxxxxxxxx
+                                             ld1.  */
+                                          return 460;
                                         }
                                       else
                                         {
                                           /* 33222222222211111111110000000000
                                              10987654321098765432109876543210
-                                             x1010110x10xxxxxxxxxxxxxxxx0xxxx
-                                             ret.  */
-                                          return 640;
+                                             xx001101011xxxxxxx0xxxxxxxxxxxxx
+                                             ld2.  */
+                                          return 464;
                                         }
                                     }
                                   else
                                     {
-                                      if (((word >> 23) & 0x1) == 0)
+                                      if (((word >> 21) & 0x1) == 0)
                                         {
                                           /* 33222222222211111111110000000000
                                              10987654321098765432109876543210
-                                             x10101100x1xxxxxxxxxxxxxxxx0xxxx
-                                             blr.  */
-                                          return 639;
+                                             xx001101010xxxxxxx1xxxxxxxxxxxxx
+                                             ld3.  */
+                                          return 461;
                                         }
                                       else
                                         {
                                           /* 33222222222211111111110000000000
                                              10987654321098765432109876543210
-                                             x10101101x1xxxxxxxxxxxxxxxx0xxxx
-                                             drps.  */
-                                          return 642;
+                                             xx001101011xxxxxxx1xxxxxxxxxxxxx
+                                             ld4.  */
+                                          return 465;
                                         }
                                     }
                                 }
+                              else
+                                {
+                                  /* 33222222222211111111110000000000
+                                     10987654321098765432109876543210
+                                     xx10110101xxxxxxxxxxxxxxxxxxxxxx
+                                     ldp.  */
+                                  return 978;
+                                }
                             }
-                          else
+                        }
+                      else
+                        {
+                          if (((word >> 29) & 0x1) == 0)
                             {
-                              if (((word >> 10) & 0x1) == 0)
+                              if (((word >> 21) & 0x1) == 0)
                                 {
-                                  if (((word >> 21) & 0x1) == 0)
+                                  if (((word >> 24) & 0x1) == 0)
                                     {
-                                      if (((word >> 22) & 0x1) == 0)
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         xx001100110xxxxxxxxxxxxxxxxxxxxx
+                                         ld4.  */
+                                      return 452;
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 13) & 0x1) == 0)
                                         {
-                                          if (((word >> 23) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x10101x0000xxxxxxxxxx0xxxxx1xxxx
-                                                 braaz.  */
-                                              return 647;
-                                            }
-                                          else
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x10101x0100xxxxxxxxxx0xxxxx1xxxx
-                                                 eretaa.  */
-                                              return 653;
-                                            }
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             xx001101110xxxxxxx0xxxxxxxxxxxxx
+                                             ld1.  */
+                                          return 472;
                                         }
                                       else
                                         {
                                           /* 33222222222211111111110000000000
                                              10987654321098765432109876543210
-                                             x10101x0x10xxxxxxxxxx0xxxxx1xxxx
-                                             retaa.  */
-                                          return 651;
+                                             xx001101110xxxxxxx1xxxxxxxxxxxxx
+                                             ld3.  */
+                                          return 473;
                                         }
                                     }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         x10101x0xx1xxxxxxxxxx0xxxxx1xxxx
-                                         blraaz.  */
-                                      return 649;
-                                    }
                                 }
                               else
                                 {
-                                  if (((word >> 21) & 0x1) == 0)
+                                  if (((word >> 13) & 0x1) == 0)
                                     {
-                                      if (((word >> 22) & 0x1) == 0)
-                                        {
-                                          if (((word >> 23) & 0x1) == 0)
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x10101x0000xxxxxxxxxx1xxxxx1xxxx
-                                                 brabz.  */
-                                              return 648;
-                                            }
-                                          else
-                                            {
-                                              /* 33222222222211111111110000000000
-                                                 10987654321098765432109876543210
-                                                 x10101x0100xxxxxxxxxx1xxxxx1xxxx
-                                                 eretab.  */
-                                              return 654;
-                                            }
-                                        }
-                                      else
-                                        {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             x10101x0x10xxxxxxxxxx1xxxxx1xxxx
-                                             retab.  */
-                                          return 652;
-                                        }
+                                      /* 33222222222211111111110000000000
+                                         10987654321098765432109876543210
+                                         xx00110x111xxxxxxx0xxxxxxxxxxxxx
+                                         ld2.  */
+                                      return 476;
                                     }
                                   else
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         x10101x0xx1xxxxxxxxxx1xxxxx1xxxx
-                                         blrabz.  */
-                                      return 650;
+                                         xx00110x111xxxxxxx1xxxxxxxxxxxxx
+                                         ld4.  */
+                                      return 477;
                                     }
                                 }
                             }
+                          else
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 xx10110x11xxxxxxxxxxxxxxxxxxxxxx
+                                 ldp.  */
+                              return 984;
+                            }
+                        }
+                    }
+                }
+              else
+                {
+                  if (((word >> 24) & 0x1) == 0)
+                    {
+                      if (((word >> 29) & 0x1) == 0)
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xx011100xxxxxxxxxxxxxxxxxxxxxxxx
+                             ldr.  */
+                          return 988;
                         }
                       else
                         {
-                          if (((word >> 21) & 0x1) == 0)
+                          if (((word >> 10) & 0x1) == 0)
                             {
-                              if (((word >> 25) & 0x1) == 0)
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     x1010101xx0xxxxxxxxxxxxxxxxxxxxx
-                                     xaflag.  */
-                                  return 811;
-                                }
-                              else
+                              if (((word >> 11) & 0x1) == 0)
                                 {
-                                  if (((word >> 10) & 0x1) == 0)
+                                  if (((word >> 22) & 0x1) == 0)
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         x1010111xx0xxxxxxxxxx0xxxxxxxxxx
-                                         braa.  */
-                                      return 643;
+                                         xx111100x0xxxxxxxxxx00xxxxxxxxxx
+                                         stur.  */
+                                      return 925;
                                     }
                                   else
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         x1010111xx0xxxxxxxxxx1xxxxxxxxxx
-                                         brab.  */
-                                      return 644;
+                                         xx111100x1xxxxxxxxxx00xxxxxxxxxx
+                                         ldur.  */
+                                      return 926;
                                     }
                                 }
-                            }
-                          else
-                            {
-                              if (((word >> 25) & 0x1) == 0)
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     x1010101xx1xxxxxxxxxxxxxxxxxxxxx
-                                     tstart.  */
-                                  return 1193;
-                                }
                               else
                                 {
-                                  if (((word >> 10) & 0x1) == 0)
+                                  if (((word >> 22) & 0x1) == 0)
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         x1010111xx1xxxxxxxxxx0xxxxxxxxxx
-                                         blraa.  */
-                                      return 645;
+                                         xx111100x0xxxxxxxxxx10xxxxxxxxxx
+                                         str.  */
+                                      return 904;
                                     }
                                   else
                                     {
                                       /* 33222222222211111111110000000000
                                          10987654321098765432109876543210
-                                         x1010111xx1xxxxxxxxxx1xxxxxxxxxx
-                                         blrab.  */
-                                      return 646;
+                                         xx111100x1xxxxxxxxxx10xxxxxxxxxx
+                                         ldr.  */
+                                      return 905;
                                     }
                                 }
                             }
-                        }
-                    }
-                }
-              else
-                {
-                  if (((word >> 24) & 0x1) == 0)
-                    {
-                      if (((word >> 25) & 0x1) == 0)
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xx110100xxxxxxxxxxxxxxxxxxxxxxxx
-                             cbz.  */
-                          return 655;
-                        }
-                      else
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xx110110xxxxxxxxxxxxxxxxxxxxxxxx
-                             tbz.  */
-                          return 1247;
-                        }
-                    }
-                  else
-                    {
-                      if (((word >> 25) & 0x1) == 0)
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xx110101xxxxxxxxxxxxxxxxxxxxxxxx
-                             cbnz.  */
-                          return 656;
-                        }
-                      else
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xx110111xxxxxxxxxxxxxxxxxxxxxxxx
-                             tbnz.  */
-                          return 1248;
-                        }
-                    }
-                }
-            }
-        }
-      else
-        {
-          if (((word >> 25) & 0x1) == 0)
-            {
-              if (((word >> 28) & 0x1) == 0)
-                {
-                  if (((word >> 22) & 0x1) == 0)
-                    {
-                      if (((word >> 23) & 0x1) == 0)
-                        {
-                          if (((word >> 24) & 0x1) == 0)
+                          else
                             {
-                              if (((word >> 29) & 0x1) == 0)
+                              if (((word >> 22) & 0x1) == 0)
                                 {
                                   /* 33222222222211111111110000000000
                                      10987654321098765432109876543210
-                                     xx00110000xxxxxxxxxxxxxxxxxxxxxx
-                                     st4.  */
-                                  return 440;
+                                     xx111100x0xxxxxxxxxxx1xxxxxxxxxx
+                                     str.  */
+                                  return 873;
                                 }
                               else
                                 {
                                   /* 33222222222211111111110000000000
                                      10987654321098765432109876543210
-                                     xx10110000xxxxxxxxxxxxxxxxxxxxxx
-                                     stnp.  */
-                                  return 973;
+                                     xx111100x1xxxxxxxxxxx1xxxxxxxxxx
+                                     ldr.  */
+                                  return 874;
                                 }
                             }
-                          else
+                        }
+                    }
+                  else
+                    {
+                      if (((word >> 22) & 0x1) == 0)
+                        {
+                          if (((word >> 29) & 0x1) == 0)
                             {
-                              if (((word >> 29) & 0x1) == 0)
+                              if (((word >> 12) & 0x1) == 0)
                                 {
                                   if (((word >> 13) & 0x1) == 0)
                                     {
-                                      if (((word >> 21) & 0x1) == 0)
+                                      if (((word >> 14) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101000xxxxxxx0xxxxxxxxxxxxx
-                                             st1.  */
-                                          return 456;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0000xxxxxxxxxxxx
+                                                     cpyp.  */
+                                                  return 2562;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0000xxxxxxxxxxxx
+                                                     cpye.  */
+                                                  return 2564;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1000xxxxxxxxxxxx
+                                                     cpyprn.  */
+                                                  return 2568;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1000xxxxxxxxxxxx
+                                                     cpyern.  */
+                                                  return 2570;
+                                                }
+                                            }
                                         }
                                       else
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101001xxxxxxx0xxxxxxxxxxxxx
-                                             st2.  */
-                                          return 458;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0100xxxxxxxxxxxx
+                                                     cpypwn.  */
+                                                  return 2565;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0100xxxxxxxxxxxx
+                                                     cpyewn.  */
+                                                  return 2567;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1100xxxxxxxxxxxx
+                                                     cpypn.  */
+                                                  return 2571;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1100xxxxxxxxxxxx
+                                                     cpyen.  */
+                                                  return 2573;
+                                                }
+                                            }
                                         }
                                     }
                                   else
                                     {
-                                      if (((word >> 21) & 0x1) == 0)
+                                      if (((word >> 14) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101000xxxxxxx1xxxxxxxxxxxxx
-                                             st3.  */
-                                          return 457;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0010xxxxxxxxxxxx
+                                                     cpyprt.  */
+                                                  return 2586;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0010xxxxxxxxxxxx
+                                                     cpyert.  */
+                                                  return 2588;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1010xxxxxxxxxxxx
+                                                     cpyprtrn.  */
+                                                  return 2592;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1010xxxxxxxxxxxx
+                                                     cpyertrn.  */
+                                                  return 2594;
+                                                }
+                                            }
                                         }
                                       else
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101001xxxxxxx1xxxxxxxxxxxxx
-                                             st4.  */
-                                          return 459;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0110xxxxxxxxxxxx
+                                                     cpyprtwn.  */
+                                                  return 2589;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0110xxxxxxxxxxxx
+                                                     cpyertwn.  */
+                                                  return 2591;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1110xxxxxxxxxxxx
+                                                     cpyprtn.  */
+                                                  return 2595;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1110xxxxxxxxxxxx
+                                                     cpyertn.  */
+                                                  return 2597;
+                                                }
+                                            }
                                         }
                                     }
                                 }
                               else
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xx10110100xxxxxxxxxxxxxxxxxxxxxx
-                                     stp.  */
-                                  return 977;
-                                }
-                            }
-                        }
-                      else
-                        {
-                          if (((word >> 29) & 0x1) == 0)
-                            {
-                              if (((word >> 21) & 0x1) == 0)
-                                {
-                                  if (((word >> 24) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx001100100xxxxxxxxxxxxxxxxxxxxx
-                                         st4.  */
-                                      return 448;
-                                    }
-                                  else
+                                  if (((word >> 13) & 0x1) == 0)
                                     {
-                                      if (((word >> 13) & 0x1) == 0)
+                                      if (((word >> 14) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101100xxxxxxx0xxxxxxxxxxxxx
-                                             st1.  */
-                                          return 468;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0001xxxxxxxxxxxx
+                                                     cpypwt.  */
+                                                  return 2574;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0001xxxxxxxxxxxx
+                                                     cpyewt.  */
+                                                  return 2576;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1001xxxxxxxxxxxx
+                                                     cpypwtrn.  */
+                                                  return 2580;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1001xxxxxxxxxxxx
+                                                     cpyewtrn.  */
+                                                  return 2582;
+                                                }
+                                            }
                                         }
                                       else
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101100xxxxxxx1xxxxxxxxxxxxx
-                                             st3.  */
-                                          return 469;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0101xxxxxxxxxxxx
+                                                     cpypwtwn.  */
+                                                  return 2577;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0101xxxxxxxxxxxx
+                                                     cpyewtwn.  */
+                                                  return 2579;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1101xxxxxxxxxxxx
+                                                     cpypwtn.  */
+                                                  return 2583;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1101xxxxxxxxxxxx
+                                                     cpyewtn.  */
+                                                  return 2585;
+                                                }
+                                            }
+                                        }
+                                    }
+                                  else
+                                    {
+                                      if (((word >> 14) & 0x1) == 0)
+                                        {
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0011xxxxxxxxxxxx
+                                                     cpypt.  */
+                                                  return 2598;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0011xxxxxxxxxxxx
+                                                     cpyet.  */
+                                                  return 2600;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1011xxxxxxxxxxxx
+                                                     cpyptrn.  */
+                                                  return 2604;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1011xxxxxxxxxxxx
+                                                     cpyetrn.  */
+                                                  return 2606;
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx0111xxxxxxxxxxxx
+                                                     cpyptwn.  */
+                                                  return 2601;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx0111xxxxxxxxxxxx
+                                                     cpyetwn.  */
+                                                  return 2603;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110100xxxxxx1111xxxxxxxxxxxx
+                                                     cpyptn.  */
+                                                  return 2607;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110110xxxxxx1111xxxxxxxxxxxx
+                                                     cpyetn.  */
+                                                  return 2609;
+                                                }
+                                            }
                                         }
-                                    }
-                                }
-                              else
-                                {
-                                  if (((word >> 13) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx00110x101xxxxxxx0xxxxxxxxxxxxx
-                                         st2.  */
-                                      return 470;
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx00110x101xxxxxxx1xxxxxxxxxxxxx
-                                         st4.  */
-                                      return 471;
                                     }
                                 }
                             }
@@ -16376,248 +17869,328 @@ aarch64_opcode_lookup_1 (uint32_t word)
                             {
                               /* 33222222222211111111110000000000
                                  10987654321098765432109876543210
-                                 xx10110x10xxxxxxxxxxxxxxxxxxxxxx
-                                 stp.  */
-                              return 983;
+                                 xx111101x0xxxxxxxxxxxxxxxxxxxxxx
+                                 str.  */
+                              return 892;
                             }
                         }
-                    }
-                  else
-                    {
-                      if (((word >> 23) & 0x1) == 0)
+                      else
                         {
-                          if (((word >> 24) & 0x1) == 0)
-                            {
-                              if (((word >> 29) & 0x1) == 0)
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xx00110001xxxxxxxxxxxxxxxxxxxxxx
-                                     ld4.  */
-                                  return 444;
-                                }
-                              else
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xx10110001xxxxxxxxxxxxxxxxxxxxxx
-                                     ldnp.  */
-                                  return 974;
-                                }
-                            }
-                          else
+                          if (((word >> 29) & 0x1) == 0)
                             {
-                              if (((word >> 29) & 0x1) == 0)
+                              if (((word >> 12) & 0x1) == 0)
                                 {
                                   if (((word >> 13) & 0x1) == 0)
                                     {
-                                      if (((word >> 21) & 0x1) == 0)
+                                      if (((word >> 14) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101010xxxxxxx0xxxxxxxxxxxxx
-                                             ld1.  */
-                                          return 460;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0000xxxxxxxxxxxx
+                                                     cpym.  */
+                                                  return 2563;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0000xxxxxxxxxxxx
+                                                     setgp.  */
+                                                  return 2622;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx1000xxxxxxxxxxxx
+                                                     cpymrn.  */
+                                                  return 2569;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx1000xxxxxxxxxxxx
+                                                     setge.  */
+                                                  return 2624;
+                                                }
+                                            }
                                         }
                                       else
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101011xxxxxxx0xxxxxxxxxxxxx
-                                             ld2.  */
-                                          return 464;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0100xxxxxxxxxxxx
+                                                     cpymwn.  */
+                                                  return 2566;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0100xxxxxxxxxxxx
+                                                     setgm.  */
+                                                  return 2623;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 xx011101x1xxxxxx1100xxxxxxxxxxxx
+                                                 cpymn.  */
+                                              return 2572;
+                                            }
                                         }
                                     }
                                   else
                                     {
-                                      if (((word >> 21) & 0x1) == 0)
+                                      if (((word >> 14) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101010xxxxxxx1xxxxxxxxxxxxx
-                                             ld3.  */
-                                          return 461;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0010xxxxxxxxxxxx
+                                                     cpymrt.  */
+                                                  return 2587;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0010xxxxxxxxxxxx
+                                                     setgpn.  */
+                                                  return 2628;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx1010xxxxxxxxxxxx
+                                                     cpymrtrn.  */
+                                                  return 2593;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx1010xxxxxxxxxxxx
+                                                     setgen.  */
+                                                  return 2630;
+                                                }
+                                            }
                                         }
                                       else
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101011xxxxxxx1xxxxxxxxxxxxx
-                                             ld4.  */
-                                          return 465;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0110xxxxxxxxxxxx
+                                                     cpymrtwn.  */
+                                                  return 2590;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0110xxxxxxxxxxxx
+                                                     setgmn.  */
+                                                  return 2629;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 xx011101x1xxxxxx1110xxxxxxxxxxxx
+                                                 cpymrtn.  */
+                                              return 2596;
+                                            }
                                         }
                                     }
                                 }
                               else
                                 {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xx10110101xxxxxxxxxxxxxxxxxxxxxx
-                                     ldp.  */
-                                  return 978;
-                                }
-                            }
-                        }
-                      else
-                        {
-                          if (((word >> 29) & 0x1) == 0)
-                            {
-                              if (((word >> 21) & 0x1) == 0)
-                                {
-                                  if (((word >> 24) & 0x1) == 0)
+                                  if (((word >> 13) & 0x1) == 0)
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx001100110xxxxxxxxxxxxxxxxxxxxx
-                                         ld4.  */
-                                      return 452;
+                                      if (((word >> 14) & 0x1) == 0)
+                                        {
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0001xxxxxxxxxxxx
+                                                     cpymwt.  */
+                                                  return 2575;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0001xxxxxxxxxxxx
+                                                     setgpt.  */
+                                                  return 2625;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx1001xxxxxxxxxxxx
+                                                     cpymwtrn.  */
+                                                  return 2581;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx1001xxxxxxxxxxxx
+                                                     setget.  */
+                                                  return 2627;
+                                                }
+                                            }
+                                        }
+                                      else
+                                        {
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0101xxxxxxxxxxxx
+                                                     cpymwtwn.  */
+                                                  return 2578;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0101xxxxxxxxxxxx
+                                                     setgmt.  */
+                                                  return 2626;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 xx011101x1xxxxxx1101xxxxxxxxxxxx
+                                                 cpymwtn.  */
+                                              return 2584;
+                                            }
+                                        }
                                     }
                                   else
                                     {
-                                      if (((word >> 13) & 0x1) == 0)
+                                      if (((word >> 14) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101110xxxxxxx0xxxxxxxxxxxxx
-                                             ld1.  */
-                                          return 472;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0011xxxxxxxxxxxx
+                                                     cpymt.  */
+                                                  return 2599;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0011xxxxxxxxxxxx
+                                                     setgptn.  */
+                                                  return 2631;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx1011xxxxxxxxxxxx
+                                                     cpymtrn.  */
+                                                  return 2605;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx1011xxxxxxxxxxxx
+                                                     setgetn.  */
+                                                  return 2633;
+                                                }
+                                            }
                                         }
                                       else
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             xx001101110xxxxxxx1xxxxxxxxxxxxx
-                                             ld3.  */
-                                          return 473;
+                                          if (((word >> 15) & 0x1) == 0)
+                                            {
+                                              if (((word >> 23) & 0x1) == 0)
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110101xxxxxx0111xxxxxxxxxxxx
+                                                     cpymtwn.  */
+                                                  return 2602;
+                                                }
+                                              else
+                                                {
+                                                  /* 33222222222211111111110000000000
+                                                     10987654321098765432109876543210
+                                                     xx01110111xxxxxx0111xxxxxxxxxxxx
+                                                     setgmtn.  */
+                                                  return 2632;
+                                                }
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 xx011101x1xxxxxx1111xxxxxxxxxxxx
+                                                 cpymtn.  */
+                                              return 2608;
+                                            }
                                         }
                                     }
                                 }
-                              else
-                                {
-                                  if (((word >> 13) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx00110x111xxxxxxx0xxxxxxxxxxxxx
-                                         ld2.  */
-                                      return 476;
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx00110x111xxxxxxx1xxxxxxxxxxxxx
-                                         ld4.  */
-                                      return 477;
-                                    }
-                                }
                             }
                           else
                             {
                               /* 33222222222211111111110000000000
                                  10987654321098765432109876543210
-                                 xx10110x11xxxxxxxxxxxxxxxxxxxxxx
-                                 ldp.  */
-                              return 984;
-                            }
-                        }
-                    }
-                }
-              else
-                {
-                  if (((word >> 24) & 0x1) == 0)
-                    {
-                      if (((word >> 29) & 0x1) == 0)
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xx011100xxxxxxxxxxxxxxxxxxxxxxxx
-                             ldr.  */
-                          return 988;
-                        }
-                      else
-                        {
-                          if (((word >> 10) & 0x1) == 0)
-                            {
-                              if (((word >> 11) & 0x1) == 0)
-                                {
-                                  if (((word >> 22) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx111100x0xxxxxxxxxx00xxxxxxxxxx
-                                         stur.  */
-                                      return 925;
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx111100x1xxxxxxxxxx00xxxxxxxxxx
-                                         ldur.  */
-                                      return 926;
-                                    }
-                                }
-                              else
-                                {
-                                  if (((word >> 22) & 0x1) == 0)
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx111100x0xxxxxxxxxx10xxxxxxxxxx
-                                         str.  */
-                                      return 904;
-                                    }
-                                  else
-                                    {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         xx111100x1xxxxxxxxxx10xxxxxxxxxx
-                                         ldr.  */
-                                      return 905;
-                                    }
-                                }
-                            }
-                          else
-                            {
-                              if (((word >> 22) & 0x1) == 0)
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xx111100x0xxxxxxxxxxx1xxxxxxxxxx
-                                     str.  */
-                                  return 873;
-                                }
-                              else
-                                {
-                                  /* 33222222222211111111110000000000
-                                     10987654321098765432109876543210
-                                     xx111100x1xxxxxxxxxxx1xxxxxxxxxx
-                                     ldr.  */
-                                  return 874;
-                                }
+                                 xx111101x1xxxxxxxxxxxxxxxxxxxxxx
+                                 ldr.  */
+                              return 893;
                             }
                         }
                     }
-                  else
-                    {
-                      if (((word >> 22) & 0x1) == 0)
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xxx11101x0xxxxxxxxxxxxxxxxxxxxxx
-                             str.  */
-                          return 892;
-                        }
-                      else
-                        {
-                          /* 33222222222211111111110000000000
-                             10987654321098765432109876543210
-                             xxx11101x1xxxxxxxxxxxxxxxxxxxxxx
-                             ldr.  */
-                          return 893;
-                        }
-                    }
                 }
             }
           else
@@ -16769,7 +18342,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x1001xxxxxxxxxx
                                                          smmla.  */
-                                                      return 2451;
+                                                      return 2489;
                                                     }
                                                 }
                                             }
@@ -16802,7 +18375,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x0101xxxxxxxxxx
                                                          sdot.  */
-                                                      return 2377;
+                                                      return 2415;
                                                     }
                                                 }
                                               else
@@ -16876,7 +18449,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x1011xxxxxxxxxx
                                                          usmmla.  */
-                                                      return 2453;
+                                                      return 2491;
                                                     }
                                                 }
                                             }
@@ -16909,7 +18482,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          0x001110xx0xxxxx1x0111xxxxxxxxxx
                                                          usdot.  */
-                                                      return 2454;
+                                                      return 2492;
                                                     }
                                                 }
                                               else
@@ -16956,7 +18529,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              1x001110000xxxxxxxxxxxxxxxxxxxxx
                                              eor3.  */
-                                          return 2384;
+                                          return 2422;
                                         }
                                       else
                                         {
@@ -16964,7 +18537,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              1x001110100xxxxxxxxxxxxxxxxxxxxx
                                              xar.  */
-                                          return 2386;
+                                          return 2424;
                                         }
                                     }
                                   else
@@ -16975,7 +18548,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                              10987654321098765432109876543210
                                              1x001110x10xxxxx0xxxxxxxxxxxxxxx
                                              sm3ss1.  */
-                                          return 2388;
+                                          return 2426;
                                         }
                                       else
                                         {
@@ -16989,7 +18562,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110010xxxxx1xxx00xxxxxxxxxx
                                                          sm3tt1a.  */
-                                                      return 2389;
+                                                      return 2427;
                                                     }
                                                   else
                                                     {
@@ -16997,7 +18570,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110110xxxxx1xxx00xxxxxxxxxx
                                                          sha512su0.  */
-                                                      return 2382;
+                                                      return 2420;
                                                     }
                                                 }
                                               else
@@ -17006,7 +18579,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      1x001110x10xxxxx1xxx10xxxxxxxxxx
                                                      sm3tt2a.  */
-                                                  return 2391;
+                                                  return 2429;
                                                 }
                                             }
                                           else
@@ -17019,7 +18592,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110010xxxxx1xxx01xxxxxxxxxx
                                                          sm3tt1b.  */
-                                                      return 2390;
+                                                      return 2428;
                                                     }
                                                   else
                                                     {
@@ -17027,7 +18600,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          1x001110110xxxxx1xxx01xxxxxxxxxx
                                                          sm4e.  */
-                                                      return 2395;
+                                                      return 2433;
                                                     }
                                                 }
                                               else
@@ -17036,7 +18609,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      1x001110x10xxxxx1xxx11xxxxxxxxxx
                                                      sm3tt2b.  */
-                                                  return 2392;
+                                                  return 2430;
                                                 }
                                             }
                                         }
@@ -17217,7 +18790,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx101110xx0xxxxx100101xxxxxxxxxx
                                                          udot.  */
-                                                      return 2376;
+                                                      return 2414;
                                                     }
                                                 }
                                               else
@@ -17248,7 +18821,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx101110xx0xxxxx101x01xxxxxxxxxx
                                                      ummla.  */
-                                                  return 2452;
+                                                  return 2490;
                                                 }
                                               else
                                                 {
@@ -17267,7 +18840,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      xx101110xx0xxxxx1x1011xxxxxxxxxx
                                                      bfmmla.  */
-                                                  return 2468;
+                                                  return 2506;
                                                 }
                                               else
                                                 {
@@ -17277,7 +18850,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx1011100x0xxxxx1x1111xxxxxxxxxx
                                                          bfdot.  */
-                                                      return 2466;
+                                                      return 2504;
                                                     }
                                                   else
                                                     {
@@ -17287,7 +18860,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x01011101x0xxxxx1x1111xxxxxxxxxx
                                                              bfmlalb.  */
-                                                          return 2473;
+                                                          return 2511;
                                                         }
                                                       else
                                                         {
@@ -17295,7 +18868,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x11011101x0xxxxx1x1111xxxxxxxxxx
                                                              bfmlalt.  */
-                                                          return 2472;
+                                                          return 2510;
                                                         }
                                                     }
                                                 }
@@ -17879,7 +19452,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          000011101x1xxxx1011010xxxxxxxxxx
                                                                          bfcvtn.  */
-                                                                      return 2469;
+                                                                      return 2507;
                                                                     }
                                                                   else
                                                                     {
@@ -17887,7 +19460,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                          10987654321098765432109876543210
                                                                          010011101x1xxxx1011010xxxxxxxxxx
                                                                          bfcvtn2.  */
-                                                                      return 2470;
+                                                                      return 2508;
                                                                     }
                                                                 }
                                                             }
@@ -18205,7 +19778,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                          10987654321098765432109876543210
                                          1x001110xx1xxxxx0xxxxxxxxxxxxxxx
                                          bcax.  */
-                                      return 2387;
+                                      return 2425;
                                     }
                                 }
                               else
@@ -18816,7 +20389,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  11001110xx1xxxxx100000xxxxxxxxxx
                                                                  sha512h.  */
-                                                              return 2380;
+                                                              return 2418;
                                                             }
                                                         }
                                                     }
@@ -18868,7 +20441,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  11001110xx1xxxxx110000xxxxxxxxxx
                                                                  sm3partw1.  */
-                                                              return 2393;
+                                                              return 2431;
                                                             }
                                                         }
                                                     }
@@ -19111,7 +20684,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              1x001110xx1xxxxx100010xxxxxxxxxx
                                                              sha512su1.  */
-                                                          return 2383;
+                                                          return 2421;
                                                         }
                                                     }
                                                   else
@@ -19187,7 +20760,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  1x0011100x1xxxxx110010xxxxxxxxxx
                                                                  sm4ekey.  */
-                                                              return 2396;
+                                                              return 2434;
                                                             }
                                                         }
                                                       else
@@ -20013,7 +21586,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              1x001110xx1xxxxx100001xxxxxxxxxx
                                                              sha512h2.  */
-                                                          return 2381;
+                                                          return 2419;
                                                         }
                                                     }
                                                   else
@@ -20045,7 +21618,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  1x0011100x1xxxxx110001xxxxxxxxxx
                                                                  sm3partw2.  */
-                                                              return 2394;
+                                                              return 2432;
                                                             }
                                                         }
                                                       else
@@ -20285,7 +21858,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              1x001110xx1xxxxx100011xxxxxxxxxx
                                                              rax1.  */
-                                                          return 2385;
+                                                          return 2423;
                                                         }
                                                     }
                                                   else
@@ -20317,7 +21890,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x01011100x1xxxxx110011xxxxxxxxxx
                                                                  fmlal2.  */
-                                                              return 2399;
+                                                              return 2437;
                                                             }
                                                           else
                                                             {
@@ -20325,7 +21898,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x11011100x1xxxxx110011xxxxxxxxxx
                                                                  fmlal2.  */
-                                                              return 2403;
+                                                              return 2441;
                                                             }
                                                         }
                                                     }
@@ -20347,7 +21920,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x01011101x1xxxxx110011xxxxxxxxxx
                                                                  fmlsl2.  */
-                                                              return 2400;
+                                                              return 2438;
                                                             }
                                                           else
                                                             {
@@ -20355,7 +21928,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x11011101x1xxxxx110011xxxxxxxxxx
                                                                  fmlsl2.  */
-                                                              return 2404;
+                                                              return 2442;
                                                             }
                                                         }
                                                     }
@@ -20394,7 +21967,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x00011100x1xxxxx111011xxxxxxxxxx
                                                                  fmlal.  */
-                                                              return 2397;
+                                                              return 2435;
                                                             }
                                                           else
                                                             {
@@ -20402,7 +21975,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10011100x1xxxxx111011xxxxxxxxxx
                                                                  fmlal.  */
-                                                              return 2401;
+                                                              return 2439;
                                                             }
                                                         }
                                                       else
@@ -20424,7 +21997,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x00011101x1xxxxx111011xxxxxxxxxx
                                                                  fmlsl.  */
-                                                              return 2398;
+                                                              return 2436;
                                                             }
                                                           else
                                                             {
@@ -20432,7 +22005,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                                  10987654321098765432109876543210
                                                                  x10011101x1xxxxx111011xxxxxxxxxx
                                                                  fmlsl.  */
-                                                              return 2402;
+                                                              return 2440;
                                                             }
                                                         }
                                                       else
@@ -22240,7 +23813,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0001111xxxxxxxx0000x0xxxxxxxxxx
                                                      fmlal.  */
-                                                  return 2405;
+                                                  return 2443;
                                                 }
                                               else
                                                 {
@@ -22248,7 +23821,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1001111xxxxxxxx0000x0xxxxxxxxxx
                                                      fmlal.  */
-                                                  return 2409;
+                                                  return 2447;
                                                 }
                                             }
                                           else
@@ -22270,7 +23843,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0001111xxxxxxxx0100x0xxxxxxxxxx
                                                      fmlsl.  */
-                                                  return 2406;
+                                                  return 2444;
                                                 }
                                               else
                                                 {
@@ -22278,7 +23851,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1001111xxxxxxxx0100x0xxxxxxxxxx
                                                      fmlsl.  */
-                                                  return 2410;
+                                                  return 2448;
                                                 }
                                             }
                                           else
@@ -22784,7 +24357,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0101111xxxxxxxx1000x0xxxxxxxxxx
                                                      fmlal2.  */
-                                                  return 2407;
+                                                  return 2445;
                                                 }
                                               else
                                                 {
@@ -22792,7 +24365,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1101111xxxxxxxx1000x0xxxxxxxxxx
                                                      fmlal2.  */
-                                                  return 2411;
+                                                  return 2449;
                                                 }
                                             }
                                         }
@@ -22814,7 +24387,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x0101111xxxxxxxx1100x0xxxxxxxxxx
                                                      fmlsl2.  */
-                                                  return 2408;
+                                                  return 2446;
                                                 }
                                               else
                                                 {
@@ -22822,7 +24395,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                      10987654321098765432109876543210
                                                      x1101111xxxxxxxx1100x0xxxxxxxxxx
                                                      fmlsl2.  */
-                                                  return 2412;
+                                                  return 2450;
                                                 }
                                             }
                                         }
@@ -22878,7 +24451,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx001111xxxxxxxx1110x0xxxxxxxxxx
                                                  sdot.  */
-                                              return 2379;
+                                              return 2417;
                                             }
                                           else
                                             {
@@ -22886,7 +24459,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                  10987654321098765432109876543210
                                                  xx101111xxxxxxxx1110x0xxxxxxxxxx
                                                  udot.  */
-                                              return 2378;
+                                              return 2416;
                                             }
                                         }
                                     }
@@ -22989,7 +24562,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx00111100xxxxxx1111x0xxxxxxxxxx
                                                          sudot.  */
-                                                      return 2456;
+                                                      return 2494;
                                                     }
                                                   else
                                                     {
@@ -22997,7 +24570,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx00111110xxxxxx1111x0xxxxxxxxxx
                                                          usdot.  */
-                                                      return 2455;
+                                                      return 2493;
                                                     }
                                                 }
                                               else
@@ -23008,7 +24581,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                          10987654321098765432109876543210
                                                          xx00111101xxxxxx1111x0xxxxxxxxxx
                                                          bfdot.  */
-                                                      return 2467;
+                                                      return 2505;
                                                     }
                                                   else
                                                     {
@@ -23018,7 +24591,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x000111111xxxxxx1111x0xxxxxxxxxx
                                                              bfmlalb.  */
-                                                          return 2475;
+                                                          return 2513;
                                                         }
                                                       else
                                                         {
@@ -23026,7 +24599,7 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                                              10987654321098765432109876543210
                                                              x100111111xxxxxx1111x0xxxxxxxxxx
                                                              bfmlalt.  */
-                                                          return 2474;
+                                                          return 2512;
                                                         }
                                                     }
                                                 }
@@ -23513,6 +25086,30 @@ aarch64_find_next_opcode (const aarch64_opcode *opcode)
   int value;
   switch (key)
     {
+    case 2384: value = 2386; break;    /* mov --> mova.  */
+    case 2386: return NULL;            /* mova --> NULL.  */
+    case 2383: value = 2385; break;    /* mov --> mova.  */
+    case 2385: return NULL;            /* mova --> NULL.  */
+    case 2388: value = 2393; break;    /* ld1b --> ld1b.  */
+    case 2393: return NULL;            /* ld1b --> NULL.  */
+    case 2390: value = 2395; break;    /* ld1w --> ld1w.  */
+    case 2395: return NULL;            /* ld1w --> NULL.  */
+    case 2389: value = 2394; break;    /* ld1h --> ld1h.  */
+    case 2394: return NULL;            /* ld1h --> NULL.  */
+    case 2391: value = 2396; break;    /* ld1d --> ld1d.  */
+    case 2396: return NULL;            /* ld1d --> NULL.  */
+    case 2398: value = 2403; break;    /* st1b --> st1b.  */
+    case 2403: return NULL;            /* st1b --> NULL.  */
+    case 2400: value = 2405; break;    /* st1w --> st1w.  */
+    case 2405: return NULL;            /* st1w --> NULL.  */
+    case 2399: value = 2404; break;    /* st1h --> st1h.  */
+    case 2404: return NULL;            /* st1h --> NULL.  */
+    case 2401: value = 2406; break;    /* st1d --> st1d.  */
+    case 2406: return NULL;            /* st1d --> NULL.  */
+    case 2392: value = 2397; break;    /* ld1q --> ld1q.  */
+    case 2397: return NULL;            /* ld1q --> NULL.  */
+    case 2402: value = 2407; break;    /* st1q --> st1q.  */
+    case 2407: return NULL;            /* st1q --> NULL.  */
     case 12: value = 19; break;        /* add --> addg.  */
     case 19: return NULL;              /* addg --> NULL.  */
     case 16: value = 20; break;        /* sub --> subg.  */
@@ -23523,59 +25120,63 @@ aarch64_find_next_opcode (const aarch64_opcode *opcode)
     case 970: return NULL;             /* stllrh --> NULL.  */
     case 972: value = 976; break;      /* ldnp --> ldp.  */
     case 976: return NULL;             /* ldp --> NULL.  */
-    case 1636: value = 1637; break;    /* ldff1b --> ldff1b.  */
-    case 1637: return NULL;            /* ldff1b --> NULL.  */
-    case 1692: value = 1693; break;    /* ldff1sw --> ldff1sw.  */
-    case 1693: return NULL;            /* ldff1sw --> NULL.  */
     case 1640: value = 1641; break;    /* ldff1b --> ldff1b.  */
     case 1641: return NULL;            /* ldff1b --> NULL.  */
-    case 1659: value = 1660; break;    /* ldff1h --> ldff1h.  */
-    case 1660: return NULL;            /* ldff1h --> NULL.  */
-    case 1638: value = 1639; break;    /* ldff1b --> ldff1b.  */
-    case 1639: return NULL;            /* ldff1b --> NULL.  */
-    case 1657: value = 1658; break;    /* ldff1h --> ldff1h.  */
-    case 1658: return NULL;            /* ldff1h --> NULL.  */
+    case 1696: value = 1697; break;    /* ldff1sw --> ldff1sw.  */
+    case 1697: return NULL;            /* ldff1sw --> NULL.  */
+    case 1644: value = 1645; break;    /* ldff1b --> ldff1b.  */
+    case 1645: return NULL;            /* ldff1b --> NULL.  */
+    case 1663: value = 1664; break;    /* ldff1h --> ldff1h.  */
+    case 1664: return NULL;            /* ldff1h --> NULL.  */
     case 1642: value = 1643; break;    /* ldff1b --> ldff1b.  */
     case 1643: return NULL;            /* ldff1b --> NULL.  */
     case 1661: value = 1662; break;    /* ldff1h --> ldff1h.  */
     case 1662: return NULL;            /* ldff1h --> NULL.  */
-    case 1682: value = 1683; break;    /* ldff1sh --> ldff1sh.  */
-    case 1683: return NULL;            /* ldff1sh --> NULL.  */
-    case 1670: value = 1671; break;    /* ldff1sb --> ldff1sb.  */
-    case 1671: return NULL;            /* ldff1sb --> NULL.  */
-    case 1701: value = 1702; break;    /* ldff1w --> ldff1w.  */
-    case 1702: return NULL;            /* ldff1w --> NULL.  */
+    case 1646: value = 1647; break;    /* ldff1b --> ldff1b.  */
+    case 1647: return NULL;            /* ldff1b --> NULL.  */
+    case 1665: value = 1666; break;    /* ldff1h --> ldff1h.  */
+    case 1666: return NULL;            /* ldff1h --> NULL.  */
+    case 1686: value = 1687; break;    /* ldff1sh --> ldff1sh.  */
+    case 1687: return NULL;            /* ldff1sh --> NULL.  */
     case 1674: value = 1675; break;    /* ldff1sb --> ldff1sb.  */
     case 1675: return NULL;            /* ldff1sb --> NULL.  */
-    case 1684: value = 1685; break;    /* ldff1sh --> ldff1sh.  */
-    case 1685: return NULL;            /* ldff1sh --> NULL.  */
-    case 1672: value = 1673; break;    /* ldff1sb --> ldff1sb.  */
-    case 1673: return NULL;            /* ldff1sb --> NULL.  */
-    case 1703: value = 1704; break;    /* ldff1w --> ldff1w.  */
-    case 1704: return NULL;            /* ldff1w --> NULL.  */
-    case 1648: value = 1649; break;    /* ldff1d --> ldff1d.  */
-    case 1649: return NULL;            /* ldff1d --> NULL.  */
+    case 1705: value = 1706; break;    /* ldff1w --> ldff1w.  */
+    case 1706: return NULL;            /* ldff1w --> NULL.  */
+    case 1678: value = 1679; break;    /* ldff1sb --> ldff1sb.  */
+    case 1679: return NULL;            /* ldff1sb --> NULL.  */
+    case 1688: value = 1689; break;    /* ldff1sh --> ldff1sh.  */
+    case 1689: return NULL;            /* ldff1sh --> NULL.  */
+    case 1676: value = 1677; break;    /* ldff1sb --> ldff1sb.  */
+    case 1677: return NULL;            /* ldff1sb --> NULL.  */
+    case 1707: value = 1708; break;    /* ldff1w --> ldff1w.  */
+    case 1708: return NULL;            /* ldff1w --> NULL.  */
+    case 1652: value = 1653; break;    /* ldff1d --> ldff1d.  */
+    case 1653: return NULL;            /* ldff1d --> NULL.  */
     case 811: value = 812; break;      /* xaflag --> axflag.  */
     case 812: value = 1194; break;     /* axflag --> tcommit.  */
-    case 1194: value = 1197; break;    /* tcommit --> msr.  */
-    case 1197: value = 1198; break;    /* msr --> hint.  */
-    case 1198: value = 1207; break;    /* hint --> dgh.  */
-    case 1207: value = 1216; break;    /* dgh --> clrex.  */
-    case 1216: value = 1217; break;    /* clrex --> dsb.  */
-    case 1217: value = 1218; break;    /* dsb --> dsb.  */
-    case 1218: value = 1222; break;    /* dsb --> dmb.  */
-    case 1222: value = 1223; break;    /* dmb --> isb.  */
-    case 1223: value = 1224; break;    /* isb --> sb.  */
-    case 1224: value = 1225; break;    /* sb --> sys.  */
-    case 1225: value = 1230; break;    /* sys --> wfet.  */
-    case 1230: value = 1231; break;    /* wfet --> wfit.  */
-    case 1231: value = 1235; break;    /* wfit --> cfinv.  */
-    case 1235: value = 1236; break;    /* cfinv --> msr.  */
-    case 1236: return NULL;            /* msr --> NULL.  */
+    case 1194: value = 1197; break;    /* tcommit --> smstart.  */
+    case 1197: value = 1198; break;    /* smstart --> smstop.  */
+    case 1198: value = 1199; break;    /* smstop --> smstart.  */
+    case 1199: value = 1200; break;    /* smstart --> smstop.  */
+    case 1200: value = 1201; break;    /* smstop --> msr.  */
+    case 1201: value = 1202; break;    /* msr --> hint.  */
+    case 1202: value = 1211; break;    /* hint --> dgh.  */
+    case 1211: value = 1220; break;    /* dgh --> clrex.  */
+    case 1220: value = 1221; break;    /* clrex --> dsb.  */
+    case 1221: value = 1222; break;    /* dsb --> dsb.  */
+    case 1222: value = 1226; break;    /* dsb --> dmb.  */
+    case 1226: value = 1227; break;    /* dmb --> isb.  */
+    case 1227: value = 1228; break;    /* isb --> sb.  */
+    case 1228: value = 1229; break;    /* sb --> sys.  */
+    case 1229: value = 1234; break;    /* sys --> wfet.  */
+    case 1234: value = 1235; break;    /* wfet --> wfit.  */
+    case 1235: value = 1239; break;    /* wfit --> cfinv.  */
+    case 1239: value = 1240; break;    /* cfinv --> msr.  */
+    case 1240: return NULL;            /* msr --> NULL.  */
     case 1193: value = 1195; break;    /* tstart --> ttest.  */
-    case 1195: value = 1237; break;    /* ttest --> sysl.  */
-    case 1237: value = 1238; break;    /* sysl --> mrs.  */
-    case 1238: return NULL;            /* mrs --> NULL.  */
+    case 1195: value = 1241; break;    /* ttest --> sysl.  */
+    case 1241: value = 1242; break;    /* sysl --> mrs.  */
+    case 1242: return NULL;            /* mrs --> NULL.  */
     case 440: value = 441; break;      /* st4 --> st1.  */
     case 441: value = 442; break;      /* st1 --> st2.  */
     case 442: value = 443; break;      /* st2 --> st3.  */
@@ -23660,8 +25261,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 = 2471; break;     /* fcvt --> bfcvt.  */
-    case 2471: return NULL;            /* bfcvt --> NULL.  */
+    case 825: value = 2509; break;     /* fcvt --> bfcvt.  */
+    case 2509: return NULL;            /* bfcvt --> NULL.  */
     case 834: value = 835; break;      /* frinta --> frinta.  */
     case 835: return NULL;             /* frinta --> NULL.  */
     case 836: value = 837; break;      /* frintx --> frintx.  */
@@ -23873,41 +25474,41 @@ aarch64_find_alias_opcode (const aarch64_opcode *opcode)
     case 1136: value = 1185; break;    /* lduminl --> stuminl.  */
     case 1186: value = 1187; break;    /* movn --> mov.  */
     case 1188: value = 1189; break;    /* movz --> mov.  */
-    case 1198: value = 1246; break;    /* hint --> autibsp.  */
-    case 1217: value = 1221; break;    /* dsb --> pssbb.  */
-    case 1218: value = 1218; break;    /* dsb --> dsb.  */
-    case 1225: value = 1234; break;    /* sys --> cpp.  */
-    case 1230: value = 1230; break;    /* wfet --> wfet.  */
-    case 1231: value = 1231; break;    /* wfit --> wfit.  */
-    case 1294: value = 2044; break;    /* and --> bic.  */
-    case 1296: value = 1277; break;    /* and --> mov.  */
-    case 1297: value = 1281; break;    /* ands --> movs.  */
-    case 1332: value = 2045; break;    /* cmpge --> cmple.  */
-    case 1335: value = 2048; break;    /* cmpgt --> cmplt.  */
-    case 1337: value = 2046; break;    /* cmphi --> cmplo.  */
-    case 1340: value = 2047; break;    /* cmphs --> cmpls.  */
-    case 1362: value = 1274; break;    /* cpy --> mov.  */
-    case 1363: value = 1276; break;    /* cpy --> mov.  */
-    case 1364: value = 2055; break;    /* cpy --> fmov.  */
-    case 1376: value = 1269; break;    /* dup --> mov.  */
-    case 1377: value = 1271; break;    /* dup --> mov.  */
-    case 1378: value = 2054; break;    /* dup --> fmov.  */
-    case 1379: value = 1272; break;    /* dupm --> mov.  */
-    case 1381: value = 2049; break;    /* eor --> eon.  */
-    case 1383: value = 1282; break;    /* eor --> not.  */
-    case 1384: value = 1283; break;    /* eors --> nots.  */
-    case 1389: value = 2050; break;    /* facge --> facle.  */
-    case 1390: value = 2051; break;    /* facgt --> faclt.  */
-    case 1403: value = 2052; break;    /* fcmge --> fcmle.  */
-    case 1405: value = 2053; break;    /* fcmgt --> fcmlt.  */
-    case 1411: value = 1266; break;    /* fcpy --> fmov.  */
-    case 1434: value = 1265; break;    /* fdup --> fmov.  */
-    case 1765: value = 1267; break;    /* orr --> mov.  */
-    case 1766: value = 2056; break;    /* orr --> orn.  */
-    case 1768: value = 1270; break;    /* orr --> mov.  */
-    case 1769: value = 1280; break;    /* orrs --> movs.  */
-    case 1831: value = 1275; break;    /* sel --> mov.  */
-    case 1832: value = 1278; break;    /* sel --> mov.  */
+    case 1202: value = 1250; break;    /* hint --> autibsp.  */
+    case 1221: value = 1225; break;    /* dsb --> pssbb.  */
+    case 1222: value = 1222; break;    /* dsb --> dsb.  */
+    case 1229: value = 1238; break;    /* sys --> cpp.  */
+    case 1234: value = 1234; break;    /* wfet --> wfet.  */
+    case 1235: value = 1235; break;    /* wfit --> wfit.  */
+    case 1298: value = 2048; break;    /* and --> bic.  */
+    case 1300: value = 1281; break;    /* and --> mov.  */
+    case 1301: value = 1285; break;    /* ands --> movs.  */
+    case 1336: value = 2049; break;    /* cmpge --> cmple.  */
+    case 1339: value = 2052; break;    /* cmpgt --> cmplt.  */
+    case 1341: value = 2050; break;    /* cmphi --> cmplo.  */
+    case 1344: value = 2051; break;    /* cmphs --> cmpls.  */
+    case 1366: value = 1278; break;    /* cpy --> mov.  */
+    case 1367: value = 1280; break;    /* cpy --> mov.  */
+    case 1368: value = 2059; break;    /* cpy --> fmov.  */
+    case 1380: value = 1273; break;    /* dup --> mov.  */
+    case 1381: value = 1275; break;    /* dup --> mov.  */
+    case 1382: value = 2058; break;    /* dup --> fmov.  */
+    case 1383: value = 1276; break;    /* dupm --> mov.  */
+    case 1385: value = 2053; break;    /* eor --> eon.  */
+    case 1387: value = 1286; break;    /* eor --> not.  */
+    case 1388: value = 1287; break;    /* eors --> nots.  */
+    case 1393: value = 2054; break;    /* facge --> facle.  */
+    case 1394: value = 2055; break;    /* facgt --> faclt.  */
+    case 1407: value = 2056; break;    /* fcmge --> fcmle.  */
+    case 1409: value = 2057; break;    /* fcmgt --> fcmlt.  */
+    case 1415: value = 1270; break;    /* fcpy --> fmov.  */
+    case 1438: value = 1269; break;    /* fdup --> fmov.  */
+    case 1769: value = 1271; break;    /* orr --> mov.  */
+    case 1770: value = 2060; break;    /* orr --> orn.  */
+    case 1772: value = 1274; break;    /* orr --> mov.  */
+    case 1773: value = 1284; break;    /* orrs --> movs.  */
+    case 1835: value = 1279; break;    /* sel --> mov.  */
+    case 1836: value = 1282; break;    /* sel --> mov.  */
     default: return NULL;
     }
 
@@ -24033,72 +25634,72 @@ aarch64_find_next_alias_opcode (const aarch64_opcode *opcode)
     case 1185: value = 1136; break;    /* stuminl --> lduminl.  */
     case 1187: value = 1186; break;    /* mov --> movn.  */
     case 1189: value = 1188; break;    /* mov --> movz.  */
-    case 1246: value = 1245; break;    /* autibsp --> autibz.  */
-    case 1245: value = 1244; break;    /* autibz --> autiasp.  */
-    case 1244: value = 1243; break;    /* autiasp --> autiaz.  */
-    case 1243: value = 1242; break;    /* autiaz --> pacibsp.  */
-    case 1242: value = 1241; break;    /* pacibsp --> pacibz.  */
-    case 1241: value = 1240; break;    /* pacibz --> paciasp.  */
-    case 1240: value = 1239; break;    /* paciasp --> paciaz.  */
-    case 1239: value = 1215; break;    /* paciaz --> tsb.  */
-    case 1215: value = 1214; break;    /* tsb --> psb.  */
-    case 1214: value = 1213; break;    /* psb --> esb.  */
-    case 1213: value = 1212; break;    /* esb --> autib1716.  */
-    case 1212: value = 1211; break;    /* autib1716 --> autia1716.  */
-    case 1211: value = 1210; break;    /* autia1716 --> pacib1716.  */
-    case 1210: value = 1209; break;    /* pacib1716 --> pacia1716.  */
-    case 1209: value = 1208; break;    /* pacia1716 --> xpaclri.  */
-    case 1208: value = 1206; break;    /* xpaclri --> sevl.  */
-    case 1206: value = 1205; break;    /* sevl --> sev.  */
-    case 1205: value = 1204; break;    /* sev --> wfi.  */
-    case 1204: value = 1203; break;    /* wfi --> wfe.  */
-    case 1203: value = 1202; break;    /* wfe --> yield.  */
-    case 1202: value = 1201; break;    /* yield --> bti.  */
-    case 1201: value = 1200; break;    /* bti --> csdb.  */
-    case 1200: value = 1199; break;    /* csdb --> nop.  */
-    case 1199: value = 1198; break;    /* nop --> hint.  */
-    case 1221: value = 1220; break;    /* pssbb --> ssbb.  */
-    case 1220: value = 1219; break;    /* ssbb --> dfb.  */
-    case 1219: value = 1217; break;    /* dfb --> dsb.  */
-    case 1234: value = 1233; break;    /* cpp --> dvp.  */
-    case 1233: value = 1232; break;    /* dvp --> cfp.  */
-    case 1232: value = 1229; break;    /* cfp --> tlbi.  */
-    case 1229: value = 1228; break;    /* tlbi --> ic.  */
-    case 1228: value = 1227; break;    /* ic --> dc.  */
-    case 1227: value = 1226; break;    /* dc --> at.  */
-    case 1226: value = 1225; break;    /* at --> sys.  */
-    case 2044: value = 1294; break;    /* bic --> and.  */
-    case 1277: value = 1296; break;    /* mov --> and.  */
-    case 1281: value = 1297; break;    /* movs --> ands.  */
-    case 2045: value = 1332; break;    /* cmple --> cmpge.  */
-    case 2048: value = 1335; break;    /* cmplt --> cmpgt.  */
-    case 2046: value = 1337; break;    /* cmplo --> cmphi.  */
-    case 2047: value = 1340; break;    /* cmpls --> cmphs.  */
-    case 1274: value = 1362; break;    /* mov --> cpy.  */
-    case 1276: value = 1363; break;    /* mov --> cpy.  */
-    case 2055: value = 1279; break;    /* fmov --> mov.  */
-    case 1279: value = 1364; break;    /* mov --> cpy.  */
-    case 1269: value = 1376; break;    /* mov --> dup.  */
-    case 1271: value = 1268; break;    /* mov --> mov.  */
-    case 1268: value = 1377; break;    /* mov --> dup.  */
-    case 2054: value = 1273; break;    /* fmov --> mov.  */
-    case 1273: value = 1378; break;    /* mov --> dup.  */
-    case 1272: value = 1379; break;    /* mov --> dupm.  */
-    case 2049: value = 1381; break;    /* eon --> eor.  */
-    case 1282: value = 1383; break;    /* not --> eor.  */
-    case 1283: value = 1384; break;    /* nots --> eors.  */
-    case 2050: value = 1389; break;    /* facle --> facge.  */
-    case 2051: value = 1390; break;    /* faclt --> facgt.  */
-    case 2052: value = 1403; break;    /* fcmle --> fcmge.  */
-    case 2053: value = 1405; break;    /* fcmlt --> fcmgt.  */
-    case 1266: value = 1411; break;    /* fmov --> fcpy.  */
-    case 1265: value = 1434; break;    /* fmov --> fdup.  */
-    case 1267: value = 1765; break;    /* mov --> orr.  */
-    case 2056: value = 1766; break;    /* orn --> orr.  */
-    case 1270: value = 1768; break;    /* mov --> orr.  */
-    case 1280: value = 1769; break;    /* movs --> orrs.  */
-    case 1275: value = 1831; break;    /* mov --> sel.  */
-    case 1278: value = 1832; break;    /* mov --> sel.  */
+    case 1250: value = 1249; break;    /* autibsp --> autibz.  */
+    case 1249: value = 1248; break;    /* autibz --> autiasp.  */
+    case 1248: value = 1247; break;    /* autiasp --> autiaz.  */
+    case 1247: value = 1246; break;    /* autiaz --> pacibsp.  */
+    case 1246: value = 1245; break;    /* pacibsp --> pacibz.  */
+    case 1245: value = 1244; break;    /* pacibz --> paciasp.  */
+    case 1244: value = 1243; break;    /* paciasp --> paciaz.  */
+    case 1243: value = 1219; break;    /* paciaz --> tsb.  */
+    case 1219: value = 1218; break;    /* tsb --> psb.  */
+    case 1218: value = 1217; break;    /* psb --> esb.  */
+    case 1217: value = 1216; break;    /* esb --> autib1716.  */
+    case 1216: value = 1215; break;    /* autib1716 --> autia1716.  */
+    case 1215: value = 1214; break;    /* autia1716 --> pacib1716.  */
+    case 1214: value = 1213; break;    /* pacib1716 --> pacia1716.  */
+    case 1213: value = 1212; break;    /* pacia1716 --> xpaclri.  */
+    case 1212: value = 1210; break;    /* xpaclri --> sevl.  */
+    case 1210: value = 1209; break;    /* sevl --> sev.  */
+    case 1209: value = 1208; break;    /* sev --> wfi.  */
+    case 1208: value = 1207; break;    /* wfi --> wfe.  */
+    case 1207: value = 1206; break;    /* wfe --> yield.  */
+    case 1206: value = 1205; break;    /* yield --> bti.  */
+    case 1205: value = 1204; break;    /* bti --> csdb.  */
+    case 1204: value = 1203; break;    /* csdb --> nop.  */
+    case 1203: value = 1202; break;    /* nop --> hint.  */
+    case 1225: value = 1224; break;    /* pssbb --> ssbb.  */
+    case 1224: value = 1223; break;    /* ssbb --> dfb.  */
+    case 1223: value = 1221; break;    /* dfb --> dsb.  */
+    case 1238: value = 1237; break;    /* cpp --> dvp.  */
+    case 1237: value = 1236; break;    /* dvp --> cfp.  */
+    case 1236: value = 1233; break;    /* cfp --> tlbi.  */
+    case 1233: value = 1232; break;    /* tlbi --> ic.  */
+    case 1232: value = 1231; break;    /* ic --> dc.  */
+    case 1231: value = 1230; break;    /* dc --> at.  */
+    case 1230: value = 1229; break;    /* at --> sys.  */
+    case 2048: value = 1298; break;    /* bic --> and.  */
+    case 1281: value = 1300; break;    /* mov --> and.  */
+    case 1285: value = 1301; break;    /* movs --> ands.  */
+    case 2049: value = 1336; break;    /* cmple --> cmpge.  */
+    case 2052: value = 1339; break;    /* cmplt --> cmpgt.  */
+    case 2050: value = 1341; break;    /* cmplo --> cmphi.  */
+    case 2051: value = 1344; break;    /* cmpls --> cmphs.  */
+    case 1278: value = 1366; break;    /* mov --> cpy.  */
+    case 1280: value = 1367; break;    /* mov --> cpy.  */
+    case 2059: value = 1283; break;    /* fmov --> mov.  */
+    case 1283: value = 1368; break;    /* mov --> cpy.  */
+    case 1273: value = 1380; break;    /* mov --> dup.  */
+    case 1275: value = 1272; break;    /* mov --> mov.  */
+    case 1272: value = 1381; break;    /* mov --> dup.  */
+    case 2058: value = 1277; break;    /* fmov --> mov.  */
+    case 1277: value = 1382; break;    /* mov --> dup.  */
+    case 1276: value = 1383; break;    /* mov --> dupm.  */
+    case 2053: value = 1385; break;    /* eon --> eor.  */
+    case 1286: value = 1387; break;    /* not --> eor.  */
+    case 1287: value = 1388; break;    /* nots --> eors.  */
+    case 2054: value = 1393; break;    /* facle --> facge.  */
+    case 2055: value = 1394; break;    /* faclt --> facgt.  */
+    case 2056: value = 1407; break;    /* fcmle --> fcmge.  */
+    case 2057: value = 1409; break;    /* fcmlt --> fcmgt.  */
+    case 1270: value = 1415; break;    /* fmov --> fcpy.  */
+    case 1269: value = 1438; break;    /* fmov --> fdup.  */
+    case 1271: value = 1769; break;    /* mov --> orr.  */
+    case 2060: value = 1770; break;    /* orn --> orr.  */
+    case 1274: value = 1772; break;    /* mov --> orr.  */
+    case 1284: value = 1773; break;    /* movs --> orrs.  */
+    case 1279: value = 1835; break;    /* mov --> sel.  */
+    case 1282: value = 1836; break;    /* mov --> sel.  */
     default: return NULL;
     }
 
@@ -24141,7 +25742,6 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 29:
     case 30:
     case 31:
-    case 166:
     case 167:
     case 168:
     case 169:
@@ -24151,7 +25751,7 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 173:
     case 174:
     case 175:
-    case 190:
+    case 176:
     case 191:
     case 192:
     case 193:
@@ -24160,11 +25760,12 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 196:
     case 197:
     case 198:
-    case 204:
-    case 207:
-    case 209:
+    case 199:
+    case 205:
+    case 208:
     case 210:
     case 211:
+    case 214:
       return aarch64_ext_regno (self, info, code, inst, errors);
     case 10:
       return aarch64_ext_regrt_sysins (self, info, code, inst, errors);
@@ -24180,7 +25781,7 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 33:
     case 34:
     case 35:
-    case 213:
+    case 222:
       return aarch64_ext_reglane (self, info, code, inst, errors);
     case 36:
       return aarch64_ext_reglist (self, info, code, inst, errors);
@@ -24216,9 +25817,8 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 82:
     case 83:
     case 84:
-    case 163:
-    case 165:
-    case 182:
+    case 164:
+    case 166:
     case 183:
     case 184:
     case 185:
@@ -24226,7 +25826,9 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 187:
     case 188:
     case 189:
-    case 212:
+    case 190:
+    case 215:
+    case 221:
       return aarch64_ext_imm (self, info, code, inst, errors);
     case 44:
     case 45:
@@ -24238,10 +25840,10 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 49:
       return aarch64_ext_shll_imm (self, info, code, inst, errors);
     case 52:
-    case 153:
+    case 154:
       return aarch64_ext_fpimm (self, info, code, inst, errors);
     case 70:
-    case 161:
+    case 162:
       return aarch64_ext_limm (self, info, code, inst, errors);
     case 71:
       return aarch64_ext_aimm (self, info, code, inst, errors);
@@ -24251,11 +25853,11 @@ aarch64_extract_operand (const aarch64_operand *self,
       return aarch64_ext_fbits (self, info, code, inst, errors);
     case 75:
     case 76:
-    case 158:
+    case 159:
       return aarch64_ext_imm_rotate2 (self, info, code, inst, errors);
     case 77:
-    case 157:
-    case 159:
+    case 158:
+    case 160:
       return aarch64_ext_imm_rotate1 (self, info, code, inst, errors);
     case 78:
     case 79:
@@ -24331,8 +25933,8 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 133:
     case 134:
     case 135:
-      return aarch64_ext_sve_addr_rr_lsl (self, info, code, inst, errors);
     case 136:
+      return aarch64_ext_sve_addr_rr_lsl (self, info, code, inst, errors);
     case 137:
     case 138:
     case 139:
@@ -24340,53 +25942,70 @@ aarch64_extract_operand (const aarch64_operand *self,
     case 141:
     case 142:
     case 143:
-      return aarch64_ext_sve_addr_rz_xtw (self, info, code, inst, errors);
     case 144:
+      return aarch64_ext_sve_addr_rz_xtw (self, info, code, inst, errors);
     case 145:
     case 146:
     case 147:
-      return aarch64_ext_sve_addr_zi_u5 (self, info, code, inst, errors);
     case 148:
-      return aarch64_ext_sve_addr_zz_lsl (self, info, code, inst, errors);
+      return aarch64_ext_sve_addr_zi_u5 (self, info, code, inst, errors);
     case 149:
-      return aarch64_ext_sve_addr_zz_sxtw (self, info, code, inst, errors);
+      return aarch64_ext_sve_addr_zz_lsl (self, info, code, inst, errors);
     case 150:
-      return aarch64_ext_sve_addr_zz_uxtw (self, info, code, inst, errors);
+      return aarch64_ext_sve_addr_zz_sxtw (self, info, code, inst, errors);
     case 151:
-      return aarch64_ext_sve_aimm (self, info, code, inst, errors);
+      return aarch64_ext_sve_addr_zz_uxtw (self, info, code, inst, errors);
     case 152:
+      return aarch64_ext_sve_aimm (self, info, code, inst, errors);
+    case 153:
       return aarch64_ext_sve_asimm (self, info, code, inst, errors);
-    case 154:
-      return aarch64_ext_sve_float_half_one (self, info, code, inst, errors);
     case 155:
-      return aarch64_ext_sve_float_half_two (self, info, code, inst, errors);
+      return aarch64_ext_sve_float_half_one (self, info, code, inst, errors);
     case 156:
+      return aarch64_ext_sve_float_half_two (self, info, code, inst, errors);
+    case 157:
       return aarch64_ext_sve_float_zero_one (self, info, code, inst, errors);
-    case 160:
+    case 161:
       return aarch64_ext_inv_limm (self, info, code, inst, errors);
-    case 162:
+    case 163:
       return aarch64_ext_sve_limm_mov (self, info, code, inst, errors);
-    case 164:
+    case 165:
       return aarch64_ext_sve_scale (self, info, code, inst, errors);
-    case 176:
     case 177:
     case 178:
-      return aarch64_ext_sve_shlimm (self, info, code, inst, errors);
     case 179:
+      return aarch64_ext_sve_shlimm (self, info, code, inst, errors);
     case 180:
     case 181:
+    case 182:
       return aarch64_ext_sve_shrimm (self, info, code, inst, errors);
-    case 199:
     case 200:
     case 201:
     case 202:
     case 203:
+    case 204:
       return aarch64_ext_sve_quad_index (self, info, code, inst, errors);
-    case 205:
-      return aarch64_ext_sve_index (self, info, code, inst, errors);
     case 206:
-    case 208:
+      return aarch64_ext_sve_index (self, info, code, inst, errors);
+    case 207:
+    case 209:
       return aarch64_ext_sve_reglist (self, info, code, inst, errors);
+    case 212:
+    case 213:
+    case 216:
+      return aarch64_ext_sme_za_hv_tiles (self, info, code, inst, errors);
+    case 217:
+      return aarch64_ext_sme_za_array (self, info, code, inst, errors);
+    case 218:
+      return aarch64_ext_sme_addr_ri_u4xvl (self, info, code, inst, errors);
+    case 219:
+      return aarch64_ext_sme_sm_za (self, info, code, inst, errors);
+    case 220:
+      return aarch64_ext_sme_pred_reg_with_index (self, info, code, inst, errors);
+    case 223:
+    case 224:
+    case 225:
+      return aarch64_ext_x0_to_x30 (self, info, code, inst, errors);
     default: assert (0); abort ();
     }
 }