From: John Baldwin Date: Tue, 22 Nov 2022 22:21:13 +0000 (-0800) Subject: fbsd-nat: Use regset supply/collect methods. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5dd6c79a323a9ca7bf8d5db3206532580365127e;p=binutils-gdb.git fbsd-nat: Use regset supply/collect methods. fbsd-nat includes various helper routines for fetching and storing register sets via ptrace where the register set is described by a regset. These helper routines directly invoke the supply/collect_regset regcache methods which doesn't permit a regset to provide custom logic when fetching or storing a register set. Instead, just use the function pointers from the struct regset directly. Approved-By: Simon Marchi --- diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c index ad26503a2ad..7d279810483 100644 --- a/gdb/fbsd-nat.c +++ b/gdb/fbsd-nat.c @@ -1744,7 +1744,7 @@ fbsd_nat_target::fetch_register_set (struct regcache *regcache, int regnum, if (ptrace (fetch_op, pid, (PTRACE_TYPE_ARG3) regs, 0) == -1) perror_with_name (_("Couldn't get registers")); - regcache->supply_regset (regset, regnum, regs, size); + regset->supply_regset (regset, regcache, regnum, regs, size); return true; } return false; @@ -1768,7 +1768,7 @@ fbsd_nat_target::store_register_set (struct regcache *regcache, int regnum, if (ptrace (fetch_op, pid, (PTRACE_TYPE_ARG3) regs, 0) == -1) perror_with_name (_("Couldn't get registers")); - regcache->collect_regset (regset, regnum, regs, size); + regset->collect_regset (regset, regcache, regnum, regs, size); if (ptrace (store_op, pid, (PTRACE_TYPE_ARG3) regs, 0) == -1) perror_with_name (_("Couldn't write registers")); @@ -1813,7 +1813,7 @@ fbsd_nat_target::fetch_regset (struct regcache *regcache, int regnum, int note, if (ptrace (PT_GETREGSET, pid, (PTRACE_TYPE_ARG3) &iov, note) == -1) perror_with_name (_("Couldn't get registers")); - regcache->supply_regset (regset, regnum, regs, size); + regset->supply_regset (regset, regcache, regnum, regs, size); return true; } return false; @@ -1838,7 +1838,7 @@ fbsd_nat_target::store_regset (struct regcache *regcache, int regnum, int note, if (ptrace (PT_GETREGSET, pid, (PTRACE_TYPE_ARG3) &iov, note) == -1) perror_with_name (_("Couldn't get registers")); - regcache->collect_regset (regset, regnum, regs, size); + regset->collect_regset (regset, regcache, regnum, regs, size); if (ptrace (PT_SETREGSET, pid, (PTRACE_TYPE_ARG3) &iov, note) == -1) perror_with_name (_("Couldn't write registers"));