2016-05-24 Stefan Liebler <stli@linux.vnet.ibm.com>
+ * sysdeps/s390/multiarch/ifunc-resolve.h (s390_libc_ifunc):
+ Remove __GI_ symbol.
+ * sysdeps/s390/s390-32/multiarch/memcmp-s390.S: Add __GI_memcmp symbol.
+ * sysdeps/s390/s390-64/multiarch/memcmp-s390x.S: Likewise.
+ * sysdeps/s390/s390-32/multiarch/memcpy-s390.S: Add __GI_memcpy symbol.
+ * sysdeps/s390/s390-64/multiarch/memcpy-s390x.S: Likewise.
+ * sysdeps/s390/s390-32/multiarch/memset-s390.S: Add __GI_memset symbol.
+ * sysdeps/s390/s390-64/multiarch/memset-s390x.S: Likewise.
+
+2016-05-24 Stefan Liebler <stli@linux.vnet.ibm.com>
+
* sysdeps/s390/s390-64/memcpy.S (memcpy):
Use cghi instead of chi to compare 64bit value.
#define s390_libc_ifunc(FUNC) \
__asm__ (".globl " #FUNC "\n\t" \
".type " #FUNC ",@gnu_indirect_function\n\t" \
- ".set " #FUNC ",__resolve_" #FUNC "\n\t" \
- ".globl __GI_" #FUNC "\n\t" \
- ".set __GI_" #FUNC "," #FUNC "\n"); \
+ ".set " #FUNC ",__resolve_" #FUNC "\n\t"); \
\
/* Make the declarations of the optimized functions hidden in order
to prevent GOT slots being generated for them. */ \
.set memcmp,__memcmp_default
.weak bcmp
.set bcmp,__memcmp_default
+#elif defined SHARED && IS_IN (libc)
+.globl __GI_memcmp
+.set __GI_memcmp,__memcmp_default
#endif
#include "../memcpy.S"
-#if !defined SHARED || !IS_IN (libc)
+#if defined SHARED && IS_IN (libc)
+.globl __GI_memcpy
+.set __GI_memcpy,__memcpy_default
+#else
.globl memcpy
.set memcpy,__memcpy_default
#endif
#if !IS_IN (libc)
.globl memset
.set memset,__memset_default
+#elif defined SHARED && IS_IN (libc)
+.globl __GI_memset
+.set __GI_memset,__memset_default
#endif
.set memcmp,__memcmp_default
.weak bcmp
.set bcmp,__memcmp_default
+#elif defined SHARED && IS_IN (libc)
+.globl __GI_memcmp
+.set __GI_memcmp,__memcmp_default
#endif
#include "../memcpy.S"
-#if !defined SHARED || !IS_IN (libc)
+#if defined SHARED && IS_IN (libc)
+.globl __GI_memcpy
+.set __GI_memcpy,__memcpy_default
+#else
.globl memcpy
.set memcpy,__memcpy_default
#endif
#if !IS_IN (libc)
.globl memset
.set memset,__memset_default
+#elif defined SHARED && IS_IN (libc)
+.globl __GI_memset
+.set __GI_memset,__memset_default
#endif