aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog14
-rw-r--r--include/string.h1
-rw-r--r--string/strnlen.c1
-rw-r--r--sysdeps/aarch64/strnlen.S1
-rw-r--r--sysdeps/i386/i686/multiarch/strnlen-c.c4
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S3
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c4
-rw-r--r--sysdeps/powerpc/powerpc32/power7/strnlen.S1
-rw-r--r--sysdeps/tile/tilegx/strnlen.c1
9 files changed, 28 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 9182ed9..1c67d99 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,19 @@
2015-06-02 Joseph Myers <joseph@codesourcery.com>
+ * string/strnlen.c [!STRNLEN] (__strnlen): Use libc_hidden_def.
+ * include/string.h (__strnlen): Use libc_hidden_proto.
+ * sysdeps/aarch64/strnlen.S (__strnlen): Use libc_hidden_def.
+ * sysdeps/i386/i686/multiarch/strnlen-c.c [SHARED]
+ (libc_hidden_def): Define __GI___strnlen as well as __GI_strnlen.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S
+ (libc_hidden_def): Undefine and redefine.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c
+ [SHARED] (libc_hidden_def): Define __GI___strnlen as well as
+ __GI_strnlen.
+ * sysdeps/powerpc/powerpc32/power7/strnlen.S (__strnlen): Use
+ libc_hidden_def.
+ * sysdeps/tile/tilegx/strnlen.c (__strnlen): Likewise.
+
[BZ #18469]
* wctype/wcfuncs.c (towlower): Rename to __towlower and define as
weak alias of __towlower. Use libc_hidden_weak.
diff --git a/include/string.h b/include/string.h
index 89f00fd..c57671e 100644
--- a/include/string.h
+++ b/include/string.h
@@ -91,6 +91,7 @@ libc_hidden_proto (__strtok_r)
extern char *__strsep_g (char **__stringp, const char *__delim);
libc_hidden_proto (__strsep_g)
libc_hidden_proto (strnlen)
+libc_hidden_proto (__strnlen)
libc_hidden_proto (memmem)
extern __typeof (memmem) __memmem;
libc_hidden_proto (__memmem)
diff --git a/string/strnlen.c b/string/strnlen.c
index 803d78b..d2bb843 100644
--- a/string/strnlen.c
+++ b/string/strnlen.c
@@ -160,6 +160,7 @@ __strnlen (const char *str, size_t maxlen)
return char_ptr - str;
}
#ifndef STRNLEN
+libc_hidden_def (__strnlen)
weak_alias (__strnlen, strnlen)
#endif
libc_hidden_def (strnlen)
diff --git a/sysdeps/aarch64/strnlen.S b/sysdeps/aarch64/strnlen.S
index 743172c..9d6b19f 100644
--- a/sysdeps/aarch64/strnlen.S
+++ b/sysdeps/aarch64/strnlen.S
@@ -157,5 +157,6 @@ L(hit_limit):
mov len, limit
RET
END (__strnlen)
+libc_hidden_def (__strnlen)
weak_alias (__strnlen, strnlen)
libc_hidden_def (strnlen)
diff --git a/sysdeps/i386/i686/multiarch/strnlen-c.c b/sysdeps/i386/i686/multiarch/strnlen-c.c
index f02465d..351e939 100644
--- a/sysdeps/i386/i686/multiarch/strnlen-c.c
+++ b/sysdeps/i386/i686/multiarch/strnlen-c.c
@@ -2,7 +2,9 @@
#ifdef SHARED
# undef libc_hidden_def
# define libc_hidden_def(name) \
- __hidden_ver1 (__strnlen_ia32, __GI_strnlen, __strnlen_ia32);
+ __hidden_ver1 (__strnlen_ia32, __GI_strnlen, __strnlen_ia32); \
+ strong_alias (__strnlen_ia32, __strnlen_ia32_1); \
+ __hidden_ver1 (__strnlen_ia32_1, __GI___strnlen, __strnlen_ia32_1);
#endif
#include "string/strnlen.c"
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S
index 32fba1b..e857754 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S
@@ -31,6 +31,9 @@
cfi_endproc; \
ASM_SIZE_DIRECTIVE(__strnlen_power7)
+#undef libc_hidden_def
+#define libc_hidden_def(name)
+
#undef libc_hidden_builtin_def
#define libc_hidden_builtin_def(name)
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c
index 6eaed60..a5f7516 100644
--- a/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c
@@ -20,7 +20,9 @@
#ifdef SHARED
# undef libc_hidden_def
# define libc_hidden_def(name) \
- __hidden_ver1 (__strnlen_ppc, __GI_strnlen, __strnlen_ppc);
+ __hidden_ver1 (__strnlen_ppc, __GI_strnlen, __strnlen_ppc); \
+ strong_alias (__strnlen_ppc, __strnlen_ppc_1); \
+ __hidden_ver1 (__strnlen_ppc_1, __GI___strnlen, __strnlen_ppc_1);
#endif
#include <string/strnlen.c>
diff --git a/sysdeps/powerpc/powerpc32/power7/strnlen.S b/sysdeps/powerpc/powerpc32/power7/strnlen.S
index be169c6..de1001c 100644
--- a/sysdeps/powerpc/powerpc32/power7/strnlen.S
+++ b/sysdeps/powerpc/powerpc32/power7/strnlen.S
@@ -171,5 +171,6 @@ L(loop_small):
blr
END (__strnlen)
+libc_hidden_def (__strnlen)
weak_alias (__strnlen, strnlen)
libc_hidden_builtin_def (strnlen)
diff --git a/sysdeps/tile/tilegx/strnlen.c b/sysdeps/tile/tilegx/strnlen.c
index 575f8f5..d1f212b 100644
--- a/sysdeps/tile/tilegx/strnlen.c
+++ b/sysdeps/tile/tilegx/strnlen.c
@@ -52,5 +52,6 @@ __strnlen (const char *s, size_t maxlen)
size_t len = ((const char *) p) + (CFZ (bits) >> 3) - s;
return (len < maxlen ? len : maxlen);
}
+libc_hidden_def (__strnlen)
weak_alias (__strnlen, strnlen)
libc_hidden_def (strnlen)