Add target_ops argument to to_rcmd
authorTom Tromey <tromey@redhat.com>
Wed, 18 Dec 2013 04:34:48 +0000 (21:34 -0700)
committerTom Tromey <tromey@redhat.com>
Wed, 19 Feb 2014 14:45:56 +0000 (07:45 -0700)
2014-02-19  Tom Tromey  <tromey@redhat.com>

* target.h (struct target_ops) <to_rcmd>: Add argument.
(target_rcmd): Add argument.
* target.c (debug_to_rcmd): Add argument.
(update_current_target, do_monitor_command): Update.
* remote.c (remote_rcmd): Add 'self' argument.
* monitor.c (monitor_rcmd): Add 'self' argument.

gdb/ChangeLog
gdb/monitor.c
gdb/remote.c
gdb/target.c
gdb/target.h

index 82a81bc68fef1f47c0e6a72276ec7dfae99cee73..09b88f72389f0732a7961a694d0556fff11c2766 100644 (file)
@@ -1,3 +1,12 @@
+2014-02-19  Tom Tromey  <tromey@redhat.com>
+
+       * target.h (struct target_ops) <to_rcmd>: Add argument.
+       (target_rcmd): Add argument.
+       * target.c (debug_to_rcmd): Add argument.
+       (update_current_target, do_monitor_command): Update.
+       * remote.c (remote_rcmd): Add 'self' argument.
+       * monitor.c (monitor_rcmd): Add 'self' argument.
+
 2014-02-19  Tom Tromey  <tromey@redhat.com>
 
        * windows-nat.c (windows_stop): Add 'self' argument.
index 06735dcf0aaff087c963a007e5cff13cfcd85305..c46e2dfa1b86e1559d4d6a0fb9914312e3669f94 100644 (file)
@@ -2281,7 +2281,7 @@ monitor_stop (struct target_ops *self, ptid_t ptid)
    ourseleves here cause of a nasty echo.  */
 
 static void
-monitor_rcmd (char *command,
+monitor_rcmd (struct target_ops *self, char *command,
              struct ui_file *outbuf)
 {
   char *p;
index 35f4297ef2a7ebbdac1cceab02dd82b6713d54ec..0a80502aa47b8b5edfc22d5c2dced31c4b44905c 100644 (file)
@@ -8962,7 +8962,7 @@ remote_search_memory (struct target_ops* ops,
 }
 
 static void
-remote_rcmd (char *command,
+remote_rcmd (struct target_ops *self, char *command,
             struct ui_file *outbuf)
 {
   struct remote_state *rs = get_remote_state ();
index 9b8e1e996bc25f921668b58323fbe5377221dcb2..38504945ef6af5ff80257bcee7a47455656c06b7 100644 (file)
@@ -828,7 +828,7 @@ update_current_target (void)
            (void (*) (struct target_ops *, ptid_t))
            target_ignore);
   de_fault (to_rcmd,
-           (void (*) (char *, struct ui_file *))
+           (void (*) (struct target_ops *, char *, struct ui_file *))
            tcomplain);
   de_fault (to_pid_to_exec_file,
            (char *(*) (int))
@@ -4996,10 +4996,10 @@ debug_to_stop (struct target_ops *self, ptid_t ptid)
 }
 
 static void
-debug_to_rcmd (char *command,
+debug_to_rcmd (struct target_ops *self, char *command,
               struct ui_file *outbuf)
 {
-  debug_target.to_rcmd (command, outbuf);
+  debug_target.to_rcmd (&debug_target, command, outbuf);
   fprintf_unfiltered (gdb_stdlog, "target_rcmd (%s, ...)\n", command);
 }
 
@@ -5075,10 +5075,11 @@ do_monitor_command (char *cmd,
                 int from_tty)
 {
   if ((current_target.to_rcmd
-       == (void (*) (char *, struct ui_file *)) tcomplain)
+       == (void (*) (struct target_ops *, char *, struct ui_file *)) tcomplain)
       || (current_target.to_rcmd == debug_to_rcmd
          && (debug_target.to_rcmd
-             == (void (*) (char *, struct ui_file *)) tcomplain)))
+             == (void (*) (struct target_ops *,
+                           char *, struct ui_file *)) tcomplain)))
     error (_("\"monitor\" command not supported by this target."));
   target_rcmd (cmd, gdb_stdtarg);
 }
index 3c2bf80018371802016ce3d55c6990efc2189b76..af8d8343cbc4f444074e397523be546802715a25 100644 (file)
@@ -525,7 +525,8 @@ struct target_ops
     char *(*to_extra_thread_info) (struct target_ops *, struct thread_info *);
     char *(*to_thread_name) (struct target_ops *, struct thread_info *);
     void (*to_stop) (struct target_ops *, ptid_t);
-    void (*to_rcmd) (char *command, struct ui_file *output);
+    void (*to_rcmd) (struct target_ops *,
+                    char *command, struct ui_file *output);
     char *(*to_pid_to_exec_file) (int pid);
     void (*to_log_command) (const char *);
     struct target_section_table *(*to_get_section_table) (struct target_ops *);
@@ -1434,7 +1435,7 @@ extern void target_stop (ptid_t ptid);
    placed in OUTBUF.  */
 
 #define target_rcmd(command, outbuf) \
-     (*current_target.to_rcmd) (command, outbuf)
+     (*current_target.to_rcmd) (&current_target, command, outbuf)
 
 
 /* Does the target include all of memory, or only part of it?  This