* target.c (update_current_target): Inherit to_log_command.
authorMaciej W. Rozycki <macro@linux-mips.org>
Fri, 7 Dec 2007 15:02:12 +0000 (15:02 +0000)
committerMaciej W. Rozycki <macro@linux-mips.org>
Fri, 7 Dec 2007 15:02:12 +0000 (15:02 +0000)
* target.h (struct target_ops). Add to_log_command.
(target_log_command): New macro.
* top.c (execute_command): Call target_log_command() rather than
serial_log_command().
* monitor.c (init_base_monitor_ops): Initialize to_log_command.
* remote-m32r-sdi.c (init_m32r_ops): Likewise.
* remote-mips.c (_initialize_remote_mips): Likewise.
* remote.c (init_remote_ops): Likewise.

gdb/ChangeLog
gdb/monitor.c
gdb/remote-m32r-sdi.c
gdb/remote-mips.c
gdb/remote.c
gdb/target.c
gdb/target.h
gdb/top.c

index 583e090..3fa5d5b 100644 (file)
@@ -1,3 +1,15 @@
+2007-12-07  Maciej W. Rozycki  <macro@mips.com>
+
+       * target.c (update_current_target): Inherit to_log_command.
+       * target.h (struct target_ops). Add to_log_command.
+       (target_log_command): New macro.
+       * top.c (execute_command): Call target_log_command() rather than
+       serial_log_command().
+       * monitor.c (init_base_monitor_ops): Initialize to_log_command.
+       * remote-m32r-sdi.c (init_m32r_ops): Likewise.
+       * remote-mips.c (_initialize_remote_mips): Likewise.
+       * remote.c (init_remote_ops): Likewise.
+
 2007-12-06  Daniel Jacobowitz  <dan@codesourcery.com>
 
        * infrun.c (init_wait_for_inferior): Reset target_last_wait_ptid.
index 410ce62..2ea0085 100644 (file)
@@ -2233,6 +2233,7 @@ init_base_monitor_ops (void)
   monitor_ops.to_mourn_inferior = monitor_mourn_inferior;
   monitor_ops.to_stop = monitor_stop;
   monitor_ops.to_rcmd = monitor_rcmd;
+  monitor_ops.to_log_command = serial_log_command;
   monitor_ops.to_stratum = process_stratum;
   monitor_ops.to_has_all_memory = 1;
   monitor_ops.to_has_memory = 1;
index ed8feb7..a55bb31 100644 (file)
@@ -1599,6 +1599,7 @@ init_m32r_ops (void)
   m32r_ops.to_create_inferior = m32r_create_inferior;
   m32r_ops.to_mourn_inferior = m32r_mourn_inferior;
   m32r_ops.to_stop = m32r_stop;
+  m32r_ops.to_log_command = serial_log_command;
   m32r_ops.to_stratum = process_stratum;
   m32r_ops.to_has_all_memory = 1;
   m32r_ops.to_has_memory = 1;
index f153fb4..ade658d 100644 (file)
@@ -3333,6 +3333,7 @@ _initialize_remote_mips (void)
   mips_ops.to_load = mips_load;
   mips_ops.to_create_inferior = mips_create_inferior;
   mips_ops.to_mourn_inferior = mips_mourn_inferior;
+  mips_ops.to_log_command = serial_log_command;
   mips_ops.to_stratum = process_stratum;
   mips_ops.to_has_all_memory = 1;
   mips_ops.to_has_memory = 1;
index ec7044e..452af07 100644 (file)
@@ -6950,6 +6950,7 @@ Specify the serial device it is connected to\n\
   remote_ops.to_stop = remote_stop;
   remote_ops.to_xfer_partial = remote_xfer_partial;
   remote_ops.to_rcmd = remote_rcmd;
+  remote_ops.to_log_command = serial_log_command;
   remote_ops.to_get_thread_local_address = remote_get_thread_local_address;
   remote_ops.to_stratum = process_stratum;
   remote_ops.to_has_all_memory = 1;
index d89a7fb..c7461e2 100644 (file)
@@ -448,6 +448,7 @@ update_current_target (void)
       INHERIT (to_enable_exception_callback, t);
       INHERIT (to_get_current_exception_event, t);
       INHERIT (to_pid_to_exec_file, t);
+      INHERIT (to_log_command, t);
       INHERIT (to_stratum, t);
       INHERIT (to_has_all_memory, t);
       INHERIT (to_has_memory, t);
index 6dc3685..cb8db9b 100644 (file)
@@ -404,6 +404,7 @@ struct target_ops
                                                             int);
     struct exception_event_record *(*to_get_current_exception_event) (void);
     char *(*to_pid_to_exec_file) (int pid);
+    void (*to_log_command) (const char *);
     enum strata to_stratum;
     int to_has_all_memory;
     int to_has_memory;
@@ -1130,6 +1131,14 @@ extern int target_stopped_data_address_p (struct target_ops *);
 
 extern const struct target_desc *target_read_description (struct target_ops *);
 
+/* Command logging facility.  */
+
+#define target_log_command(p)                                          \
+  do                                                                   \
+    if (current_target.to_log_command)                                 \
+      (*current_target.to_log_command) (p);                            \
+  while (0)
+
 /* Routines for maintenance of the target structures...
 
    add_target:   Add a target to the list of all possible targets.
index beb1d96..a221c0c 100644 (file)
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -385,7 +385,7 @@ execute_command (char *p, int from_tty)
   if (p == NULL)
     return;
 
-  serial_log_command (p);
+  target_log_command (p);
 
   while (*p == ' ' || *p == '\t')
     p++;