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:
parent
6672060b18
commit
a90c3637c9
2 changed files with 10 additions and 2 deletions
|
@ -1,5 +1,9 @@
|
||||||
2002-09-05 Michael Snyder <msnyder@redhat.com>
|
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
|
* mips-tdep.c (mips_n32n64_push_arguments): Remove alignment
|
||||||
adjustment that doesn't conform to the ABI.
|
adjustment that doesn't conform to the ABI.
|
||||||
(mips_extract_struct_value_address): Retrieve V0_REGNUM from
|
(mips_extract_struct_value_address): Retrieve V0_REGNUM from
|
||||||
|
|
|
@ -1143,7 +1143,8 @@ arm_init_extra_frame_info (int fromleaf, struct frame_info *fi)
|
||||||
fi->extra_info->frameoffset = 0;
|
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 rp;
|
||||||
CORE_ADDR callers_sp;
|
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],
|
callers_sp = read_memory_integer (fi->saved_regs[ARM_SP_REGNUM],
|
||||||
REGISTER_RAW_SIZE (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->framesize = callers_sp - sp;
|
||||||
fi->extra_info->frameoffset = fi->frame - sp;
|
fi->extra_info->frameoffset = fi->frame - sp;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue