2004-07-17 Andrew Cagney <cagney@gnu.org>
[deliverable/binutils-gdb.git] / gdb / remote-vx68.c
index 59c6cdd4676de91c50ecbb42c2daa5707096e8e3..8b008247e7259b3c81c07ccd46e9652d6e03d4f8 100644 (file)
 #include "vx-share/regPacket.h"
 #include "frame.h"
 #include "inferior.h"
-#include "gdb_wait.h"
 #include "target.h"
 #include "gdbcore.h"
 #include "command.h"
 #include "symtab.h"
-#include "symfile.h"           /* for struct complaint */
+#include "symfile.h"
+#include "regcache.h"
 
 #include "gdb_string.h"
 #include <errno.h>
-#include <signal.h>
 #include <fcntl.h>
 #include <sys/types.h>
 #include <sys/time.h>
@@ -77,8 +76,7 @@ extern void net_write_registers ();
    it is ignored.  FIXME look at regno to improve efficiency.  */
 
 void
-vx_read_register (regno)
-     int regno;
+vx_read_register (int regno)
 {
   char mc68k_greg_packet[MC68K_GREG_PLEN];
   char mc68k_fpreg_packet[MC68K_FPREG_PLEN];
@@ -87,11 +85,15 @@ vx_read_register (regno)
 
   net_read_registers (mc68k_greg_packet, MC68K_GREG_PLEN, PTRACE_GETREGS);
 
-  bcopy (&mc68k_greg_packet[MC68K_R_D0], registers, 16 * MC68K_GREG_SIZE);
-  bcopy (&mc68k_greg_packet[MC68K_R_SR], &registers[REGISTER_BYTE (PS_REGNUM)],
-        MC68K_GREG_SIZE);
-  bcopy (&mc68k_greg_packet[MC68K_R_PC], &registers[REGISTER_BYTE (PC_REGNUM)],
-        MC68K_GREG_SIZE);
+  memcpy (deprecated_registers,
+         &mc68k_greg_packet[MC68K_R_D0]
+         16 * MC68K_GREG_SIZE);
+  memcpy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (PS_REGNUM)],
+         &mc68k_greg_packet[MC68K_R_SR],
+         MC68K_GREG_SIZE);
+  memcpy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (PC_REGNUM)],
+         &mc68k_greg_packet[MC68K_R_PC],
+         MC68K_GREG_SIZE);
 
   /* Get floating-point registers, if the target system has them.
      Otherwise, zero them.  */
@@ -101,24 +103,24 @@ vx_read_register (regno)
       net_read_registers (mc68k_fpreg_packet, MC68K_FPREG_PLEN,
                          PTRACE_GETFPREGS);
 
-      bcopy (&mc68k_fpreg_packet[MC68K_R_FP0],
-            &registers[REGISTER_BYTE (FP0_REGNUM)],
-            MC68K_FPREG_SIZE * 8);
-      bcopy (&mc68k_fpreg_packet[MC68K_R_FPCR],
-            &registers[REGISTER_BYTE (FPC_REGNUM)],
-            MC68K_FPREG_PLEN - (MC68K_FPREG_SIZE * 8));
+      memcpy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FP0_REGNUM)],
+             &mc68k_fpreg_packet[MC68K_R_FP0],
+             MC68K_FPREG_SIZE * 8);
+      memcpy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FPC_REGNUM)],
+             &mc68k_fpreg_packet[MC68K_R_FPCR],
+             MC68K_FPREG_PLEN - (MC68K_FPREG_SIZE * 8));
     }
   else
     {
-      bzero (&registers[REGISTER_BYTE (FP0_REGNUM)],
-            MC68K_FPREG_SIZE * 8);
-      bzero (&registers[REGISTER_BYTE (FPC_REGNUM)],
-            MC68K_FPREG_PLEN - (MC68K_FPREG_SIZE * 8));
+      memset (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FP0_REGNUM)],
+             0, MC68K_FPREG_SIZE * 8);
+      memset (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FPC_REGNUM)],
+             0, MC68K_FPREG_PLEN - (MC68K_FPREG_SIZE * 8));
     }
 
   /* Mark the register cache valid.  */
 
-  registers_fetched ();
+  deprecated_registers_fetched ();
 }
 
 /* Store a register or registers into the VxWorks target.
@@ -126,19 +128,21 @@ vx_read_register (regno)
    it is ignored.  FIXME look at regno to improve efficiency.  */
 
 void
-vx_write_register (regno)
-     int regno;
+vx_write_register (int regno)
 {
   char mc68k_greg_packet[MC68K_GREG_PLEN];
   char mc68k_fpreg_packet[MC68K_FPREG_PLEN];
 
   /* Store general-purpose registers.  */
 
-  bcopy (registers, &mc68k_greg_packet[MC68K_R_D0], 16 * MC68K_GREG_SIZE);
-  bcopy (&registers[REGISTER_BYTE (PS_REGNUM)],
-        &mc68k_greg_packet[MC68K_R_SR], MC68K_GREG_SIZE);
-  bcopy (&registers[REGISTER_BYTE (PC_REGNUM)],
-        &mc68k_greg_packet[MC68K_R_PC], MC68K_GREG_SIZE);
+  memcpy (&mc68k_greg_packet[MC68K_R_D0], deprecated_registers,
+         16 * MC68K_GREG_SIZE);
+  memcpy (&mc68k_greg_packet[MC68K_R_SR],
+         &deprecated_registers[DEPRECATED_REGISTER_BYTE (PS_REGNUM)],
+         MC68K_GREG_SIZE);
+  memcpy (&mc68k_greg_packet[MC68K_R_PC],
+         &deprecated_registers[DEPRECATED_REGISTER_BYTE (PC_REGNUM)],
+         MC68K_GREG_SIZE);
 
   net_write_registers (mc68k_greg_packet, MC68K_GREG_PLEN, PTRACE_SETREGS);
 
@@ -146,12 +150,12 @@ vx_write_register (regno)
 
   if (target_has_fp)
     {
-      bcopy (&registers[REGISTER_BYTE (FP0_REGNUM)],
-            &mc68k_fpreg_packet[MC68K_R_FP0],
-            MC68K_FPREG_SIZE * 8);
-      bcopy (&registers[REGISTER_BYTE (FPC_REGNUM)],
-            &mc68k_fpreg_packet[MC68K_R_FPCR],
-            MC68K_FPREG_PLEN - (MC68K_FPREG_SIZE * 8));
+      memcpy (&mc68k_fpreg_packet[MC68K_R_FP0],
+             &deprecated_registers[DEPRECATED_REGISTER_BYTE (FP0_REGNUM)],
+             MC68K_FPREG_SIZE * 8);
+      memcpy (&mc68k_fpreg_packet[MC68K_R_FPCR],
+             &deprecated_registers[DEPRECATED_REGISTER_BYTE (FPC_REGNUM)],
+             MC68K_FPREG_PLEN - (MC68K_FPREG_SIZE * 8));
 
       net_write_registers (mc68k_fpreg_packet, MC68K_FPREG_PLEN,
                           PTRACE_SETFPREGS);
This page took 0.028329 seconds and 4 git commands to generate.