This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] aarch64: Optimized memset for falkor



On 19/12/2017 16:38, Szabolcs Nagy wrote:
> On 20/11/17 12:57, Siddhesh Poyarekar wrote:
>> On Monday 20 November 2017 06:11 PM, Szabolcs Nagy wrote:
>>> On 14/11/17 09:26, Siddhesh Poyarekar wrote:
>>>> +libc_ifunc (__libc_memset, (IS_FALKOR (midr) && zva_size == 64
>>>> +			    ? __memset_falkor
>>>> +			    : __memset_generic));
>>>
>>> the falkor code is probably slightly better for
>>> most of the zva==64 targets too, but this way
>>> is probably the least risky and the logic can
>>> be changed later if necessary.
>>>
>>> i don't see a way to fix falkor with smaller
>>> impact on other cores.
>>>
>>> so this is OK to commit.
>>
>> Thanks, pushed.
>>
> 
> this broke --disable-multi-arch build
> string/rtld-memset.os is missing then
> i don't yet know the cause
> 
> aarch64-none-linux-gnu-gcc   -nostdlib -nostartfiles -shared -o B/elf/ld.so.new		\
> 	  -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both -Wl,-z,defs 	\
> 	  B/elf/librtld.os -Wl,--version-script=B/ld.map		\
> 	  -Wl,-soname=ld-linux-aarch64.so.1			\
> 	  -Wl,-defsym=_begin=0
> B/elf/librtld.os: In function `_dl_map_segments':
> S/elf/./dl-map-segments.h:131: undefined reference to `memset'
> ...
> collect2: error: ld returned 1 exit status
> make[2]: *** [B/elf/ld.so] Error 1
> 

This should fix it:

diff --git a/sysdeps/aarch64/memset.S b/sysdeps/aarch64/memset.S
index 45fb0a8..7f5127f 100644
--- a/sysdeps/aarch64/memset.S
+++ b/sysdeps/aarch64/memset.S
@@ -19,6 +19,10 @@
 #include <sysdep.h>
 #include "memset-reg.h"
 
+#ifndef MEMSET
+# define MEMSET memset
+#endif
+
 /* Assumptions:
  *
  * ARMv8-a, AArch64, unaligned accesses


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]