2000-12-04 Michael Snyder <msnyder@cleaver.cygnus.com>
[deliverable/binutils-gdb.git] / gdb / target.h
index 5c651496f749df6e7d4361404d58fba213ca7220..5b0afb70c9d22452b0a23880cf74872917d4a2ea 100644 (file)
@@ -43,6 +43,7 @@
 
 #include "bfd.h"
 #include "symtab.h"
+#include "dcache.h"
 
 enum strata
   {
@@ -239,6 +240,8 @@ enum target_signal
        of the protocol.  Note that in some GDB's TARGET_SIGNAL_REALTIME_32
        is number 76.  */
     TARGET_SIGNAL_REALTIME_32,
+    /* Yet another pain, IRIX 6 has SIG64.  */
+    TARGET_SIGNAL_REALTIME_64,
 
 #if defined(MACH) || defined(__MACH__)
     /* Mach exceptions */
@@ -487,8 +490,11 @@ extern struct target_stack_item *target_stack;
    and (if successful) pushes a new target onto the stack.
    Targets should supply this routine, if only to provide an error message.  */
 
-#define        target_open(name, from_tty)     \
-     (*current_target.to_open) (name, from_tty)
+#define        target_open(name, from_tty)                                     \
+  do {                                                                 \
+    dcache_invalidate (target_dcache);                                 \
+    (*current_target.to_open) (name, from_tty);                                \
+  } while (0)
 
 /* Does whatever cleanup is required for a target that we are no longer
    going to be calling.  Argument says whether we are quitting gdb and
@@ -560,8 +566,11 @@ extern void target_detach (char *, int);
    the target, or TARGET_SIGNAL_0 for no signal.  The caller may not
    pass TARGET_SIGNAL_DEFAULT.  */
 
-#define        target_resume(pid, step, siggnal)       \
-     (*current_target.to_resume) (pid, step, siggnal)
+#define        target_resume(pid, step, siggnal)                               \
+  do {                                                                 \
+    dcache_invalidate(target_dcache);                                  \
+    (*current_target.to_resume) (pid, step, siggnal);                  \
+  } while (0)
 
 /* Wait for process pid to do something.  Pid = -1 to wait for any pid
    to do something.  Return pid of child, or -1 in case of error;
@@ -608,11 +617,15 @@ extern void target_detach (char *, int);
 #define        target_prepare_to_store()       \
      (*current_target.to_prepare_to_store) ()
 
+extern DCACHE *target_dcache;
+
+extern int do_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write);
+
 extern int target_read_string (CORE_ADDR, char **, int, int *);
 
 extern int target_read_memory (CORE_ADDR memaddr, char *myaddr, int len);
 
-extern int target_write_memory (CORE_ADDR, char *, int);
+extern int target_write_memory (CORE_ADDR memaddr, char *myaddr, int len);
 
 extern int xfer_memory (CORE_ADDR, char *, int, int, struct target_ops *);
 
@@ -1124,13 +1137,13 @@ extern void (*target_new_objfile_hook) (struct objfile *);
 #define target_pid_to_exec_file(pid) \
      (current_target.to_pid_to_exec_file) (pid)
 
-/* Hook to call target-dependant code after reading in a new symbol table.  */
+/* Hook to call target-dependent code after reading in a new symbol table.  */
 
 #ifndef TARGET_SYMFILE_POSTREAD
 #define TARGET_SYMFILE_POSTREAD(OBJFILE)
 #endif
 
-/* Hook to call target dependant code just after inferior target process has
+/* Hook to call target dependent code just after inferior target process has
    started.  */
 
 #ifndef TARGET_CREATE_INFERIOR_HOOK
This page took 0.025086 seconds and 4 git commands to generate.