aboutsummaryrefslogtreecommitdiff
path: root/gdb/remote-bug.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/remote-bug.c')
-rw-r--r--gdb/remote-bug.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/gdb/remote-bug.c b/gdb/remote-bug.c
index e1f3603..a1806fc 100644
--- a/gdb/remote-bug.c
+++ b/gdb/remote-bug.c
@@ -425,8 +425,6 @@ static void
bug_fetch_register(regno)
int regno;
{
- REGISTER_TYPE regval;
-
sr_check_open();
if (regno == -1)
@@ -444,12 +442,15 @@ bug_fetch_register(regno)
}
else if (regno < XFP_REGNUM)
{
- sr_write("rs ", 3);
- sr_write_cr(get_reg_name(regno));
- sr_expect("=");
- regval = sr_get_hex_word();
- gr_expect_prompt();
- supply_register(regno, (char *) &regval);
+ char buffer[MAX_REGISTER_RAW_SIZE];
+
+ sr_write ("rs ", 3);
+ sr_write_cr (get_reg_name(regno));
+ sr_expect ("=");
+ store_unsigned_integer (buffer, REGISTER_RAW_SIZE (regno),
+ sr_get_hex_word());
+ gr_expect_prompt ();
+ supply_register (regno, buffer);
}
else
{