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

Tom Rini trini at konsulko.com
Thu Sep 2 16:41:57 CEST 2021


On Thu, Sep 02, 2021 at 04:37:41PM +0200, Stefan Roese wrote:
> 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.

I suppose this also means I should finish my local move up to gcc-11.1.0
to match CI, then, or whack the last of my local scripts to fire off
Docker rather than not.

> 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/

We have GCC_VERSION available in Kconfig, so yes, lets go with that in a
v6.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20210902/a134a7bd/attachment.sig>


More information about the U-Boot mailing list