* valops.c (call_function_by_hand, push_word), defs.h (push_word),
[deliverable/binutils-gdb.git] / gdb / remote-bug.c
index e1f36036bbd4559f53e19e2ada4f633f062c946a..a1806fc8b519bf7291b989dcb5463003f60fd3c9 100644 (file)
@@ -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
     {
This page took 0.022882 seconds and 4 git commands to generate.