diff options
Diffstat (limited to 'gdb/gdbserver/remote-utils.c')
-rw-r--r-- | gdb/gdbserver/remote-utils.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gdb/gdbserver/remote-utils.c b/gdb/gdbserver/remote-utils.c index 42c6a545c56..3f055cfc336 100644 --- a/gdb/gdbserver/remote-utils.c +++ b/gdb/gdbserver/remote-utils.c @@ -20,6 +20,7 @@ #include "terminal.h" #include "target.h" #include "gdbthread.h" +#include "tdesc.h" #include <stdio.h> #include <string.h> #if HAVE_SYS_IOCTL_H @@ -1270,7 +1271,7 @@ outreg (struct regcache *regcache, int regno, char *buf) *buf++ = tohex (regno & 0xf); *buf++ = ':'; collect_register_as_string (regcache, regno, buf); - buf += 2 * register_size (regno); + buf += 2 * register_size (regcache->tdesc, regno); *buf++ = ';'; return buf; @@ -1328,12 +1329,12 @@ prepare_resume_reply (char *buf, ptid_t ptid, sprintf (buf, "T%02x", status->value.sig); buf += strlen (buf); - regp = gdbserver_expedite_regs; - saved_inferior = current_inferior; current_inferior = find_thread_ptid (ptid); + regp = current_target_desc ()->expedite_regs; + regcache = get_thread_regcache (current_inferior, 1); if (the_target->stopped_by_watchpoint != NULL @@ -1358,7 +1359,7 @@ prepare_resume_reply (char *buf, ptid_t ptid, while (*regp) { - buf = outreg (regcache, find_regno (*regp), buf); + buf = outreg (regcache, find_regno (regcache->tdesc, *regp), buf); regp ++; } *buf = '\0'; |