[PATCH] arm: Fix memchr() for Armv8-R
Sebastian Huber
sebastian.huber@embedded-brains.de
Wed Dec 9 12:53:01 GMT 2020
On 09/12/2020 13:27, Richard Earnshaw wrote:
> 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<sebastian.huber@embedded-brains.de>
>>> ---
>>> 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.
I lack the background information to decide this. I have for example no
idea why the VFP variant was removed or not included in
ARM-software/optimized-routines. Was it intentional or an oversight? Was
it based on benchmarks?
Without the patch above Newlib is currently unusable for Armv8-R targets
with an VFP unit.
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.huber@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the Newlib
mailing list