From: Keith Seitz <keiths@redhat.com>
To: gdb-patches@sourceware.org
Subject: [PATCH 2/2] [gdbserver] Use const_target_desc_up for regformat tdescs
Date: Thu, 18 Jun 2026 07:23:56 -0700 [thread overview]
Message-ID: <c46e98eb850b2951c966df53cc869f35cca736e7.1781792506.git.keiths@redhat.com> (raw)
In-Reply-To: <cover.1781792506.git.keiths@redhat.com>
Regformat tdescs are now declared 'const_target_desc_up' by
gdb's regdat.sh, so update the various gdbserver target descriptions
to observe this API change.
There should be no user visible changes.
---
gdbserver/linux-ia64-low.cc | 5 ++-
gdbserver/linux-m68k-low.cc | 5 ++-
gdbserver/linux-microblaze-low.cc | 6 +--
gdbserver/linux-mips-low.cc | 11 ++---
gdbserver/linux-or1k-low.cc | 5 ++-
gdbserver/linux-s390-ipa.cc | 39 ++++++++---------
gdbserver/linux-s390-low.cc | 69 ++++++++++++++++---------------
gdbserver/linux-s390-tdesc.h | 34 +++++++--------
gdbserver/linux-sh-low.cc | 5 ++-
gdbserver/linux-sparc-low.cc | 5 ++-
gdbserver/linux-xtensa-low.cc | 5 ++-
11 files changed, 99 insertions(+), 90 deletions(-)
diff --git a/gdbserver/linux-ia64-low.cc b/gdbserver/linux-ia64-low.cc
index 337ef08257b..2a749f5a5ed 100644
--- a/gdbserver/linux-ia64-low.cc
+++ b/gdbserver/linux-ia64-low.cc
@@ -17,6 +17,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include "linux-low.h"
+#include "tdesc.h"
#ifdef HAVE_SYS_REG_H
#include <sys/reg.h>
@@ -65,7 +66,7 @@ ia64_target::low_breakpoint_at (CORE_ADDR pc)
/* Defined in auto-generated file reg-ia64.c. */
void init_registers_ia64 (void);
-extern const struct target_desc *tdesc_ia64;
+extern const_target_desc_up tdesc_ia64;
#define ia64_num_regs 462
@@ -381,7 +382,7 @@ ia64_target::get_regs_info ()
void
ia64_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_ia64;
+ current_process ()->tdesc = tdesc_ia64.get ();
}
/* The linux target ops object. */
diff --git a/gdbserver/linux-m68k-low.cc b/gdbserver/linux-m68k-low.cc
index f620a344a0a..df1d7346931 100644
--- a/gdbserver/linux-m68k-low.cc
+++ b/gdbserver/linux-m68k-low.cc
@@ -17,6 +17,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include "linux-low.h"
+#include "tdesc.h"
/* Linux target op definitions for the m68k architecture. */
@@ -77,7 +78,7 @@ m68k_target::low_decr_pc_after_break ()
/* Defined in auto-generated file reg-m68k.c. */
void init_registers_m68k (void);
-extern const struct target_desc *tdesc_m68k;
+extern const_target_desc_up tdesc_m68k;
#ifdef HAVE_SYS_REG_H
#include <sys/reg.h>
@@ -252,7 +253,7 @@ m68k_target::get_regs_info ()
void
m68k_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_m68k;
+ current_process ()->tdesc = tdesc_m68k.get ();
}
/* The linux target ops object. */
diff --git a/gdbserver/linux-microblaze-low.cc b/gdbserver/linux-microblaze-low.cc
index 21793d9a801..19c8751a0a9 100644
--- a/gdbserver/linux-microblaze-low.cc
+++ b/gdbserver/linux-microblaze-low.cc
@@ -28,7 +28,7 @@
#include <sys/ptrace.h>
#include "gdb_proc_service.h"
-
+#include "tdesc.h"
static int microblaze_regmap[] =
{PT_GPR(0), PT_GPR(1), PT_GPR(2), PT_GPR(3),
@@ -79,7 +79,7 @@ constexpr auto microblaze_num_regs
/* Defined in auto-generated file microblaze-linux-generated.c. */
void init_registers_microblaze_linux ();
-extern const target_desc *tdesc_microblaze_linux;
+extern const_target_desc_up tdesc_microblaze_linux;
bool
microblaze_target::low_supports_breakpoints ()
@@ -229,7 +229,7 @@ microblaze_target::get_regs_info ()
void
microblaze_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_microblaze_linux;
+ current_process ()->tdesc = tdesc_microblaze_linux.get ();
}
linux_process_target *the_linux_target = &the_microblaze_target;
diff --git a/gdbserver/linux-mips-low.cc b/gdbserver/linux-mips-low.cc
index 746887027b5..a156085a557 100644
--- a/gdbserver/linux-mips-low.cc
+++ b/gdbserver/linux-mips-low.cc
@@ -23,6 +23,7 @@
#include "nat/mips-linux-watch.h"
#include "gdb_proc_service.h"
+#include "tdesc.h"
/* Linux target op definitions for the MIPS architecture. */
@@ -89,19 +90,19 @@ static mips_target the_mips_target;
/* Defined in auto-generated file mips-linux.c. */
void init_registers_mips_linux (void);
-extern const struct target_desc *tdesc_mips_linux;
+extern const_target_desc_up tdesc_mips_linux;
/* Defined in auto-generated file mips-dsp-linux.c. */
void init_registers_mips_dsp_linux (void);
-extern const struct target_desc *tdesc_mips_dsp_linux;
+extern const_target_desc_up tdesc_mips_dsp_linux;
/* Defined in auto-generated file mips64-linux.c. */
void init_registers_mips64_linux (void);
-extern const struct target_desc *tdesc_mips64_linux;
+extern const_target_desc_up tdesc_mips64_linux;
/* Defined in auto-generated file mips64-dsp-linux.c. */
void init_registers_mips64_dsp_linux (void);
-extern const struct target_desc *tdesc_mips64_dsp_linux;
+extern const_target_desc_up tdesc_mips64_dsp_linux;
#ifdef __mips64
#define tdesc_mips_linux tdesc_mips64_linux
@@ -206,7 +207,7 @@ mips_read_description (void)
}
}
- return have_dsp ? tdesc_mips_dsp_linux : tdesc_mips_linux;
+ return have_dsp ? tdesc_mips_dsp_linux.get () : tdesc_mips_linux.get ();
}
void
diff --git a/gdbserver/linux-or1k-low.cc b/gdbserver/linux-or1k-low.cc
index 59d2bf7435f..a8d03d86c12 100644
--- a/gdbserver/linux-or1k-low.cc
+++ b/gdbserver/linux-or1k-low.cc
@@ -21,6 +21,7 @@
#include "nat/gdb_ptrace.h"
#include <endian.h>
#include "gdb_proc_service.h"
+#include "tdesc.h"
#include <asm/ptrace.h>
#ifndef PTRACE_GET_THREAD_AREA
@@ -86,7 +87,7 @@ or1k_target::low_set_pc (regcache *regcache, CORE_ADDR pc)
/* Defined in auto-generated file or1k-linux.c. */
void init_registers_or1k_linux (void);
-extern const struct target_desc *tdesc_or1k_linux;
+extern const_target_desc_up tdesc_or1k_linux;
/* This union is used to convert between int and byte buffer
representations of register contents. */
@@ -114,7 +115,7 @@ static int or1k_regmap[] = {
void
or1k_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_or1k_linux;
+ current_process ()->tdesc = tdesc_or1k_linux.get ();
}
/* Implement the low_cannot_fetch_register linux target ops method. */
diff --git a/gdbserver/linux-s390-ipa.cc b/gdbserver/linux-s390-ipa.cc
index 548107f9819..c4e0e90db1b 100644
--- a/gdbserver/linux-s390-ipa.cc
+++ b/gdbserver/linux-s390-ipa.cc
@@ -20,6 +20,7 @@
#include <sys/mman.h>
#include "tracepoint.h"
+#include "tdesc.h"
#include "linux-s390-tdesc.h"
#include <elf.h>
#ifdef HAVE_GETAUXVAL
@@ -319,63 +320,63 @@ get_ipa_tdesc (int idx)
case S390_TDESC_64:
/* Subtract number of VX regs. */
SET_REGMAP(s390x_ft_collect_regmap, 32);
- return tdesc_s390x_linux64;
+ return tdesc_s390x_linux64.get ();
case S390_TDESC_64V1:
SET_REGMAP(s390x_ft_collect_regmap, 32);
- return tdesc_s390x_linux64v1;
+ return tdesc_s390x_linux64v1.get ();
case S390_TDESC_64V2:
SET_REGMAP(s390x_ft_collect_regmap, 32);
- return tdesc_s390x_linux64v2;
+ return tdesc_s390x_linux64v2.get ();
case S390_TDESC_TE:
SET_REGMAP(s390x_te_ft_collect_regmap, 32);
- return tdesc_s390x_te_linux64;
+ return tdesc_s390x_te_linux64.get ();
case S390_TDESC_VX:
SET_REGMAP(s390x_ft_collect_regmap, 0);
- return tdesc_s390x_vx_linux64;
+ return tdesc_s390x_vx_linux64.get ();
case S390_TDESC_TEVX:
SET_REGMAP(s390x_te_ft_collect_regmap, 0);
- return tdesc_s390x_tevx_linux64;
+ return tdesc_s390x_tevx_linux64.get ();
case S390_TDESC_GS:
SET_REGMAP(s390x_te_ft_collect_regmap, 0);
- return tdesc_s390x_gs_linux64;
+ return tdesc_s390x_gs_linux64.get ();
#else
case S390_TDESC_32:
SET_REGMAP(s390_linux32_ft_collect_regmap, 0);
- return tdesc_s390_linux32;
+ return tdesc_s390_linux32.get ();
case S390_TDESC_32V1:
SET_REGMAP(s390_linux32_ft_collect_regmap, 0);
- return tdesc_s390_linux32v1;
+ return tdesc_s390_linux32v1.get ();
case S390_TDESC_32V2:
SET_REGMAP(s390_linux32_ft_collect_regmap, 0);
- return tdesc_s390_linux32v2;
+ return tdesc_s390_linux32v2.get ();
case S390_TDESC_64:
SET_REGMAP(s390_linux64_ft_collect_regmap, 32);
- return tdesc_s390_linux64;
+ return tdesc_s390_linux64.get ();
case S390_TDESC_64V1:
SET_REGMAP(s390_linux64_ft_collect_regmap, 32);
- return tdesc_s390_linux64v1;
+ return tdesc_s390_linux64v1.get ();
case S390_TDESC_64V2:
SET_REGMAP(s390_linux64_ft_collect_regmap, 32);
- return tdesc_s390_linux64v2;
+ return tdesc_s390_linux64v2.get ();
case S390_TDESC_TE:
SET_REGMAP(s390_te_linux64_ft_collect_regmap, 32);
- return tdesc_s390_te_linux64;
+ return tdesc_s390_te_linux64.get ();
case S390_TDESC_VX:
SET_REGMAP(s390_linux64_ft_collect_regmap, 0);
- return tdesc_s390_vx_linux64;
+ return tdesc_s390_vx_linux64.get ();
case S390_TDESC_TEVX:
SET_REGMAP(s390_te_linux64_ft_collect_regmap, 0);
- return tdesc_s390_tevx_linux64;
+ return tdesc_s390_tevx_linux64.get ();
case S390_TDESC_GS:
SET_REGMAP(s390_te_linux64_ft_collect_regmap, 0);
- return tdesc_s390_gs_linux64;
+ return tdesc_s390_gs_linux64.get ();
#endif
default:
internal_error ("unknown ipa tdesc index: %d", idx);
#ifdef __s390x__
- return tdesc_s390x_linux64;
+ return tdesc_s390x_linux64.get ();
#else
- return tdesc_s390_linux32;
+ return tdesc_s390_linux32.get ();
#endif
}
}
diff --git a/gdbserver/linux-s390-low.cc b/gdbserver/linux-s390-low.cc
index 8a4567837bd..4bb761de1bd 100644
--- a/gdbserver/linux-s390-low.cc
+++ b/gdbserver/linux-s390-low.cc
@@ -30,6 +30,7 @@
#include <elf.h>
#include <inttypes.h>
+#include "tdesc.h"
#include "linux-s390-tdesc.h"
#ifndef HWCAP_S390_HIGH_GPRS
@@ -615,18 +616,18 @@ s390_target::low_arch_setup ()
if (wordsize == 8)
{
if (have_regset_gs)
- tdesc = tdesc_s390x_gs_linux64;
+ tdesc = tdesc_s390x_gs_linux64.get ();
else if (have_regset_vxrs)
- tdesc = (have_regset_tdb ? tdesc_s390x_tevx_linux64 :
- tdesc_s390x_vx_linux64);
+ tdesc = (have_regset_tdb ? tdesc_s390x_tevx_linux64.get () :
+ tdesc_s390x_vx_linux64.get ());
else if (have_regset_tdb)
- tdesc = tdesc_s390x_te_linux64;
+ tdesc = tdesc_s390x_te_linux64.get ();
else if (have_regset_system_call)
- tdesc = tdesc_s390x_linux64v2;
+ tdesc = tdesc_s390x_linux64v2.get ();
else if (have_regset_last_break)
- tdesc = tdesc_s390x_linux64v1;
+ tdesc = tdesc_s390x_linux64v1.get ();
else
- tdesc = tdesc_s390x_linux64;
+ tdesc = tdesc_s390x_linux64.get ();
}
/* For a 31-bit inferior, check whether the kernel supports
@@ -637,28 +638,28 @@ s390_target::low_arch_setup ()
{
have_hwcap_s390_high_gprs = 1;
if (have_regset_gs)
- tdesc = tdesc_s390_gs_linux64;
+ tdesc = tdesc_s390_gs_linux64.get ();
else if (have_regset_vxrs)
- tdesc = (have_regset_tdb ? tdesc_s390_tevx_linux64 :
- tdesc_s390_vx_linux64);
+ tdesc = (have_regset_tdb ? tdesc_s390_tevx_linux64.get () :
+ tdesc_s390_vx_linux64.get ());
else if (have_regset_tdb)
- tdesc = tdesc_s390_te_linux64;
+ tdesc = tdesc_s390_te_linux64.get ();
else if (have_regset_system_call)
- tdesc = tdesc_s390_linux64v2;
+ tdesc = tdesc_s390_linux64v2.get ();
else if (have_regset_last_break)
- tdesc = tdesc_s390_linux64v1;
+ tdesc = tdesc_s390_linux64v1.get ();
else
- tdesc = tdesc_s390_linux64;
+ tdesc = tdesc_s390_linux64.get ();
}
else
{
/* Assume 31-bit inferior process. */
if (have_regset_system_call)
- tdesc = tdesc_s390_linux32v2;
+ tdesc = tdesc_s390_linux32v2.get ();
else if (have_regset_last_break)
- tdesc = tdesc_s390_linux32v1;
+ tdesc = tdesc_s390_linux32v1.get ();
else
- tdesc = tdesc_s390_linux32;
+ tdesc = tdesc_s390_linux32.get ();
}
have_hwcap_s390_vx = have_regset_vxrs;
@@ -1451,41 +1452,41 @@ s390_target::get_ipa_tdesc_idx ()
const target_desc *tdesc = current_process ()->tdesc;
#ifdef __s390x__
- if (tdesc == tdesc_s390x_linux64)
+ if (tdesc == tdesc_s390x_linux64.get ())
return S390_TDESC_64;
- if (tdesc == tdesc_s390x_linux64v1)
+ if (tdesc == tdesc_s390x_linux64v1.get ())
return S390_TDESC_64V1;
- if (tdesc == tdesc_s390x_linux64v2)
+ if (tdesc == tdesc_s390x_linux64v2.get ())
return S390_TDESC_64V2;
- if (tdesc == tdesc_s390x_te_linux64)
+ if (tdesc == tdesc_s390x_te_linux64.get ())
return S390_TDESC_TE;
- if (tdesc == tdesc_s390x_vx_linux64)
+ if (tdesc == tdesc_s390x_vx_linux64.get ())
return S390_TDESC_VX;
- if (tdesc == tdesc_s390x_tevx_linux64)
+ if (tdesc == tdesc_s390x_tevx_linux64.get ())
return S390_TDESC_TEVX;
- if (tdesc == tdesc_s390x_gs_linux64)
+ if (tdesc == tdesc_s390x_gs_linux64.get ())
return S390_TDESC_GS;
#endif
- if (tdesc == tdesc_s390_linux32)
+ if (tdesc == tdesc_s390_linux32.get ())
return S390_TDESC_32;
- if (tdesc == tdesc_s390_linux32v1)
+ if (tdesc == tdesc_s390_linux32v1.get ())
return S390_TDESC_32V1;
- if (tdesc == tdesc_s390_linux32v2)
+ if (tdesc == tdesc_s390_linux32v2.get ())
return S390_TDESC_32V2;
- if (tdesc == tdesc_s390_linux64)
+ if (tdesc == tdesc_s390_linux64.get ())
return S390_TDESC_64;
- if (tdesc == tdesc_s390_linux64v1)
+ if (tdesc == tdesc_s390_linux64v1.get ())
return S390_TDESC_64V1;
- if (tdesc == tdesc_s390_linux64v2)
+ if (tdesc == tdesc_s390_linux64v2.get ())
return S390_TDESC_64V2;
- if (tdesc == tdesc_s390_te_linux64)
+ if (tdesc == tdesc_s390_te_linux64.get ())
return S390_TDESC_TE;
- if (tdesc == tdesc_s390_vx_linux64)
+ if (tdesc == tdesc_s390_vx_linux64.get ())
return S390_TDESC_VX;
- if (tdesc == tdesc_s390_tevx_linux64)
+ if (tdesc == tdesc_s390_tevx_linux64.get ())
return S390_TDESC_TEVX;
- if (tdesc == tdesc_s390_gs_linux64)
+ if (tdesc == tdesc_s390_gs_linux64.get ())
return S390_TDESC_GS;
return 0;
diff --git a/gdbserver/linux-s390-tdesc.h b/gdbserver/linux-s390-tdesc.h
index b4d63430df5..3c53a717f6b 100644
--- a/gdbserver/linux-s390-tdesc.h
+++ b/gdbserver/linux-s390-tdesc.h
@@ -41,31 +41,31 @@ enum s390_linux_tdesc {
/* Defined in auto-generated file s390x-linux64.c. */
void init_registers_s390x_linux64 (void);
-extern const struct target_desc *tdesc_s390x_linux64;
+extern const_target_desc_up tdesc_s390x_linux64;
/* Defined in auto-generated file s390x-linux64v1.c. */
void init_registers_s390x_linux64v1 (void);
-extern const struct target_desc *tdesc_s390x_linux64v1;
+extern const_target_desc_up tdesc_s390x_linux64v1;
/* Defined in auto-generated file s390x-linux64v2.c. */
void init_registers_s390x_linux64v2 (void);
-extern const struct target_desc *tdesc_s390x_linux64v2;
+extern const_target_desc_up tdesc_s390x_linux64v2;
/* Defined in auto-generated file s390x-te-linux64.c. */
void init_registers_s390x_te_linux64 (void);
-extern const struct target_desc *tdesc_s390x_te_linux64;
+extern const_target_desc_up tdesc_s390x_te_linux64;
/* Defined in auto-generated file s390x-vx-linux64.c. */
void init_registers_s390x_vx_linux64 (void);
-extern const struct target_desc *tdesc_s390x_vx_linux64;
+extern const_target_desc_up tdesc_s390x_vx_linux64;
/* Defined in auto-generated file s390x-tevx-linux64.c. */
void init_registers_s390x_tevx_linux64 (void);
-extern const struct target_desc *tdesc_s390x_tevx_linux64;
+extern const_target_desc_up tdesc_s390x_tevx_linux64;
/* Defined in auto-generated file s390x-gs-linux64.c. */
void init_registers_s390x_gs_linux64 (void);
-extern const struct target_desc *tdesc_s390x_gs_linux64;
+extern const_target_desc_up tdesc_s390x_gs_linux64;
#endif
@@ -73,43 +73,43 @@ extern const struct target_desc *tdesc_s390x_gs_linux64;
/* Defined in auto-generated file s390-linux32.c. */
void init_registers_s390_linux32 (void);
-extern const struct target_desc *tdesc_s390_linux32;
+extern const_target_desc_up tdesc_s390_linux32;
/* Defined in auto-generated file s390-linux32v1.c. */
void init_registers_s390_linux32v1 (void);
-extern const struct target_desc *tdesc_s390_linux32v1;
+extern const_target_desc_up tdesc_s390_linux32v1;
/* Defined in auto-generated file s390-linux32v2.c. */
void init_registers_s390_linux32v2 (void);
-extern const struct target_desc *tdesc_s390_linux32v2;
+extern const_target_desc_up tdesc_s390_linux32v2;
/* Defined in auto-generated file s390-linux64.c. */
void init_registers_s390_linux64 (void);
-extern const struct target_desc *tdesc_s390_linux64;
+extern const_target_desc_up tdesc_s390_linux64;
/* Defined in auto-generated file s390-linux64v1.c. */
void init_registers_s390_linux64v1 (void);
-extern const struct target_desc *tdesc_s390_linux64v1;
+extern const_target_desc_up tdesc_s390_linux64v1;
/* Defined in auto-generated file s390-linux64v2.c. */
void init_registers_s390_linux64v2 (void);
-extern const struct target_desc *tdesc_s390_linux64v2;
+extern const_target_desc_up tdesc_s390_linux64v2;
/* Defined in auto-generated file s390-te-linux64.c. */
void init_registers_s390_te_linux64 (void);
-extern const struct target_desc *tdesc_s390_te_linux64;
+extern const_target_desc_up tdesc_s390_te_linux64;
/* Defined in auto-generated file s390-vx-linux64.c. */
void init_registers_s390_vx_linux64 (void);
-extern const struct target_desc *tdesc_s390_vx_linux64;
+extern const_target_desc_up tdesc_s390_vx_linux64;
/* Defined in auto-generated file s390-tevx-linux64.c. */
void init_registers_s390_tevx_linux64 (void);
-extern const struct target_desc *tdesc_s390_tevx_linux64;
+extern const_target_desc_up tdesc_s390_tevx_linux64;
/* Defined in auto-generated file s390-gs-linux64.c. */
void init_registers_s390_gs_linux64 (void);
-extern const struct target_desc *tdesc_s390_gs_linux64;
+extern const_target_desc_up tdesc_s390_gs_linux64;
#endif
diff --git a/gdbserver/linux-sh-low.cc b/gdbserver/linux-sh-low.cc
index 6370c18c677..a71a3a9c742 100644
--- a/gdbserver/linux-sh-low.cc
+++ b/gdbserver/linux-sh-low.cc
@@ -17,6 +17,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include "linux-low.h"
+#include "tdesc.h"
/* Linux target op definitions for the SH architecture. */
@@ -69,7 +70,7 @@ sh_target::low_set_pc (regcache *regcache, CORE_ADDR pc)
/* Defined in auto-generated file reg-sh.c. */
void init_registers_sh (void);
-extern const struct target_desc *tdesc_sh;
+extern const_target_desc_up tdesc_sh;
#ifdef HAVE_SYS_REG_H
#include <sys/reg.h>
@@ -179,7 +180,7 @@ sh_target::get_regs_info ()
void
sh_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_sh;
+ current_process ()->tdesc = tdesc_sh.get ();
}
/* The linux target ops object. */
diff --git a/gdbserver/linux-sparc-low.cc b/gdbserver/linux-sparc-low.cc
index 77edfbdde2a..10926a93991 100644
--- a/gdbserver/linux-sparc-low.cc
+++ b/gdbserver/linux-sparc-low.cc
@@ -21,6 +21,7 @@
#include "nat/gdb_ptrace.h"
#include "gdb_proc_service.h"
+#include "tdesc.h"
/* The stack pointer is offset from the stack frame by a BIAS of 2047
(0x7ff) for 64-bit code. BIAS is likely to be defined on SPARC
@@ -142,7 +143,7 @@ static const struct regs_range_t fpregs_ranges[] = {
/* Defined in auto-generated file reg-sparc64.c. */
void init_registers_sparc64 (void);
-extern const struct target_desc *tdesc_sparc64;
+extern const_target_desc_up tdesc_sparc64;
bool
sparc_target::low_cannot_store_register (int regno)
@@ -298,7 +299,7 @@ sparc_target::low_breakpoint_at (CORE_ADDR where)
void
sparc_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_sparc64;
+ current_process ()->tdesc = tdesc_sparc64.get ();
}
static struct regset_info sparc_regsets[] = {
diff --git a/gdbserver/linux-xtensa-low.cc b/gdbserver/linux-xtensa-low.cc
index 3af9bc44fb1..f06905645cf 100644
--- a/gdbserver/linux-xtensa-low.cc
+++ b/gdbserver/linux-xtensa-low.cc
@@ -18,6 +18,7 @@
#include "linux-low.h"
+#include "tdesc.h"
/* Linux target op definitions for the Xtensa architecture. */
@@ -84,7 +85,7 @@ xtensa_target::low_set_pc (regcache *regcache, CORE_ADDR pc)
/* Defined in auto-generated file reg-xtensa.c. */
void init_registers_xtensa (void);
-extern const struct target_desc *tdesc_xtensa;
+extern const_target_desc_up tdesc_xtensa;
#include <asm/ptrace.h>
#include <xtensa-config.h>
@@ -310,7 +311,7 @@ static struct regs_info myregs_info =
void
xtensa_target::low_arch_setup ()
{
- current_process ()->tdesc = tdesc_xtensa;
+ current_process ()->tdesc = tdesc_xtensa.get ();
}
const regs_info *
--
2.53.0
next prev parent reply other threads:[~2026-06-18 14:25 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-18 14:23 [PATCH 0/2] Fix ODR violations in regformat target descriptions Keith Seitz
2026-06-18 14:23 ` [PATCH 1/2] regdat.sh: generate const_target_desc_up for register descriptions Keith Seitz
2026-06-18 15:52 ` Simon Marchi
2026-06-18 14:23 ` Keith Seitz [this message]
2026-06-18 15:57 ` [PATCH 0/2] Fix ODR violations in regformat target descriptions Simon Marchi
2026-06-18 17:10 ` Tom Tromey
2026-07-07 19:49 ` Keith Seitz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c46e98eb850b2951c966df53cc869f35cca736e7.1781792506.git.keiths@redhat.com \
--to=keiths@redhat.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox