diff options
Diffstat (limited to 'gdb/proc-service.c')
-rw-r--r-- | gdb/proc-service.c | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/gdb/proc-service.c b/gdb/proc-service.c index 8afa667..04867d2 100644 --- a/gdb/proc-service.c +++ b/gdb/proc-service.c @@ -21,6 +21,7 @@ #include "gdbcore.h" #include "inferior.h" +#include "gdbthread.h" #include "symtab.h" #include "target.h" #include "regcache.h" @@ -73,7 +74,7 @@ ps_xfer_memory (const struct ps_prochandle *ph, psaddr_t addr, int ret; CORE_ADDR core_addr = ps_addr_to_core_addr (addr); - inferior_ptid = ph->ptid; + inferior_ptid = ph->thread->ptid; if (write) ret = target_write_memory (core_addr, buf, len); @@ -92,7 +93,7 @@ ps_err_e ps_pglobal_lookup (struct ps_prochandle *ph, const char *obj, const char *name, psaddr_t *sym_addr) { - struct inferior *inf = find_inferior_ptid (ph->ptid); + inferior *inf = ph->thread->inf; scoped_restore_current_program_space restore_pspace; @@ -131,9 +132,7 @@ ps_pdwrite (struct ps_prochandle *ph, psaddr_t addr, ps_err_e ps_lgetregs (struct ps_prochandle *ph, lwpid_t lwpid, prgregset_t gregset) { - ptid_t ptid = ptid_build (ptid_get_pid (ph->ptid), lwpid, 0); - struct regcache *regcache - = get_thread_arch_regcache (ptid, target_gdbarch ()); + struct regcache *regcache = get_thread_regcache (ph->thread); target_fetch_registers (regcache, -1); fill_gregset (regcache, (gdb_gregset_t *) gregset, -1); @@ -147,9 +146,7 @@ ps_lgetregs (struct ps_prochandle *ph, lwpid_t lwpid, prgregset_t gregset) ps_err_e ps_lsetregs (struct ps_prochandle *ph, lwpid_t lwpid, const prgregset_t gregset) { - ptid_t ptid = ptid_build (ptid_get_pid (ph->ptid), lwpid, 0); - struct regcache *regcache - = get_thread_arch_regcache (ptid, target_gdbarch ()); + struct regcache *regcache = get_thread_regcache (ph->thread); supply_gregset (regcache, (const gdb_gregset_t *) gregset); target_store_registers (regcache, -1); @@ -163,9 +160,7 @@ ps_lsetregs (struct ps_prochandle *ph, lwpid_t lwpid, const prgregset_t gregset) ps_err_e ps_lgetfpregs (struct ps_prochandle *ph, lwpid_t lwpid, gdb_prfpregset_t *fpregset) { - ptid_t ptid = ptid_build (ptid_get_pid (ph->ptid), lwpid, 0); - struct regcache *regcache - = get_thread_arch_regcache (ptid, target_gdbarch ()); + struct regcache *regcache = get_thread_regcache (ph->thread); target_fetch_registers (regcache, -1); fill_fpregset (regcache, (gdb_fpregset_t *) fpregset, -1); @@ -180,9 +175,7 @@ ps_err_e ps_lsetfpregs (struct ps_prochandle *ph, lwpid_t lwpid, const gdb_prfpregset_t *fpregset) { - ptid_t ptid = ptid_build (ptid_get_pid (ph->ptid), lwpid, 0); - struct regcache *regcache - = get_thread_arch_regcache (ptid, target_gdbarch ()); + struct regcache *regcache = get_thread_regcache (ph->thread); supply_fpregset (regcache, (const gdb_fpregset_t *) fpregset); target_store_registers (regcache, -1); @@ -196,7 +189,7 @@ ps_lsetfpregs (struct ps_prochandle *ph, lwpid_t lwpid, pid_t ps_getpid (struct ps_prochandle *ph) { - return ptid_get_pid (ph->ptid); + return ptid_get_pid (ph->thread->ptid); } void |