daily update
[deliverable/binutils-gdb.git] / gdb / m68knbsd-nat.c
index 326a89b612d5e01f0517b48e64a0be3f3309f289..ec986eeb3640f14f75b1fdeafdec1bf40975d483 100644 (file)
@@ -1,5 +1,6 @@
 /* Native-dependent code for Motorola m68k's running NetBSD, for GDB.
-   Copyright 1988, 1989, 1991, 1992, 1994, 1996 Free Software Foundation, Inc.
+   Copyright 1988, 1989, 1991, 1992, 1994, 1996, 2000, 2001
+   Free Software Foundation, Inc.
 
    This file is part of GDB.
 
    Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
 
+#include "defs.h"
 #include <sys/types.h>
 #include <sys/ptrace.h>
 #include <machine/reg.h>
 #include <machine/frame.h>
-
-#include "defs.h"
 #include "inferior.h"
+#include "gdbcore.h"
+#include "regcache.h"
 
 void
-fetch_inferior_registers (regno)
-     int regno;
+fetch_inferior_registers (int regno)
 {
   struct reg inferior_registers;
   struct fpreg inferior_fp_registers;
 
-  ptrace (PT_GETREGS, inferior_pid,
+  ptrace (PT_GETREGS, PIDGET (inferior_ptid),
          (PTRACE_ARG3_TYPE) & inferior_registers, 0);
   memcpy (&registers[REGISTER_BYTE (0)], &inferior_registers,
          sizeof (inferior_registers));
 
-  ptrace (PT_GETFPREGS, inferior_pid,
+  ptrace (PT_GETFPREGS, PIDGET (inferior_ptid),
          (PTRACE_ARG3_TYPE) & inferior_fp_registers, 0);
   memcpy (&registers[REGISTER_BYTE (FP0_REGNUM)], &inferior_fp_registers,
          sizeof (inferior_fp_registers));
@@ -47,20 +48,19 @@ fetch_inferior_registers (regno)
 }
 
 void
-store_inferior_registers (regno)
-     int regno;
+store_inferior_registers (int regno)
 {
   struct reg inferior_registers;
   struct fpreg inferior_fp_registers;
 
   memcpy (&inferior_registers, &registers[REGISTER_BYTE (0)],
          sizeof (inferior_registers));
-  ptrace (PT_SETREGS, inferior_pid,
+  ptrace (PT_SETREGS, PIDGET (inferior_ptid),
          (PTRACE_ARG3_TYPE) & inferior_registers, 0);
 
   memcpy (&inferior_fp_registers, &registers[REGISTER_BYTE (FP0_REGNUM)],
          sizeof (inferior_fp_registers));
-  ptrace (PT_SETFPREGS, inferior_pid,
+  ptrace (PT_SETFPREGS, PIDGET (inferior_ptid),
          (PTRACE_ARG3_TYPE) & inferior_fp_registers, 0);
 }
 
@@ -70,12 +70,9 @@ struct md_core
   struct fpreg freg;
 };
 
-void
-fetch_core_registers (core_reg_sect, core_reg_size, which, ignore)
-     char *core_reg_sect;
-     unsigned core_reg_size;
-     int which;
-     CORE_ADDR ignore;
+static void
+fetch_core_registers (char *core_reg_sect, unsigned core_reg_size, int which,
+                     CORE_ADDR ignore)
 {
   struct md_core *core_reg = (struct md_core *) core_reg_sect;
 
@@ -86,3 +83,21 @@ fetch_core_registers (core_reg_sect, core_reg_size, which, ignore)
   memcpy (&registers[REGISTER_BYTE (FP0_REGNUM)],
          &core_reg->freg, sizeof (struct fpreg));
 }
+
+/* Register that we are able to handle m68knbsd core file formats.
+   FIXME: is this really bfd_target_unknown_flavour? */
+   
+static struct core_fns m68knbsd_core_fns =
+{  
+  bfd_target_unknown_flavour,           /* core_flavour */
+  default_check_format,                 /* check_format */
+  default_core_sniffer,                 /* core_sniffer */
+  fetch_core_registers,                 /* core_read_registers */
+  NULL                                  /* next */
+}; 
+   
+void
+_initialize_m68knbsd_nat (void)
+{
+  add_core_fns (&m68knbsd_core_fns);
+}
This page took 0.025693 seconds and 4 git commands to generate.