On 22/03/2020 18:15, Jérémy Lefaure wrote:
> Hi Wilco,
> 
> On Mon, Mar 09, 2020 at 05:53:41PM +0000, Wilco Dijkstra wrote:
>> Hi,
>>
>> There is no single PC offset that is correct given CPUs may use different 
>> offsets.
> 
> Isn't it always an offset of 8 in ARM mode and 4 bytes in Thumb mode ?
> At least in ARMv7 and in AArch32 state in ARMv8 ?
> 

No, it depends on the architecture version.  Prior to ARMv5 it was
implementation defined.  Some cores would use +12 in Arm state, others +8.

> 
>> GCC may also schedule the instruction that stores the PC. This feature used 
>> to
>> work on early Arms but is no longer functional or useful today, so the best 
>> way
>> forward is to remove it altogether. There are many similar options that have
>> been deprecated for years.
>>
> I didn't know that this feature is no longer working. Thank your for the
> info.

The poke-function-name feature depends on the long-deprecated APCS
variant of the procedure call standard (the AAPCS has been the standard
for well over 10 years now).  I don't think we should be adding (or,
now, even trying to fix) features that are dependent on it.  We will be
moving away from codegen support for this type of frame layout in the
not too distant future.

R.

> 
> 
> Thank your for having reviewed my patch,
> Jérémy
> 

Reply via email to