* sparc-nat.c (store_inferior_registers): Fill in all members of

inferior_fp_registers by reading them from the inferior before
	modifying and writing them back.
	Fixes unexplainable inferior FP exceptions after calls to the inferior
	or setting of floating point registers.
	* mips-tdep.c (mips_skip_prologue):  Skip move of argument register
	to register which is generated by gcc-2.4.
This commit is contained in:
Peter Schauer
1993-05-25 06:52:54 +00:00
parent 3b17ee1bad
commit 1b71de8ea4
3 changed files with 20 additions and 0 deletions

View File

@ -222,6 +222,12 @@ store_inferior_registers (regno)
if (wanna_store & FP_REGS)
{
if (!register_valid[FP0_REGNUM+9]) abort();
/* Initialize inferior_fp_registers members that gdb doesn't set
by reading them from the inferior. */
if (0 !=
ptrace (PTRACE_GETFPREGS, inferior_pid,
(PTRACE_ARG3_TYPE) &inferior_fp_registers, 0))
perror("ptrace_getfpregs");
memcpy (&inferior_fp_registers, &registers[REGISTER_BYTE (FP0_REGNUM)],
sizeof inferior_fp_registers.fpu_fr);