From: kettenis Date: Sun, 9 Jun 2002 16:06:46 +0000 (+0000) Subject: * i386-linux-nat.c (suppy_gregset): Don't supply X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2adddeef9f83669f4d5ebb388fd4460021174bda;p=pf3gnuchains%2Fsourceware.git * i386-linux-nat.c (suppy_gregset): Don't supply I386_LINUX_ORIG_EAX_REGNUM if there isn't room for it in GDB's register cache. (fill_gregset): Don't fetch it under the same circumstances. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ecc6213d13..6bf38d824f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2002-06-09 Mark Kettenis + + * i386-linux-nat.c (suppy_gregset): Don't supply + I386_LINUX_ORIG_EAX_REGNUM if there isn't room for it in GDB's + register cache. + (fill_gregset): Don't fetch it under the same circumstances. + 2002-06-09 Andrew Cagney * Makefile.in (callback_h): Define. diff --git a/gdb/i386-linux-nat.c b/gdb/i386-linux-nat.c index e20e894113..222c6146dc 100644 --- a/gdb/i386-linux-nat.c +++ b/gdb/i386-linux-nat.c @@ -311,7 +311,8 @@ supply_gregset (elf_gregset_t *gregsetp) for (i = 0; i < NUM_GREGS; i++) supply_register (i, (char *) (regp + regmap[i])); - supply_register (I386_LINUX_ORIG_EAX_REGNUM, (char *) (regp + ORIG_EAX)); + if (I386_LINUX_ORIG_EAX_REGNUM < NUM_REGS) + supply_register (I386_LINUX_ORIG_EAX_REGNUM, (char *) (regp + ORIG_EAX)); } /* Fill register REGNO (if it is a general-purpose register) in @@ -328,7 +329,8 @@ fill_gregset (elf_gregset_t *gregsetp, int regno) if ((regno == -1 || regno == i)) regcache_collect (i, regp + regmap[i]); - if (regno == -1 || regno == I386_LINUX_ORIG_EAX_REGNUM) + if ((regno == -1 || regno == I386_LINUX_ORIG_EAX_REGNUM) + && I386_LINUX_ORIG_EAX_REGNUM < NUM_REGS) regcache_collect (I386_LINUX_ORIG_EAX_REGNUM, regp + ORIG_EAX); }