Add target_ops argument to to_rcmd

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.
This commit is contained in:
Tom Tromey 2013-12-17 21:34:48 -07:00
parent 1eab8a48bf
commit 1aac633be6
5 changed files with 20 additions and 9 deletions

View 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.

View 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;

View 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 ();

View 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);
}

View 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