]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
gdb: remove gdbarch_stab_reg_to_regnum
authorSimon Marchi <simon.marchi@efficios.com>
Fri, 9 Jan 2026 16:56:45 +0000 (11:56 -0500)
committerSimon Marchi <simon.marchi@efficios.com>
Fri, 9 Jan 2026 19:14:56 +0000 (14:14 -0500)
It is unused, presumably since we removed stab support.

Change-Id: I71d00707afc4a4a23a1644b4233caaa47f4301e4
Approved-By: Tom Tromey <tom@tromey.com>
15 files changed:
gdb/amd64-tdep.c
gdb/csky-tdep.c
gdb/gdbarch-gen.c
gdb/gdbarch-gen.h
gdb/gdbarch_components.py
gdb/h8300-tdep.c
gdb/i386-go32-tdep.c
gdb/i386-tdep.c
gdb/m32c-tdep.c
gdb/mep-tdep.c
gdb/mips-tdep.c
gdb/ppc-linux-tdep.c
gdb/rs6000-tdep.c
gdb/s390-tdep.c
gdb/xtensa-tdep.c

index 331ef6f0a647b0cc156b628413da959644791117..a4a6e9483b208857e6ee694287559d0d05d2141f 100755 (executable)
@@ -3592,12 +3592,7 @@ amd64_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch,
   set_gdbarch_fp0_regnum (gdbarch, AMD64_ST0_REGNUM); /* %st(0) */
 
   /* The "default" register numbering scheme for AMD64 is referred to
-     as the "DWARF Register Number Mapping" in the System V psABI.
-     The preferred debugging format for all known AMD64 targets is
-     actually DWARF2, and GCC doesn't seem to support DWARF (that is
-     DWARF-1), but we provide the same mapping just in case.  This
-     mapping is also used for stabs, which GCC does support.  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch, amd64_dwarf_reg_to_regnum);
+     as the "DWARF Register Number Mapping" in the System V psABI.  */
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, amd64_dwarf_reg_to_regnum);
 
   /* We don't override SDB_REG_RO_REGNUM, since COFF doesn't seem to
index dad0a05c433b10f28b25ebd6e09a34b6443359de..d2161f98bf8e483f6c9f37666af207c0a8f6cc25 100644 (file)
@@ -2828,7 +2828,6 @@ csky_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_write_pc (gdbarch, csky_write_pc);
   csky_add_reggroups (gdbarch);
   set_gdbarch_register_reggroup_p (gdbarch, csky_register_reggroup_p);
-  set_gdbarch_stab_reg_to_regnum (gdbarch, csky_dwarf_reg_to_regnum);
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, csky_dwarf_reg_to_regnum);
   dwarf2_frame_set_init_reg (gdbarch, csky_dwarf2_frame_init_reg);
 
index 1f70d37a3fcb9502a6230584f3a4eec41c7aa610..f2591709a89119c37e8d943acb17addab6aaa987 100644 (file)
@@ -85,7 +85,6 @@ struct gdbarch
   int pc_regnum = -1;
   int ps_regnum = -1;
   int fp0_regnum = -1;
-  gdbarch_stab_reg_to_regnum_ftype *stab_reg_to_regnum = no_op_reg_to_regnum;
   gdbarch_ecoff_reg_to_regnum_ftype *ecoff_reg_to_regnum = no_op_reg_to_regnum;
   gdbarch_sdb_reg_to_regnum_ftype *sdb_reg_to_regnum = no_op_reg_to_regnum;
   gdbarch_dwarf2_reg_to_regnum_ftype *dwarf2_reg_to_regnum = no_op_reg_to_regnum;
@@ -347,7 +346,6 @@ verify_gdbarch (struct gdbarch *gdbarch)
   /* Skip verify of pc_regnum, invalid_p == 0.  */
   /* Skip verify of ps_regnum, invalid_p == 0.  */
   /* Skip verify of fp0_regnum, invalid_p == 0.  */
