[PATCH 3/3] aarch64: Save and restore SVE registers in ld.so

Szabolcs Nagy szabolcs.nagy@arm.com
Thu Aug 2 13:33:00 GMT 2018


On 02/08/18 14:05, Richard Henderson wrote:
> On 08/02/2018 03:29 AM, Florian Weimer wrote:
>> On 08/02/2018 12:23 AM, rth@twiddle.net wrote:
>>> +/*
>>> + * For functions conforming to the procedure call standard as
>>> + * amended for SVE support (ARM_100986_0000_00_en (SVEpcs 00bet1)),
>>> + * we must save the entire contents of Z0-Z7 as well as P0-P3.
>>> + */
>>
>> What's the worst-case additional stack usage due to this change?
> 
> The current architectural maximum vector size is 256 bytes,
> so 2176 bytes total.
> 

that limit can increase in the future and saving 8 z regs is not enough,
you need to save all 32 if the resolver code may touch the 32 fp regs.
(so with 256byte regs it's 8k + 128bytes for 4 pregs)



More information about the Libc-alpha mailing list