2002-09-05 Michael Snyder <msnyder@redhat.com>

* arm-tdep.c (arm_init_extra_frame_info): Distinguish between
	generic_dummy_frame method and old method.  Also distinguish
	between ARM_FP_REGNUM and THUMB_FP_REGNUM.
This commit is contained in:
Michael Snyder 2002-09-05 19:03:07 +00:00
parent 6672060b18
commit a90c3637c9
2 changed files with 10 additions and 2 deletions

View File

@ -1,5 +1,9 @@
2002-09-05 Michael Snyder <msnyder@redhat.com>
* arm-tdep.c (arm_init_extra_frame_info): Distinguish between
generic_dummy_frame method and old method. Also distinguish
between ARM_FP_REGNUM and THUMB_FP_REGNUM.
* mips-tdep.c (mips_n32n64_push_arguments): Remove alignment
adjustment that doesn't conform to the ABI.
(mips_extract_struct_value_address): Retrieve V0_REGNUM from

View File

@ -1143,7 +1143,8 @@ arm_init_extra_frame_info (int fromleaf, struct frame_info *fi)
fi->extra_info->frameoffset = 0;
}
else if (PC_IN_CALL_DUMMY (fi->pc, sp, fi->frame))
else if (!USE_GENERIC_DUMMY_FRAMES
&& PC_IN_CALL_DUMMY (fi->pc, sp, fi->frame))
{
CORE_ADDR rp;
CORE_ADDR callers_sp;
@ -1162,7 +1163,10 @@ arm_init_extra_frame_info (int fromleaf, struct frame_info *fi)
callers_sp = read_memory_integer (fi->saved_regs[ARM_SP_REGNUM],
REGISTER_RAW_SIZE (ARM_SP_REGNUM));
fi->extra_info->framereg = ARM_FP_REGNUM;
if (arm_pc_is_thumb (fi->pc))
fi->extra_info->framereg = THUMB_FP_REGNUM;
else
fi->extra_info->framereg = ARM_FP_REGNUM;
fi->extra_info->framesize = callers_sp - sp;
fi->extra_info->frameoffset = fi->frame - sp;
}