diff options
author | Simon Marchi <simon.marchi@polymtl.ca> | 2017-03-17 13:55:54 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@ericsson.com> | 2017-03-17 13:55:54 -0400 |
commit | 10799020a9336b6a88c1ace53c601960b840d580 (patch) | |
tree | aecc4db2de6cd040418f9c10608294f34ffd9b90 /gdb/hppa-nbsd-nat.c | |
parent | 00204cf7da01d99205aacc994e5c594ed12bba64 (diff) | |
download | binutils-gdb-10799020a9336b6a88c1ace53c601960b840d580.tar.gz |
hppa-nbsd-nat: Use ptid from regcache instead of inferior_ptid
gdb/ChangeLog:
* hppa-nbsd-nat.c (hppanbsd_fetch_registers,
hppanbsd_store_registers): Use ptid from regcache.
Diffstat (limited to 'gdb/hppa-nbsd-nat.c')
-rw-r--r-- | gdb/hppa-nbsd-nat.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/gdb/hppa-nbsd-nat.c b/gdb/hppa-nbsd-nat.c index 200bc6881ea..54c776cf59a 100644 --- a/gdb/hppa-nbsd-nat.c +++ b/gdb/hppa-nbsd-nat.c @@ -163,12 +163,13 @@ hppanbsd_fetch_registers (struct target_ops *ops, struct regcache *regcache, int regnum) { + pid_t pid = ptid_get_pid (regcache_get_ptid (regcache)); + if (regnum == -1 || hppanbsd_gregset_supplies_p (regnum)) { struct reg regs; - if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), - (PTRACE_TYPE_ARG3) ®s, 0) == -1) + if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) perror_with_name (_("Couldn't get registers")); hppanbsd_supply_gregset (regcache, ®s); @@ -178,8 +179,7 @@ hppanbsd_fetch_registers (struct target_ops *ops, { struct fpreg fpregs; - if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) + if (ptrace (PT_GETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) perror_with_name (_("Couldn't get floating point status")); hppanbsd_supply_fpregset (regcache, &fpregs); @@ -193,18 +193,18 @@ static void hppanbsd_store_registers (struct target_ops *ops, struct regcache *regcache, int regnum) { + pid_t pid = ptid_get_pid (regcache_get_ptid (regcache)); + if (regnum == -1 || hppanbsd_gregset_supplies_p (regnum)) { struct reg regs; - if (ptrace (PT_GETREGS, ptid_get_pid (inferior_ptid), - (PTRACE_TYPE_ARG3) ®s, 0) == -1) + if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) perror_with_name (_("Couldn't get registers")); hppanbsd_collect_gregset (regcache, ®s, regnum); - if (ptrace (PT_SETREGS, ptid_get_pid (inferior_ptid), - (PTRACE_TYPE_ARG3) ®s, 0) == -1) + if (ptrace (PT_SETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1) perror_with_name (_("Couldn't write registers")); } @@ -212,14 +212,12 @@ hppanbsd_store_registers (struct target_ops *ops, { struct fpreg fpregs; - if (ptrace (PT_GETFPREGS, ptid_get_pid (inferior_ptid), - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) + if (ptrace (PT_GETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) perror_with_name (_("Couldn't get floating point status")); hppanbsd_collect_fpregset (regcache, &fpregs, regnum); - if (ptrace (PT_SETFPREGS, ptid_get_pid (inferior_ptid), - (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) + if (ptrace (PT_SETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, 0) == -1) perror_with_name (_("Couldn't write floating point status")); } } |