[PATCH 7/7] aarch64: regenerate autogenerated files from aarch64-gen

Muhammad Kamran muhammad.kamran@arm.com
Thu Aug 27 15:10:14 GMT 2026


This patch contains auto-regenerated files and is to be
squashed into the previous commit.
---
 opcodes/aarch64-asm-2.c |  1 +
 opcodes/aarch64-dis-2.c | 65 +++++++++++++++++++++++++++++++++--------
 opcodes/aarch64-opc-2.c |  1 +
 opcodes/aarch64-tbl-2.h |  4 +++
 4 files changed, 59 insertions(+), 12 deletions(-)

diff --git a/opcodes/aarch64-asm-2.c b/opcodes/aarch64-asm-2.c
index dc80af02893..b0694ea702b 100644
--- a/opcodes/aarch64-asm-2.c
+++ b/opcodes/aarch64-asm-2.c
@@ -938,6 +938,7 @@ aarch64_insert_operand (const aarch64_operand *self,
     case AARCH64_OPND_NZCV:
     case AARCH64_OPND_ADDR_PCREL9:
     case AARCH64_OPND_ADDR_PCREL14:
+    case AARCH64_OPND_ADDR_UPCREL16:
     case AARCH64_OPND_ADDR_PCREL19:
     case AARCH64_OPND_ADDR_PCREL21:
     case AARCH64_OPND_ADDR_PCREL26:
diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c
index 426cded8649..9030ecf0e48 100644
--- a/opcodes/aarch64-dis-2.c
+++ b/opcodes/aarch64-dis-2.c
@@ -13208,10 +13208,30 @@ aarch64_opcode_lookup_1 (uint32_t word)
                     }
                   else
                     {
-                      /* 33222222222211111111110000000000
-                         10987654321098765432109876543210
-                         xxxx00111xxxxxxxxxxxxxxxxxxxxxxx.  */
-                      return A64_OPID_13800000_extr_Rd_Rn_Rm_IMMS;
+                      if (((word >> 21) & 0x1) == 0)
+                        {
+                          if (((word >> 29) & 0x1) == 0)
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 xx0x00111x0xxxxxxxxxxxxxxxxxxxxx.  */
+                              return A64_OPID_13800000_extr_Rd_Rn_Rm_IMMS;
+                            }
+                          else
+                            {
+                              /* 33222222222211111111110000000000
+                                 10987654321098765432109876543210
+                                 xx1x00111x0xxxxxxxxxxxxxxxxxxxxx.  */
+                              return A64_OPID_f380001f_autiasppc_ADDR_UPCREL16;
+                            }
+                        }
+                      else
+                        {
+                          /* 33222222222211111111110000000000
+                             10987654321098765432109876543210
+                             xxxx00111x1xxxxxxxxxxxxxxxxxxxxx.  */
+                          return A64_OPID_f3a0001f_autibsppc_ADDR_UPCREL16;
+                        }
                     }
                 }
               else
