* amd64-tdep.c (amd64_supply_fxsave): Only fiddle with

I387_FISEG_REGNUM and I387_FOSEG_REGNUM in 64-bit mode.
(amd64_collect_fxsave): Likewise.
This commit is contained in:
Mark Kettenis 2004-04-09 23:24:05 +00:00
parent d9f8c85b8e
commit f0ef85a5af
2 changed files with 12 additions and 5 deletions

View File

@ -1,5 +1,9 @@
2004-04-10 Mark Kettenis <kettenis@gnu.org>
* amd64-tdep.c (amd64_supply_fxsave): Only fiddle with
I387_FISEG_REGNUM and I387_FOSEG_REGNUM in 64-bit mode.
(amd64_collect_fxsave): Likewise.
* i386-sol2-tdep.c: Include "gdb_string.h".
(i386_sol2_sigtramp_p): Recognize signal trampoline based on its
name.

View File

@ -1171,7 +1171,7 @@ amd64_supply_fxsave (struct regcache *regcache, int regnum,
{
i387_supply_fxsave (regcache, regnum, fxsave);
if (fxsave)
if (fxsave && gdbarch_ptr_bit (get_regcache_arch (regcache)) == 64)
{
const char *regs = fxsave;
@ -1195,8 +1195,11 @@ amd64_collect_fxsave (const struct regcache *regcache, int regnum,
i387_collect_fxsave (regcache, regnum, fxsave);
if (regnum == -1 || regnum == I387_FISEG_REGNUM)
regcache_raw_collect (regcache, I387_FISEG_REGNUM, regs + 12);
if (regnum == -1 || regnum == I387_FOSEG_REGNUM)
regcache_raw_collect (regcache, I387_FOSEG_REGNUM, regs + 20);
if (gdbarch_ptr_bit (get_regcache_arch (regcache)) == 64)
{
if (regnum == -1 || regnum == I387_FISEG_REGNUM)
regcache_raw_collect (regcache, I387_FISEG_REGNUM, regs + 12);
if (regnum == -1 || regnum == I387_FOSEG_REGNUM)
regcache_raw_collect (regcache, I387_FOSEG_REGNUM, regs + 20);
}
}