[RFC v5 22/22] elf: Add SVE support for aarch64 rtld-audit

Adhemerval Zanella adhemerval.zanella@linaro.org
Mon Nov 15 17:04:12 GMT 2021



On 10/11/2021 10:52, Florian Weimer wrote:
> * Adhemerval Zanella:
> 
>> diff --git a/sysdeps/aarch64/dl-trampoline.S b/sysdeps/aarch64/dl-trampoline.S
>> index 0d540651d4..6025de64ee 100644
>> --- a/sysdeps/aarch64/dl-trampoline.S
>> +++ b/sysdeps/aarch64/dl-trampoline.S
>> @@ -205,6 +205,9 @@ _dl_runtime_profile:
>>  	cfi_rel_offset (q6, OFFSET_RG + DL_OFFSET_RG_V0 + 32*3 + 0)
>>  	cfi_rel_offset (q7, OFFSET_RG + DL_OFFSET_RG_V0 + 32*3 + 16)
>>  
>> +	strb	wzr, [x29, #OFFSET_RG + DL_OFFSET_RG_SVE]
>> +	strb	wzr, [x29, #OFFSET_RV + DL_OFFSET_RV_SVE]
>> +
>>  	add     x0, x29, #SF_SIZE + 16
>>  	ldr	x1, [x29, #OFFSET_LR]
>>  	stp	x0, x1, [x29, #OFFSET_RG + DL_OFFSET_RG_SP]
> 
> I think OFFSET_RG is only defined for !PROF, so this leads to a build
> failure:
> 
> […] /home/bmg/build/glibcs/aarch64-linux-gnu/glibc/elf/dl-trampoline.op
> ../sysdeps/aarch64/dl-trampoline.S: Assembler messages:
> ../sysdeps/aarch64/dl-trampoline.S:503: Error: undefined symbol OFFSET_RG used as an immediate value
> ../sysdeps/aarch64/dl-trampoline.S:503: Error: undefined symbol OFFSET_RG used as an immediate value
> ../sysdeps/aarch64/dl-trampoline.S:503: Error: undefined symbol OFFSET_RG used as an immediate value
> ../sysdeps/aarch64/dl-trampoline.S:503: Error: undefined symbol OFFSET_RG used as an immediate value
> ../sysdeps/aarch64/dl-trampoline.S:503: Error: undefined symbol OFFSET_RG used as an immediate value
> […]

Thanks for catching it, in fact _dl_runtime_profile_sve should only be built for !PROF.


More information about the Libc-alpha mailing list