diff options
Diffstat (limited to 'gdb/alpha-linux-nat.c')
-rw-r--r-- | gdb/alpha-linux-nat.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/gdb/alpha-linux-nat.c b/gdb/alpha-linux-nat.c index 8d46af4..e08e19d 100644 --- a/gdb/alpha-linux-nat.c +++ b/gdb/alpha-linux-nat.c @@ -32,6 +32,15 @@ /* The address of UNIQUE for ptrace. */ #define ALPHA_UNIQUE_PTRACE_ADDR 65 +class alpha_linux_nat_target final : public linux_nat_trad_target +{ +protected: + /* Override linux_nat_trad_target methods. */ + CORE_ADDR register_u_offset (struct gdbarch *gdbarch, + int regno, int store_p) override; +}; + +static alpha_linux_nat_target the_alpha_linux_nat_target; /* See the comment in m68k-tdep.c regarding the utility of these functions. */ @@ -77,9 +86,9 @@ fill_fpregset (const struct regcache *regcache, alpha_fill_fp_regs (regcache, regno, regp, regp + 31); } - -static CORE_ADDR -alpha_linux_register_u_offset (struct gdbarch *gdbarch, int regno, int store_p) +CORE_ADDR +alpha_linux_nat_target::register_u_offset (struct gdbarch *gdbarch, + int regno, int store_p) { if (regno == gdbarch_pc_regnum (gdbarch)) return PC; @@ -94,5 +103,6 @@ alpha_linux_register_u_offset (struct gdbarch *gdbarch, int regno, int store_p) void _initialize_alpha_linux_nat (void) { - linux_nat_add_target (linux_trad_target (alpha_linux_register_u_offset)); + linux_target = &the_alpha_linux_nat_target; + add_target (&the_alpha_linux_nat_target); } |