-  /* Skip verify of stab_reg_to_regnum, invalid_p == 0.  */
   /* Skip verify of ecoff_reg_to_regnum, invalid_p == 0.  */
   /* Skip verify of sdb_reg_to_regnum, invalid_p == 0.  */
   /* Skip verify of dwarf2_reg_to_regnum, invalid_p == 0.  */
@@ -707,9 +705,6 @@ gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file)
   gdb_printf (file,
              "gdbarch_dump: fp0_regnum = %s\n",
              plongest (gdbarch->fp0_regnum));
-  gdb_printf (file,
-             "gdbarch_dump: stab_reg_to_regnum = <%s>\n",
-             host_address_to_string (gdbarch->stab_reg_to_regnum));
   gdb_printf (file,
              "gdbarch_dump: ecoff_reg_to_regnum = <%s>\n",
              host_address_to_string (gdbarch->ecoff_reg_to_regnum));
@@ -2156,23 +2151,6 @@ set_gdbarch_fp0_regnum (struct gdbarch *gdbarch,
   gdbarch->fp0_regnum = fp0_regnum;
 }
 
-int
-gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, int stab_regnr)
-{
-  gdb_assert (gdbarch != NULL);
-  gdb_assert (gdbarch->stab_reg_to_regnum != NULL);
-  if (gdbarch_debug >= 2)
-    gdb_printf (gdb_stdlog, "gdbarch_stab_reg_to_regnum called\n");
-  return gdbarch->stab_reg_to_regnum (gdbarch, stab_regnr);
-}
-
-void
-set_gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch,
-                               gdbarch_stab_reg_to_regnum_ftype stab_reg_to_regnum)
-{
-  gdbarch->stab_reg_to_regnum = stab_reg_to_regnum;
-}
-
 int
 gdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch, int ecoff_regnr)
 {
index 897f33ca3d2c08b87a6bc255db1731e107bc5c62..2fbb09a38f8fda033fabb83d144112ad720f73f2 100644 (file)
@@ -283,12 +283,6 @@ extern void set_gdbarch_ps_regnum (struct gdbarch *gdbarch, int ps_regnum);
 extern int gdbarch_fp0_regnum (struct gdbarch *gdbarch);
 extern void set_gdbarch_fp0_regnum (struct gdbarch *gdbarch, int fp0_regnum);
 
-/* Convert stab register number (from `r' declaration) to a gdb REGNUM. */
-
-typedef int (gdbarch_stab_reg_to_regnum_ftype) (struct gdbarch *gdbarch, int stab_regnr);
-extern int gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, int stab_regnr);
-extern void set_gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, gdbarch_stab_reg_to_regnum_ftype *stab_reg_to_regnum);
-
 /* Provide a default mapping from a ecoff register number to a gdb REGNUM. */
 
 typedef int (gdbarch_ecoff_reg_to_regnum_ftype) (struct gdbarch *gdbarch, int ecoff_regnr);
index dcd82d85d32435c8c7357f8a86dc6ead34d4845b..3f23dfce8778762239e50bae37c3ab375c4a0a49 100644 (file)
@@ -544,17 +544,6 @@ Value(
     invalid=False,
 )
 
