[binutils-gdb] gdb: remove gdbarch_sdb_reg_to_regnum

Simon Marchi simark@sourceware.org
Sat Jan 17 14:59:19 GMT 2026


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e894e456f04d87adf4c05c218fc6869fed15311d

commit e894e456f04d87adf4c05c218fc6869fed15311d
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Fri Jan 16 22:44:55 2026 -0500

    gdb: remove gdbarch_sdb_reg_to_regnum
    
    Following the removal of the COFF debug info support,
    gdbarch_sdb_reg_to_regnum is no longer used, remove it.
    
    Change-Id: I2cb43465f1fdf74863edfa4dd00fd5f28a5a26bd
    Approved-By: Andrew Burgess <aburgess@redhat.com>

Diff:
---
 gdb/gdbarch-gen.c         | 22 ----------------------
 gdb/gdbarch-gen.h         |  6 ------
 gdb/gdbarch_components.py | 11 -----------
 gdb/i386-go32-tdep.c      |  5 -----
 gdb/i386-tdep.c           |  3 ---
 5 files changed, 47 deletions(-)

diff --git a/gdb/gdbarch-gen.c b/gdb/gdbarch-gen.c
index 76704034149..fb3d070b3c9 100644
--- a/gdb/gdbarch-gen.c
+++ b/gdb/gdbarch-gen.c
@@ -85,7 +85,6 @@ struct gdbarch
   int pc_regnum = -1;
   int ps_regnum = -1;
   int fp0_regnum = -1;
-  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;
   gdbarch_register_name_ftype *register_name = nullptr;
   gdbarch_register_type_ftype *register_type = nullptr;
@@ -345,7 +344,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 sdb_reg_to_regnum, invalid_p == 0.  */
   /* Skip verify of dwarf2_reg_to_regnum, invalid_p == 0.  */
   if (gdbarch->register_name == 0)
     log.puts ("\n\tregister_name");
@@ -703,9 +701,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: sdb_reg_to_regnum = <%s>\n",
-	      host_address_to_string (gdbarch->sdb_reg_to_regnum));
   gdb_printf (file,
 	      "gdbarch_dump: dwarf2_reg_to_regnum = <%s>\n",
 	      host_address_to_string (gdbarch->dwarf2_reg_to_regnum));
@@ -2146,23 +2141,6 @@ set_gdbarch_fp0_regnum (struct gdbarch *gdbarch,
   gdbarch->fp0_regnum = fp0_regnum;
 }
 
-int
-gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, int sdb_regnr)
-{
-  gdb_assert (gdbarch != NULL);
-  gdb_assert (gdbarch->sdb_reg_to_regnum != NULL);
-  if (gdbarch_debug >= 2)
-    gdb_printf (gdb_stdlog, "gdbarch_sdb_reg_to_regnum called\n");
-  return gdbarch->sdb_reg_to_regnum (gdbarch, sdb_regnr);
-}
-
-void
-set_gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch,
-			       gdbarch_sdb_reg_to_regnum_ftype sdb_reg_to_regnum)
-{
-  gdbarch->sdb_reg_to_regnum = sdb_reg_to_regnum;
-}
-
 int
 gdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int dwarf2_regnr)
 {
diff --git a/gdb/gdbarch-gen.h b/gdb/gdbarch-gen.h
index 592858bfd31..7ea9971362c 100644
--- a/gdb/gdbarch-gen.h
+++ b/gdb/gdbarch-gen.h
@@ -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 from an sdb register number to an internal gdb register number. */
-
-typedef int (gdbarch_sdb_reg_to_regnum_ftype) (struct gdbarch *gdbarch, int sdb_regnr);
-extern int gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, int sdb_regnr);
-extern void set_gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, gdbarch_sdb_reg_to_regnum_ftype *sdb_reg_to_regnum);
-
 /* Provide a default mapping from a DWARF2 register number to a gdb REGNUM.
    Return -1 for bad REGNUM.  Note: Several targets get this wrong. */
 
diff --git a/gdb/gdbarch_components.py b/gdb/gdbarch_components.py
index bff4346166e..f419d21655e 100644
--- a/gdb/gdbarch_components.py
+++ b/gdb/gdbarch_components.py
@@ -544,17 +544,6 @@ Value(
     invalid=False,
 )
 
-Method(
-    comment="""
-Convert from an sdb register number to an internal gdb register number.
-""",
-    type="int",
-    name="sdb_reg_to_regnum",
-    params=[("int", "sdb_regnr")],
-    predefault="no_op_reg_to_regnum",
-    invalid=False,
-)
-
 Method(
     comment="""
 Provide a default mapping from a DWARF2 register number to a gdb REGNUM.
diff --git a/gdb/i386-go32-tdep.c b/gdb/i386-go32-tdep.c
index 731f97c756e..6fd572d010e 100644
--- a/gdb/i386-go32-tdep.c
+++ b/gdb/i386-go32-tdep.c
@@ -36,11 +36,6 @@ i386_go32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   if (!tdesc_has_registers (info.target_desc))
     tdep->tdesc = i386_target_description (X86_XSTATE_X87_MASK, false);
 
-  /* Native compiler is GCC, which uses the SVR4 register numbering
-     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);
 
   set_gdbarch_wchar_bit (gdbarch, 16);
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index e7a7dcdea04..fbb18926c92 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -8861,9 +8861,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_ps_regnum (gdbarch, I386_EFLAGS_REGNUM); /* %eflags */
   set_gdbarch_fp0_regnum (gdbarch, I386_ST0_REGNUM); /* %st(0) */
 
-  /* 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);


More information about the Gdb-cvs mailing list