X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fremote-vxsparc.c;h=c18f91aa8dd965f93edf7e1ea12fbf7b06d9fd01;hb=627003499ddac21de88a2d00a0062e2f9407dcce;hp=ee080aad6061deca701fd9aed76a1c9bf8ce11e7;hpb=dc9e099fc0eced486ae2b49455c9da113c11f4ff;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/remote-vxsparc.c b/gdb/remote-vxsparc.c index ee080aad60..c18f91aa8d 100644 --- a/gdb/remote-vxsparc.c +++ b/gdb/remote-vxsparc.c @@ -26,16 +26,15 @@ #include "vx-share/regPacket.h" #include "frame.h" #include "inferior.h" -#include "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 -#include #include #include #include @@ -76,8 +75,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 sparc_greg_packet[SPARC_GREG_PLEN]; char sparc_fpreg_packet[SPARC_FPREG_PLEN]; @@ -94,18 +92,18 @@ vx_read_register (regno) as defined in "tm-sparc.h". */ bcopy (&sparc_greg_packet[SPARC_R_G0], - ®isters[REGISTER_BYTE (G0_REGNUM)], 32 * SPARC_GREG_SIZE); + &deprecated_registers[DEPRECATED_REGISTER_BYTE (G0_REGNUM)], + 32 * SPARC_GREG_SIZE); bcopy (&sparc_greg_packet[SPARC_R_Y], - ®isters[REGISTER_BYTE (Y_REGNUM)], 6 * SPARC_GREG_SIZE); + &deprecated_registers[DEPRECATED_REGISTER_BYTE (Y_REGNUM)], 6 * SPARC_GREG_SIZE); - /* Now write the local and in registers to the register window - spill area in the frame. VxWorks does not do this for the - active frame automatically; it greatly simplifies debugging - (FRAME_FIND_SAVED_REGS, in particular, depends on this). */ + /* Now write the local and in registers to the register window spill + area in the frame. VxWorks does not do this for the active frame + automatically; it greatly simplifies debugging. */ - sp = extract_address (®isters[REGISTER_BYTE (SP_REGNUM)], - REGISTER_RAW_SIZE (CORE_ADDR)); - write_memory (sp, ®isters[REGISTER_BYTE (L0_REGNUM)], + sp = extract_unsigned_integer (&deprecated_registers[DEPRECATED_REGISTER_BYTE (SP_REGNUM)], + REGISTER_RAW_SIZE (SP_REGNUM)); + write_memory (sp, &deprecated_registers[DEPRECATED_REGISTER_BYTE (L0_REGNUM)], 16 * REGISTER_RAW_SIZE (L0_REGNUM)); /* If the target has floating point registers, fetch them. @@ -118,19 +116,23 @@ vx_read_register (regno) net_read_registers (sparc_fpreg_packet, SPARC_FPREG_PLEN, PTRACE_GETFPREGS); bcopy (&sparc_fpreg_packet[SPARC_R_FP0], - ®isters[REGISTER_BYTE (FP0_REGNUM)], 32 * SPARC_FPREG_SIZE); + &deprecated_registers[DEPRECATED_REGISTER_BYTE (FP0_REGNUM)], + 32 * SPARC_FPREG_SIZE); bcopy (&sparc_fpreg_packet[SPARC_R_FSR], - ®isters[REGISTER_BYTE (FPS_REGNUM)], 1 * SPARC_FPREG_SIZE); + &deprecated_registers[DEPRECATED_REGISTER_BYTE (FPS_REGNUM)], + 1 * SPARC_FPREG_SIZE); } else { - bzero (®isters[REGISTER_BYTE (FP0_REGNUM)], 32 * SPARC_FPREG_SIZE); - bzero (®isters[REGISTER_BYTE (FPS_REGNUM)], 1 * SPARC_FPREG_SIZE); + bzero (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FP0_REGNUM)], + 32 * SPARC_FPREG_SIZE); + bzero (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FPS_REGNUM)], + 1 * SPARC_FPREG_SIZE); } /* Mark the register cache valid. */ - registers_fetched (); + deprecated_registers_fetched (); } /* Store a register or registers into the VxWorks target. @@ -138,8 +140,7 @@ 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 sparc_greg_packet[SPARC_GREG_PLEN]; char sparc_fpreg_packet[SPARC_FPREG_PLEN]; @@ -163,9 +164,9 @@ vx_write_register (regno) } if (in_gp_regs) { - bcopy (®isters[REGISTER_BYTE (G0_REGNUM)], + bcopy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (G0_REGNUM)], &sparc_greg_packet[SPARC_R_G0], 32 * SPARC_GREG_SIZE); - bcopy (®isters[REGISTER_BYTE (Y_REGNUM)], + bcopy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (Y_REGNUM)], &sparc_greg_packet[SPARC_R_Y], 6 * SPARC_GREG_SIZE); net_write_registers (sparc_greg_packet, SPARC_GREG_PLEN, PTRACE_SETREGS); @@ -175,9 +176,9 @@ vx_write_register (regno) if (regno < 0 || (L0_REGNUM <= regno && regno <= I7_REGNUM)) { - sp = extract_address (®isters[REGISTER_BYTE (SP_REGNUM)], - REGISTER_RAW_SIZE (CORE_ADDR)); - write_memory (sp, ®isters[REGISTER_BYTE (L0_REGNUM)], + sp = extract_unsigned_integer (&deprecated_registers[DEPRECATED_REGISTER_BYTE (SP_REGNUM)], + REGISTER_RAW_SIZE (SP_REGNUM)); + write_memory (sp, &deprecated_registers[DEPRECATED_REGISTER_BYTE (L0_REGNUM)], 16 * REGISTER_RAW_SIZE (L0_REGNUM)); } } @@ -186,9 +187,9 @@ vx_write_register (regno) if (in_fp_regs && target_has_fp) { - bcopy (®isters[REGISTER_BYTE (FP0_REGNUM)], + bcopy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FP0_REGNUM)], &sparc_fpreg_packet[SPARC_R_FP0], 32 * SPARC_FPREG_SIZE); - bcopy (®isters[REGISTER_BYTE (FPS_REGNUM)], + bcopy (&deprecated_registers[DEPRECATED_REGISTER_BYTE (FPS_REGNUM)], &sparc_fpreg_packet[SPARC_R_FSR], 1 * SPARC_FPREG_SIZE); net_write_registers (sparc_fpreg_packet, SPARC_FPREG_PLEN,