* i386gnu-nat.c: Include "gdb_string.h".
(fetch_fpregs): Use i387_supply_fxsave to fill the floating-point registers when the floating-point state isn't initialized. * Makefile.in (i386gnu-nat.o): Update dependencies.
This commit is contained in:
parent
653cfe8544
commit
3303a2761a
3 changed files with 20 additions and 14 deletions
|
@ -1,3 +1,10 @@
|
|||
2004-10-11 Mark Kettenis <kettenis@gnu.org>
|
||||
|
||||
* i386gnu-nat.c: Include "gdb_string.h".
|
||||
(fetch_fpregs): Use i387_supply_fxsave to fill the floating-point
|
||||
registers when the floating-point state isn't initialized.
|
||||
* Makefile.in (i386gnu-nat.o): Update dependencies.
|
||||
|
||||
2004-10-11 David Anderson <davea@sgi.com>
|
||||
|
||||
* regcache.c (regcache_raw_read): Comment was missing "to".
|
||||
|
|
|
@ -2004,8 +2004,8 @@ i386fbsd-nat.o: i386fbsd-nat.c $(defs_h) $(inferior_h) $(regcache_h) \
|
|||
i386fbsd-tdep.o: i386fbsd-tdep.c $(defs_h) $(arch_utils_h) $(osabi_h) \
|
||||
$(i386_tdep_h) $(i387_tdep_h) $(solib_svr4_h)
|
||||
i386gnu-nat.o: i386gnu-nat.c $(defs_h) $(inferior_h) $(floatformat_h) \
|
||||
$(regcache_h) $(gdb_assert_h) $(i386_tdep_h) $(gnu_nat_h) \
|
||||
$(i387_tdep_h) $(gregset_h)
|
||||
$(regcache_h) $(gdb_assert_h) $(gdb_string_h) $(i386_tdep_h) \
|
||||
$(gnu_nat_h) $(i387_tdep_h) $(gregset_h)
|
||||
i386gnu-tdep.o: i386gnu-tdep.c $(defs_h) $(osabi_h) $(i386_tdep_h)
|
||||
i386-linux-nat.o: i386-linux-nat.c $(defs_h) $(inferior_h) $(gdbcore_h) \
|
||||
$(regcache_h) $(linux_nat_h) $(gdb_assert_h) $(gdb_string_h) \
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#include "gdb_assert.h"
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include "gdb_string.h"
|
||||
|
||||
#include <mach.h>
|
||||
#include <mach_error.h>
|
||||
|
@ -60,8 +61,9 @@ static int reg_offset[] =
|
|||
#define REG_ADDR(state, regnum) ((char *)(state) + reg_offset[regnum])
|
||||
|
||||
|
||||
/* Get the whole floating-point state of THREAD and record the
|
||||
values of the corresponding (pseudo) registers. */
|
||||
/* Get the whole floating-point state of THREAD and record the values
|
||||
of the corresponding (pseudo) registers. */
|
||||
|
||||
static void
|
||||
fetch_fpregs (struct proc *thread)
|
||||
{
|
||||
|
@ -79,19 +81,16 @@ fetch_fpregs (struct proc *thread)
|
|||
}
|
||||
|
||||
if (!state.initialized)
|
||||
/* The floating-point state isn't initialized. */
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = FP0_REGNUM; i <= FOP_REGNUM; i++)
|
||||
regcache_raw_supply (current_regcache, i, NULL);
|
||||
|
||||
return;
|
||||
/* The floating-point state isn't initialized. */
|
||||
i387_supply_fsave (current_regcache, -1, NULL);
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
/* Supply the floating-point registers. */
|
||||
i387_supply_fsave (current_regcache, -1, state.hw_state);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_SYS_PROCFS_H
|
||||
/* These two calls are used by the core-regset.c code for
|
||||
|
|
Loading…
Reference in a new issue