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

Muhammad Kamran <[email protected]>
Newsgroups gmane.comp.gnu.binutils
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.