merge from gcc
[deliverable/binutils-gdb.git] / gdb / monitor.h
index b522bcb2149bdfb294106a6feab9de3852d9bdf2..2a5bcb7ada4f336097c87956a5c0526a4de2f85b 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions for remote debugging interface for ROM monitors.
-   Copyright 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000
-   Free Software Foundation, Inc.
+   Copyright (C) 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+   2007 Free Software Foundation, Inc.
    Contributed by Cygnus Support. Written by Rob Savoye for Cygnus.
 
    This file is part of GDB.
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.
+   Foundation, Inc., 51 Franklin Street, Fifth Floor,
+   Boston, MA 02110-1301, USA.
  */
 
-#include "serial.h"
+#ifndef MONITOR_H
+#define MONITOR_H
+
+struct target_waitstatus;
+struct serial;
 
 /* This structure describes the strings necessary to give small command
    sequences to the monitor, and parse the response.
@@ -97,7 +101,7 @@ struct monitor_ops
     char *dump_registers;      /* Command to dump all regs at once */
     char *register_pattern;    /* Pattern that picks out register from reg dump */
     void (*supply_register) (char *name, int namelen, char *val, int vallen);
-    void (*load_routine) (serial_t desc, char *file,
+    void (*load_routine) (struct serial *desc, char *file,
                          int hashmark);        /* Download routine */
     int (*dumpregs) (void);    /* routine to dump all registers */
     int (*continue_hook) (void);       /* Emit the continue command */
@@ -113,6 +117,9 @@ struct monitor_ops
     struct target_ops *target; /* target operations */
     int stopbits;              /* number of stop bits */
     char **regnames;           /* array of register names in ascii */
+                                /* deprecated: use regname instead */
+    const char *(*regname) (int index); 
+                                /* function for dynamic regname array */
     int num_breakpoints;       /* If set_break != NULL, number of supported
                                   breakpoints */
     int magic;                 /* Check value */
@@ -238,12 +245,16 @@ extern void monitor_close (int quitting);
 extern char *monitor_supply_register (int regno, char *valstr);
 extern int monitor_expect (char *prompt, char *buf, int buflen);
 extern int monitor_expect_prompt (char *buf, int buflen);
-extern void monitor_printf (char *, ...) ATTR_FORMAT (printf, 1, 2);
-extern void
-monitor_printf_noecho (char *, ...)
-ATTR_FORMAT (printf, 1, 2);
+/* Note: The variable argument functions monitor_printf and
+   monitor_printf_noecho vararg do not take take standard format style
+   arguments.  Instead they take custom formats interpretered directly
+   by monitor_vsprintf.  */
+extern void monitor_printf (char *, ...);
+extern void monitor_printf_noecho (char *, ...);
 extern void monitor_write (char *buf, int buflen);
 extern int monitor_readchar (void);
 extern char *monitor_get_dev_name (void);
 extern void init_monitor_ops (struct target_ops *);
 extern int monitor_dump_reg_block (char *dump_cmd);
+
+#endif
This page took 0.025298 seconds and 4 git commands to generate.