arm access to stack slot out of allocated area
Olivier Hainque
hainque@adacore.com
Fri Feb 8 16:19:00 GMT 2019
Hi Wilco,
> On 8 Feb 2019, at 15:49, Wilco Dijkstra <Wilco.Dijkstra@arm.com> wrote:
>
> Hi Olivier,
>
>> Below is a description of a very annoying bug we are witnessing
>> on ARM.
> ...
>> compiled with -Og -mapcs
>
> Do you know -mapcs has been deprecated for more than 4 years now?
> Is there a reason you are still using it? It was deprecated since -mapcs
> is both extremely inefficient and buggy. I would strongly suggest to stop
> using this option completely in all your software.
Sorry, I had -mapcs-frame in mind. The investigation I described was
conducted with the default settings of the VxWorks port (no particular option)
and thought it might be of greater potential interest if exposed with a bare
eabi compiler. The conditions of interest are guarded with
IS_NESTED (arm_current_func_type ())
&& ((TARGET_APCS_FRAME && frame_pointer_needed && TARGET_ARM)
Turns out that the arm-eabi code with -mapcs-frame is very slightly
different than the vxworks one, which I missed on the first reading.
Let me double check again ...
> It's useful to create a bug report with the details, however it might not be
> worth fixing if the issue cannot be reproduced without -mapcs. -mapcs
> was never meant to support a static chain, especially not spills of the
> static chain.
Understood. I'll start by examining the differences
between the vxworks and the eabi+aapcs-frame configurations
more closely, and I'll report back.
Thanks for your feedback!
More information about the Gcc-patches
mailing list