* mi/mi-main.c (mi_cmd_data_write_register_values): Use
authorMark Kettenis <kettenis@gnu.org>
Mon, 1 Jan 2007 11:17:28 +0000 (11:17 +0000)
committerMark Kettenis <kettenis@gnu.org>
Mon, 1 Jan 2007 11:17:28 +0000 (11:17 +0000)
regcache_cooked_write_signed instead of
deprecated_write_register_bytes.

gdb/ChangeLog
gdb/mi/mi-main.c

index 554fc37..d0f43cd 100644 (file)
@@ -1,3 +1,9 @@
+2007-01-01  Mark Kettenis  <kettenis@gnu.org>
+
+       * mi/mi-main.c (mi_cmd_data_write_register_values): Use
+       regcache_cooked_write_signed instead of
+       deprecated_write_register_bytes.
+
 2007-01-01  Joel Brobecker  <brobecker@adacore.com>
 
        * config/djgpp/fnchange.lst: Add entry for ChangeLog-2006.
index abb43f3..98b7b6d 100644 (file)
@@ -545,10 +545,7 @@ get_register (int regnum, int format)
 enum mi_cmd_result
 mi_cmd_data_write_register_values (char *command, char **argv, int argc)
 {
-  int regnum;
-  int i;
-  int numregs;
-  LONGEST value;
+  int numregs, i;
   char format;
 
   /* Note that the test for a valid register must include checking the
@@ -587,26 +584,18 @@ mi_cmd_data_write_register_values (char *command, char **argv, int argc)
 
   for (i = 1; i < argc; i = i + 2)
     {
-      regnum = atoi (argv[i]);
+      int regnum = atoi (argv[i]);
 
-      if (regnum >= 0
-         && regnum < numregs
-         && REGISTER_NAME (regnum) != NULL
-         && *REGISTER_NAME (regnum) != '\000')
+      if (regnum >= 0 && regnum < numregs
+         && REGISTER_NAME (regnum) && *REGISTER_NAME (regnum))
        {
-         void *buffer;
-         struct cleanup *old_chain;
+         LONGEST value;
 
-         /* Get the value as a number */
+         /* Get the value as a number */
          value = parse_and_eval_address (argv[i + 1]);
-         /* Get the value into an array */
-         buffer = xmalloc (DEPRECATED_REGISTER_SIZE);
-         old_chain = make_cleanup (xfree, buffer);
-         store_signed_integer (buffer, DEPRECATED_REGISTER_SIZE, value);
+
          /* Write it down */
-         deprecated_write_register_bytes (DEPRECATED_REGISTER_BYTE (regnum), buffer, register_size (current_gdbarch, regnum));
-         /* Free the buffer.  */
-         do_cleanups (old_chain);
+         regcache_cooked_write_signed (current_regcache, regnum, value);
        }
       else
        {