ARM: Do not use FP reg when on AAPCS
Commit Message
On 10/23/18 7:16 PM, Kevin Buettner wrote:
> On Tue, 23 Oct 2018 15:03:39 +0200
> Marius Muench <munch@eurecom.fr> wrote:
>> gdb/ChangeLog
>> 2018-10-23 Marius Muench <marius.muench@eurecom.fr>
>>
>> * arm-tdeb.c (arm_scan_prologue): Don't dereference FP reg
>> when on aapcs.
>
> Typo on filename above. (s/tdeb/tdep/) While you're changing it,
> please capitalize AAPCS too.
>
> Otherwise, okay.
>
> Kevin
>
Good catch, sorry for that. Here's the updated patch.
Thanks,
Marius
2018-10-24 Marius Muench <marius.muench@eurecom.fr>
* arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
when on AAPCS.
---
gdb/arm-tdep.c | 4 ++++
1 file changed, 4 insertions(+)
Comments
> 2018-10-24 Marius Muench <marius.muench@eurecom.fr>
>
> * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
> when on AAPCS.
Okay.
Kevin
Tiny nit:
On 10/24/2018 12:40 PM, Marius Muench wrote:
>
> + /* AAPCS does not use a frame register, so we can abort here. */
There should be a double space after the period.
> + if (gdbarch_tdep (gdbarch)->arm_abi == ARM_ABI_AAPCS)
> + return;
Thanks,
Pedro Alves
@@ -1801,6 +1801,10 @@ arm_scan_prologue (struct frame_info *this_frame,
CORE_ADDR frame_loc;
ULONGEST return_value;
+ /* AAPCS does not use a frame register, so we can abort here. */
+ if (gdbarch_tdep (gdbarch)->arm_abi == ARM_ABI_AAPCS)
+ return;
+
frame_loc = get_frame_register_unsigned (this_frame, ARM_FP_REGNUM);
if (!safe_read_memory_unsigned_integer (frame_loc, 4, byte_order,
&return_value))