Re: [PATCH] arm: Fix memchr() for Armv8-R
Richard Earnshaw via Newlib <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
On 09/12/2020 12:11, Sebastian Huber wrote: > On 04/12/2020 08:42, Sebastian Huber wrote: > >> The Cortex-R52 processor is an Armv8-R processor with a NEON unit. This >> fix prevents conflicting architecture profiles A/R errors issued by the >> linker. >> >> Signed-off-by: Sebastian Huber <[email protected]> >> --- >> newlib/libc/machine/arm/memchr.S | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/newlib/libc/machine/arm/memchr.S >> b/newlib/libc/machine/arm/memchr.S >> index 7c22b117e..1a4c6512c 100644 >> --- a/newlib/libc/machine/arm/memchr.S >> +++ b/newlib/libc/machine/arm/memchr.S >> @@ -79,7 +79,11 @@ >> @ NOTE: This ifdef MUST match the one in memchr-stub.c >> #if defined (__ARM_NEON__) || defined (__ARM_NEON) >> +#if __ARM_ARCH >= 8 && __ARM_ARCH_PROFILE == 'R' >> + .arch armv8-r >> +#else >> .arch armv7-a >> +#endif >> .fpu neon >> > > The memchr.S from the ARM optimized routines package has little in > common with the file in Newlib: > > https://github.com/ARM-software/optimized-routines/blob/master/string/arm/memchr.S > > > The Newlib variant uses VFP instructions for example. > > I think this change should be checked in as is. > That probably means the newlib one is out of date and needs to be resynced. R.