-Method(
-    comment="""
-Convert stab register number (from `r' declaration) to a gdb REGNUM.
-""",
-    type="int",
-    name="stab_reg_to_regnum",
-    params=[("int", "stab_regnr")],
-    predefault="no_op_reg_to_regnum",
-    invalid=False,
-)
-
 Method(
     comment="""
 Provide a default mapping from a ecoff register number to a gdb REGNUM.
index 1eb798a34c6ee5772ab04a39a5b4e9f21d85f00a..5e828b04f0eb53a4c0452eec4713c103fc938183 100644 (file)
@@ -1252,7 +1252,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_num_regs (gdbarch, 13);
       set_gdbarch_num_pseudo_regs (gdbarch, 1);
       set_gdbarch_dwarf2_reg_to_regnum (gdbarch, h8300_dbg_reg_to_regnum);
-      set_gdbarch_stab_reg_to_regnum (gdbarch, h8300_dbg_reg_to_regnum);
       set_gdbarch_register_name (gdbarch, h8300_register_name);
       set_gdbarch_ptr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
       set_gdbarch_addr_bit (gdbarch, 2 * TARGET_CHAR_BIT);
@@ -1263,7 +1262,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_num_regs (gdbarch, 13);
       set_gdbarch_num_pseudo_regs (gdbarch, 1);
       set_gdbarch_dwarf2_reg_to_regnum (gdbarch, h8300_dbg_reg_to_regnum);
-      set_gdbarch_stab_reg_to_regnum (gdbarch, h8300_dbg_reg_to_regnum);
       set_gdbarch_register_name (gdbarch, h8300h_register_name);
       if (info.bfd_arch_info->mach != bfd_mach_h8300hn)
        {
@@ -1282,7 +1280,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_num_regs (gdbarch, 16);
       set_gdbarch_num_pseudo_regs (gdbarch, 2);
       set_gdbarch_dwarf2_reg_to_regnum (gdbarch, h8300s_dbg_reg_to_regnum);
-      set_gdbarch_stab_reg_to_regnum (gdbarch, h8300s_dbg_reg_to_regnum);
       set_gdbarch_register_name (gdbarch, h8300s_register_name);
       if (info.bfd_arch_info->mach != bfd_mach_h8300sn)
        {
@@ -1301,7 +1298,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_num_regs (gdbarch, 18);
       set_gdbarch_num_pseudo_regs (gdbarch, 2);
       set_gdbarch_dwarf2_reg_to_regnum (gdbarch, h8300s_dbg_reg_to_regnum);
-      set_gdbarch_stab_reg_to_regnum (gdbarch, h8300s_dbg_reg_to_regnum);
       set_gdbarch_register_name (gdbarch, h8300sx_register_name);
       if (info.bfd_arch_info->mach != bfd_mach_h8300sxn)
        {
index 23b754e414884418f61f3bee0068681f4dbd5701..731f97c756e126dab8b6efd9d143547944e3e83a 100644 (file)
@@ -37,10 +37,8 @@ i386_go32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
     tdep->tdesc = i386_target_description (X86_XSTATE_X87_MASK, false);
 
   /* Native compiler is GCC, which uses the SVR4 register numbering
-     even in COFF and STABS.  See the comment in i386_gdbarch_init,
-     before the calls to set_gdbarch_stab_reg_to_regnum and
-     set_gdbarch_sdb_reg_to_regnum.  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch, i386_svr4_reg_to_regnum);
+     even in COFF.  See the comment in i386_gdbarch_init, before the
+     call to set_gdbarch_sdb_reg_to_regnum.  */
   set_gdbarch_sdb_reg_to_regnum (gdbarch, i386_svr4_reg_to_regnum);
 
   set_gdbarch_has_dos_based_file_system (gdbarch, 1);
index 6fde4d19aeefa86fe2f3f4a84bdc5cd28f3c63bc..9843ea6b3dc29d43405200d74938d9ef21c51151 100644 (file)
@@ -4244,9 +4244,6 @@ i386_elf_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   static const char *const stap_register_indirection_suffixes[] = { ")",
                                                                    NULL };
 
-  /* We typically use stabs-in-ELF with the SVR4 register numbering.  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch, i386_svr4_reg_to_regnum);
-
   /* Registering SystemTap handlers.  */
   set_gdbarch_stap_integer_prefixes (gdbarch, stap_integer_prefixes);
   set_gdbarch_stap_register_prefixes (gdbarch, stap_register_prefixes);
@@ -8894,16 +8891,12 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
      the defaults below will have to be overridden, like
      i386_elf_init_abi() does.  */
 
-  /* Use the dbx register numbering scheme for stabs and COFF.  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch, i386_dbx_reg_to_regnum);
+  /* Use the dbx register numbering scheme for COFF.  */
   set_gdbarch_sdb_reg_to_regnum (gdbarch, i386_dbx_reg_to_regnum);
 
   /* Use the SVR4 register numbering scheme for DWARF 2.  */
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, i386_svr4_dwarf_reg_to_regnum);
 
-  /* We don't set gdbarch_stab_reg_to_regnum, since ECOFF doesn't seem to
-     be in use on any of the supported i386 targets.  */
-
   set_gdbarch_print_float_info (gdbarch, i387_print_float_info);
 
   set_gdbarch_get_longjmp_target (gdbarch, i386_get_longjmp_target);
index 7bb53b4034f77650542c8f8262098474b624c588..308e2e15ac050be6f589d9ec322610282fbf71a8 100644 (file)
@@ -980,7 +980,6 @@ make_regs (struct gdbarch *arch)
   set_gdbarch_deprecated_pseudo_register_write (arch,
                                                m32c_pseudo_register_write);
   set_gdbarch_register_sim_regno (arch, m32c_register_sim_regno);
-  set_gdbarch_stab_reg_to_regnum (arch, m32c_debug_info_reg_to_regnum);
   set_gdbarch_dwarf2_reg_to_regnum (arch, m32c_debug_info_reg_to_regnum);
   set_gdbarch_register_reggroup_p (arch, m32c_register_reggroup_p);
 
index fd522de24669d8317e2963bf5872675eef4455d7..e4a0408836da311069bf62266b7fc5a7a13607d3 100644 (file)
@@ -2427,7 +2427,6 @@ mep_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_deprecated_pseudo_register_write (gdbarch,
                                                mep_pseudo_register_write);
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, mep_debug_reg_to_regnum);
-  set_gdbarch_stab_reg_to_regnum (gdbarch, mep_debug_reg_to_regnum);
 
   set_gdbarch_register_reggroup_p (gdbarch, mep_register_reggroup_p);
   reggroup_add (gdbarch, mep_csr_reggroup);
index 8251fb1e4c4b7d3ccead36a45383cb5632d2273c..69767f50075e8e39226ff80c150c31c219188e63 100644 (file)
@@ -7895,28 +7895,6 @@ mips_skip_trampoline_code (const frame_info_ptr &frame, CORE_ADDR pc)
   return pc != requested_pc ? pc : 0;
 }
 
-/* Convert a dbx stab register number (from `r' declaration) to a GDB
-   [1 * gdbarch_num_regs .. 2 * gdbarch_num_regs) REGNUM.  */
-
-static int
-mips_stab_reg_to_regnum (struct gdbarch *gdbarch, int num)
-{
-  int regnum;
-  if (num >= 0 && num < 32)
-    regnum = num;
-  else if (num >= 38 && num < 70)
-    regnum = num + mips_regnum (gdbarch)->fp0 - 38;
-  else if (num == 70)
-    regnum = mips_regnum (gdbarch)->hi;
-  else if (num == 71)
-    regnum = mips_regnum (gdbarch)->lo;
-  else if (mips_regnum (gdbarch)->dspacc != -1 && num >= 72 && num < 78)
-    regnum = num + mips_regnum (gdbarch)->dspacc - 72;
-  else
-    return -1;
-  return gdbarch_num_regs (gdbarch) + regnum;
-}
-
 /* Convert a dwarf, dwarf2, or ecoff register number to a GDB [1 *
    gdbarch_num_regs .. 2 * gdbarch_num_regs) REGNUM.  */
 
@@ -8689,7 +8667,6 @@ mips_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_dummy_id (gdbarch, mips_dummy_id);
 
   /* Map debug register numbers onto internal register numbers.  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch, mips_stab_reg_to_regnum);
   set_gdbarch_ecoff_reg_to_regnum (gdbarch,
                                   mips_dwarf_dwarf2_ecoff_reg_to_regnum);
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch,
index c06c30310861644aa892d82a7249610f3e2d310c..40f0a82435213735d0df2afb8fb2fea7404cd0a2 100644 (file)
@@ -2257,11 +2257,6 @@ ppc_linux_init_abi (struct gdbarch_info info,
   /* Linux DWARF register mapping is different from the other OSes.  */
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch,
                                    rs6000_linux_dwarf2_reg_to_regnum);
-  /* Note on Linux the mapping for the DWARF registers and the stab registers
-     use the same numbers.  Install rs6000_linux_dwarf2_reg_to_regnum for the
-     stab register mappings as well.  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch,
-                                   rs6000_linux_dwarf2_reg_to_regnum);
   dwarf2_frame_set_adjust_regnum (gdbarch, rs6000_linux_adjust_frame_regnum);
 
   if (tdep->wordsize == 4)
index 937da907aa73c2d1c1708f3db3ee48375486ad34..ab17126e50ea6ec15757df585e39d8e84b474f45 100644 (file)
@@ -3355,48 +3355,6 @@ rs6000_gen_return_address (struct gdbarch *gdbarch,
 }
 
 
-/* Convert a DBX STABS register number to a GDB register number.  */
-static int
-rs6000_stab_reg_to_regnum (struct gdbarch *gdbarch, int num)
-{
-  ppc_gdbarch_tdep *tdep = gdbarch_tdep<ppc_gdbarch_tdep> (gdbarch);
-
-  if (0 <= num && num <= 31)
-    return tdep->ppc_gp0_regnum + num;
-  else if (32 <= num && num <= 63)
-    /* FIXME: jimb/2004-05-05: What should we do when the debug info
-       specifies registers the architecture doesn't have?  Our
-       callers don't check the value we return.  */
-    return tdep->ppc_fp0_regnum + (num - 32);
-  else if (77 <= num && num <= 108)
-    return tdep->ppc_vr0_regnum + (num - 77);
-  else if (1200 <= num && num < 1200 + 32)
-    return tdep->ppc_ev0_upper_regnum + (num - 1200);
-  else
-    switch (num)
-      {
-      case 64:
-       return tdep->ppc_mq_regnum;
-      case 65:
-       return tdep->ppc_lr_regnum;
-      case 66:
-       return tdep->ppc_ctr_regnum;
-      case 76:
-       return tdep->ppc_xer_regnum;
-      case 109:
-       return tdep->ppc_vrsave_regnum;
-      case 110:
-       return tdep->ppc_vrsave_regnum - 1; /* vscr */
-      case 111:
-       return tdep->ppc_acc_regnum;
-      case 112:
-       return tdep->ppc_spefscr_regnum;
-      default:
-       return num;
-      }
-}
-
-
 /* Convert a Dwarf 2 register number to a GDB register number.  */
 static int
 rs6000_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int num)
@@ -8430,7 +8388,6 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_value_to_register (gdbarch, rs6000_value_to_register);
   set_gdbarch_value_from_register (gdbarch, rs6000_value_from_register);
 
-  set_gdbarch_stab_reg_to_regnum (gdbarch, rs6000_stab_reg_to_regnum);
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, rs6000_dwarf2_reg_to_regnum);
 
   if (wordsize == 4)
index 93a4d45904bf2b09ba03617fb1e0c9ea31db490f..7df7efa8414646e21e25f0050bf954a96b62bc67 100644 (file)
@@ -7309,7 +7309,6 @@ s390_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_fp0_regnum (gdbarch, S390_F0_REGNUM);
   set_gdbarch_guess_tracepoint_registers (gdbarch,
                                          s390_guess_tracepoint_registers);
-  set_gdbarch_stab_reg_to_regnum (gdbarch, s390_dwarf_reg_to_regnum);
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, s390_dwarf_reg_to_regnum);
   set_gdbarch_value_from_register (gdbarch, s390_value_from_register);
   set_gdbarch_dwarf2_reg_piece_offset (gdbarch, s390_dwarf2_reg_piece_offset);
index d355423021be4bbeee701c99400b43a866202b07..4d66d6f4142076d86e8feace1c20ca3807bceb79 100644 (file)
@@ -3184,8 +3184,7 @@ xtensa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_pc_regnum (gdbarch, tdep->pc_regnum);
   set_gdbarch_ps_regnum (gdbarch, tdep->ps_regnum);
 
-  /* Renumber registers for known formats (stabs and dwarf2).  */
-  set_gdbarch_stab_reg_to_regnum (gdbarch, xtensa_reg_to_regnum);
+  /* Renumber registers for known formats (dwarf2).  */
   set_gdbarch_dwarf2_reg_to_regnum (gdbarch, xtensa_reg_to_regnum);
 
   /* We provide our own function to get register information.  */