@@ -26995,10 +27015,20 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                     {
                                       if (((word >> 25) & 0x1) == 0)
                                         {
-                                          /* 33222222222211111111110000000000
-                                             10987654321098765432109876543210
-                                             x1010101000xxxxxxxxxxxxxxxxxxxxx.  */
-                                          return A64_OPID_d500403f_xaflag;
+                                          if (((word >> 31) & 0x1) == 0)
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 01010101000xxxxxxxxxxxxxxxxxxxxx.  */
+                                              return A64_OPID_5500001f_retaasppc_ADDR_UPCREL16;
+                                            }
+                                          else
+                                            {
+                                              /* 33222222222211111111110000000000
+                                                 10987654321098765432109876543210
+                                                 11010101000xxxxxxxxxxxxxxxxxxxxx.  */
+                                              return A64_OPID_d500403f_xaflag;
+                                            }
                                         }
                                       else
                                         {
@@ -27080,10 +27110,20 @@ aarch64_opcode_lookup_1 (uint32_t word)
                                 {
                                   if (((word >> 25) & 0x1) == 0)
                                     {
-                                      /* 33222222222211111111110000000000
-                                         10987654321098765432109876543210
-                                         x1010101x01xxxxxxxxxxxxxxxxxxxxx.  */
-                                      return A64_OPID_d5233060_tstart_Rd;
+                                      if (((word >> 31) & 0x1) == 0)
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             01010101x01xxxxxxxxxxxxxxxxxxxxx.  */
+                                          return A64_OPID_5520001f_retabsppc_ADDR_UPCREL16;
+                                        }
+                                      else
+                                        {
+                                          /* 33222222222211111111110000000000
+                                             10987654321098765432109876543210
+                                             11010101x01xxxxxxxxxxxxxxxxxxxxx.  */
+                                          return A64_OPID_d5233060_tstart_Rd;
+                                        }
                                     }
                                   else
                                     {
@@ -38034,6 +38074,7 @@ aarch64_extract_operand (const aarch64_operand *self,
     case AARCH64_OPND_ADDR_ADRP:
     case AARCH64_OPND_ADDR_PCREL9:
     case AARCH64_OPND_ADDR_PCREL14:
+    case AARCH64_OPND_ADDR_UPCREL16:
     case AARCH64_OPND_ADDR_PCREL19:
     case AARCH64_OPND_ADDR_PCREL21:
     case AARCH64_OPND_ADDR_PCREL26:
diff --git a/opcodes/aarch64-opc-2.c b/opcodes/aarch64-opc-2.c
index 1ffe9e807f1..dc46237f236 100644
--- a/opcodes/aarch64-opc-2.c
+++ b/opcodes/aarch64-opc-2.c
@@ -120,6 +120,7 @@ const struct aarch64_operand aarch64_operands[] =
   {AARCH64_OPND_CLASS_ADDRESS, "ADDR_ADRP", OPD_F_SEXT | OPD_F_HAS_EXTRACTOR, {{19, 5, false}, {2, 29, false}}, "21-bit PC-relative address of a 4KB page"},
   {AARCH64_OPND_CLASS_ADDRESS, "ADDR_PCREL9", OPD_F_SEXT | OPD_F_SHIFT_BY_2 | OPD_F_HAS_INSERTER | OPD_F_HAS_EXTRACTOR, {{9, 5, false}}, "9-bit PC-relative address"},
   {AARCH64_OPND_CLASS_ADDRESS, "ADDR_PCREL14", OPD_F_SEXT | OPD_F_SHIFT_BY_2 | OPD_F_HAS_INSERTER | OPD_F_HAS_EXTRACTOR, {{14, 5, false}}, "14-bit PC-relative address"},
+  {AARCH64_OPND_CLASS_ADDRESS, "ADDR_UPCREL16", OPD_F_SHIFT_BY_2 | OPD_F_UNSIGNED | OPD_F_HAS_INSERTER | OPD_F_HAS_EXTRACTOR, {{16, 5, false}}, "unsigned 16-bit PC-relative offset (imm16:'00')"},
   {AARCH64_OPND_CLASS_ADDRESS, "ADDR_PCREL19", OPD_F_SEXT | OPD_F_SHIFT_BY_2 | OPD_F_HAS_INSERTER | OPD_F_HAS_EXTRACTOR, {{19, 5, false}}, "19-bit PC-relative address"},
   {AARCH64_OPND_CLASS_ADDRESS, "ADDR_PCREL21", OPD_F_SEXT | OPD_F_HAS_INSERTER | OPD_F_HAS_EXTRACTOR, {{19, 5, false}, {2, 29, false}}, "21-bit PC-relative address"},
   {AARCH64_OPND_CLASS_ADDRESS, "ADDR_PCREL26", OPD_F_SEXT | OPD_F_SHIFT_BY_2 | OPD_F_HAS_INSERTER | OPD_F_HAS_EXTRACTOR, {{26, 0, false}}, "26-bit PC-relative address"},
diff --git a/opcodes/aarch64-tbl-2.h b/opcodes/aarch64-tbl-2.h
index 8217b0bcbca..9d9fc900a0f 100644
--- a/opcodes/aarch64-tbl-2.h
+++ b/opcodes/aarch64-tbl-2.h
@@ -691,6 +691,8 @@ enum aarch64_opcode_idx
   A64_OPID_d69f0fff_eretab,
   A64_OPID_d65f0be0_retaasppcr_Rd,
   A64_OPID_d65f0fe0_retabsppcr_Rd,
+  A64_OPID_5500001f_retaasppc_ADDR_UPCREL16,
+  A64_OPID_5520001f_retabsppc_ADDR_UPCREL16,
   A64_OPID_34000000_cbz_Rt_ADDR_PCREL19,
   A64_OPID_35000000_cbnz_Rt_ADDR_PCREL19,
   A64_OPID_54000000_b_c_ADDR_PCREL19,
@@ -785,6 +787,8 @@ enum aarch64_opcode_idx
   A64_OPID_dac11c00_autdb_Rd_Rn_SP,
   A64_OPID_dac1901e_autiasppcr_Rn,
   A64_OPID_dac1941e_autibsppcr_Rn,
+  A64_OPID_f380001f_autiasppc_ADDR_UPCREL16,
+  A64_OPID_f3a0001f_autibsppc_ADDR_UPCREL16,
   A64_OPID_dac1bbfe_autia171615,
   A64_OPID_dac1bffe_autib171615,
   A64_OPID_dac123e0_paciza_Rd,
-- 
2.43.0



More information about the Binutils mailing list