From: Joel Brobecker Date: Sat, 13 Nov 2004 23:49:31 +0000 (+0000) Subject: * irix5-nat.c (fetch_core_registers): Replace use of X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=b85ffbc9d5fe6f9440d57ac5ce09a391e6fe3846;p=pf3gnuchains%2Fpf3gnuchains3x.git * irix5-nat.c (fetch_core_registers): Replace use of deprecated_registers by equivalent code. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 20161f4ff0..ab1b438174 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2004-11-13 Joel Brobecker + * irix5-nat.c (fetch_core_registers): Replace use of + deprecated_registers by equivalent code. + +2004-11-13 Joel Brobecker + * irix5-nat.c (fill_gregset): Replace use of deprecated_registers with equivalent code. (fill_fpregset): Likewise. diff --git a/gdb/irix5-nat.c b/gdb/irix5-nat.c index 9948d4abe1..9461c0c6bb 100644 --- a/gdb/irix5-nat.c +++ b/gdb/irix5-nat.c @@ -221,52 +221,33 @@ static void fetch_core_registers (char *core_reg_sect, unsigned core_reg_size, int which, CORE_ADDR reg_addr) { + char *srcp = core_reg_sect; + int regno; + if (core_reg_size == deprecated_register_bytes ()) { - memcpy ((char *) deprecated_registers, core_reg_sect, core_reg_size); + for (regno = 0; regno < NUM_REGS; regno++) + { + regcache_raw_write (current_regcache, regno, srcp); + srcp += register_size (current_gdbarch, regno); + } } else if (mips_isa_regsize (current_gdbarch) == 4 && core_reg_size == (2 * mips_isa_regsize (current_gdbarch)) * NUM_REGS) { /* This is a core file from a N32 executable, 64 bits are saved for all registers. */ - char *srcp = core_reg_sect; - char *dstp = deprecated_registers; - int regno; - for (regno = 0; regno < NUM_REGS; regno++) { if (regno >= FP0_REGNUM && regno < (FP0_REGNUM + 32)) { - /* FIXME, this is wrong, N32 has 64 bit FP regs, but GDB - currently assumes that they are 32 bit. */ - *dstp++ = *srcp++; - *dstp++ = *srcp++; - *dstp++ = *srcp++; - *dstp++ = *srcp++; - if (register_size (current_gdbarch, regno) == 4) - { - /* copying 4 bytes from eight bytes? - I don't see how this can be right... */ - srcp += 4; - } - else - { - /* copy all 8 bytes (sizeof(double)) */ - *dstp++ = *srcp++; - *dstp++ = *srcp++; - *dstp++ = *srcp++; - *dstp++ = *srcp++; - } + regcache_raw_write (current_regcache, regno, srcp); } else { - srcp += 4; - *dstp++ = *srcp++; - *dstp++ = *srcp++; - *dstp++ = *srcp++; - *dstp++ = *srcp++; + regcache_raw_write (current_regcache, regno, srcp + 4); } + srcp += 8; } } else @@ -274,8 +255,6 @@ fetch_core_registers (char *core_reg_sect, unsigned core_reg_size, warning ("wrong size gregset struct in core file"); return; } - - deprecated_registers_fetched (); } /* Register that we are able to handle irix5 core file formats.