[PATCH v5 3/3] arm64: Kconfig: Enable usage of optimized memset/memcpy/memmove

Stefan Roese sr at denx.de
Thu Sep 2 16:37:41 CEST 2021


On 02.09.21 16:17, Tom Rini wrote:
> On Tue, Aug 17, 2021 at 10:48:27AM +0200, Stefan Roese wrote:
> 
>> This patch enables the use of the optimized memset(), memmove() &
>> memcpy() versions recently added on ARM64.
>>
>> Signed-off-by: Stefan Roese <sr at denx.de>
>> ---
>>
>> Changes in v5:
>> - memmove is now auto-selected (or deselected) with the memcpy
>>    Kconfig selection as it's entry is the same as memcpy for ARM64
>>
>> Changes in v3:
>> - Add memmove as well
>>
>>   arch/arm/Kconfig              | 37 +++++++++++++++++++++++++++++------
>>   arch/arm/include/asm/string.h |  4 ++++
>>   2 files changed, 35 insertions(+), 6 deletions(-)
> 
> This gives a ton of build failures for me, using gcc-9.2.0 (from
> kernel.org) along the lines of:
> Building current source for 1 boards (1 thread, 16 jobs per thread)
>     aarch64:  +   j721e_evm_a72
> +(j721e_evm_a72) aarch64-linux-ar: warning: arch/arm/lib/memset-arm64.o: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) aarch64-linux-ar: warning: arch/arm/lib/memcpy-arm64.o: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) aarch64-linux-ld.bfd: warning: arch/arm/lib/memset-arm64.o: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) aarch64-linux-ld.bfd: warning: arch/arm/lib/memcpy-arm64.o: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) aarch64-linux-objcopy: warning: u-boot: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) aarch64-linux-objdump: warning: u-boot: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) aarch64-linux-nm: warning: u-boot: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0000000
> +(j721e_evm_a72) tools/relocate-rela: bad rela bounds
> +(j721e_evm_a72) make[1]: *** [u-boot-nodtb.bin] Error 1
> +(j721e_evm_a72) make: *** [sub-make] Error 2

I did not notice this, as I'm currently compiling locally with gcc-10.
Using gcc-9.4 also from kernel.org also works fine. gcc-9.2 throws these
errors.

Should we switch to gcc-9.4? I could also add something like this as a
dependency to the Kconfig entries:

https://patchwork.kernel.org/project/linux-arm-kernel/patch/20200619123550.48098-1-broonie@kernel.org/

Thanks,
Stefan


More information about the U-Boot mailing list