about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2024-02-16 07:40:37 +0100
committerFlorian Weimer <fweimer@redhat.com>2024-02-16 07:41:04 +0100
commit0d9166c2245cad4ac520b337dee40c9a583872b6 (patch)
treeb0b063497db32c6081eda8c26df5617d8ce6d971
parentef7f4b1fef67430a8f3cfc77fa6aada2add851d7 (diff)
downloadglibc-0d9166c2245cad4ac520b337dee40c9a583872b6.tar.gz
glibc-0d9166c2245cad4ac520b337dee40c9a583872b6.tar.xz
glibc-0d9166c2245cad4ac520b337dee40c9a583872b6.zip
i386: Use generic memrchr in libc (bug 31316)
Before this change, we incorrectly used the SSE2 variant in the
implementation, without checking that the system actually supports
SSE2.

Tested-by: Sam James <sam@gentoo.org>
-rw-r--r--sysdeps/i386/i686/multiarch/memrchr-c.c1
-rw-r--r--sysdeps/i386/i686/multiarch/memrchr-sse2.S1
2 files changed, 1 insertions, 1 deletions
diff --git a/sysdeps/i386/i686/multiarch/memrchr-c.c b/sysdeps/i386/i686/multiarch/memrchr-c.c
index ef7bbbe792..20bfdf3af3 100644
--- a/sysdeps/i386/i686/multiarch/memrchr-c.c
+++ b/sysdeps/i386/i686/multiarch/memrchr-c.c
@@ -5,3 +5,4 @@ extern void *__memrchr_ia32 (const void *, int, size_t);
 #endif
 
 #include "string/memrchr.c"
+strong_alias (__memrchr_ia32, __GI___memrchr)
diff --git a/sysdeps/i386/i686/multiarch/memrchr-sse2.S b/sysdeps/i386/i686/multiarch/memrchr-sse2.S
index d9dae04171..e123f87435 100644
--- a/sysdeps/i386/i686/multiarch/memrchr-sse2.S
+++ b/sysdeps/i386/i686/multiarch/memrchr-sse2.S
@@ -720,5 +720,4 @@ L(ret_null):
 	ret
 
 END (__memrchr_sse2)
-strong_alias (__memrchr_sse2, __GI___memrchr)
 #endif