summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2018-02-23 13:54:53 +0000
committerJoseph Myers <joseph@codesourcery.com>2018-02-23 13:54:53 +0000
commit54412d20618b7b93f136a168e788573575f8a7a6 (patch)
tree9a70dd6ad24b576c41423d9c407005cca35d40c1
parent81be4b5e38c22bfd77ec8fe6815a45782c19eca1 (diff)
downloadglibc-54412d20618b7b93f136a168e788573575f8a7a6.tar.gz
glibc-54412d20618b7b93f136a168e788573575f8a7a6.tar.xz
glibc-54412d20618b7b93f136a168e788573575f8a7a6.zip
Use libc_hidden_* for tolower, toupper (bug 15105).
Continuing the fixes for localplt test failures with -Os arising from
functions not being inlined in that case, this patch fixes such
failures for tolower and toupper by using libc_hidden_proto and
libc_hidden_def.

Tested for x86_64 (both that it removes this particular localplt
failure for -Os, and that the testsuite continues to pass without
-Os).

2018-02-22  Joseph Myers  <joseph@codesourcery.com>

	[BZ #15105]
	* ctype/ctype.c (tolower): Use libc_hidden_def.
	(toupper): Likewise.
	* include/ctype.h [!_ISOMAC] (tolower): Use libc_hidden_proto.
	[!_ISOMAC] (toupper): Likewise.
-rw-r--r--ChangeLog8
-rw-r--r--ctype/ctype.c2
-rw-r--r--include/ctype.h3
3 files changed, 13 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index e3d251cf80..e14f3d8764 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2018-02-23  Joseph Myers  <joseph@codesourcery.com>
+
+	[BZ #15105]
+	* ctype/ctype.c (tolower): Use libc_hidden_def.
+	(toupper): Likewise.
+	* include/ctype.h [!_ISOMAC] (tolower): Use libc_hidden_proto.
+	[!_ISOMAC] (toupper): Likewise.
+
 2018-02-23  Mike FABIAN  <mfabian@redhat.com>
 
 	* localedata/Makefile: Remove --quiet argument when
diff --git a/ctype/ctype.c b/ctype/ctype.c
index e86c5b03c7..6cb8000771 100644
--- a/ctype/ctype.c
+++ b/ctype/ctype.c
@@ -45,9 +45,11 @@ tolower (int c)
 {
   return c >= -128 && c < 256 ? __ctype_tolower[c] : c;
 }
+libc_hidden_def (tolower)
 
 int
 toupper (int c)
 {
   return c >= -128 && c < 256 ? __ctype_toupper[c] : c;
 }
+libc_hidden_def (toupper)
diff --git a/include/ctype.h b/include/ctype.h
index ac6db790b7..493a6f80ce 100644
--- a/include/ctype.h
+++ b/include/ctype.h
@@ -11,6 +11,9 @@ libc_hidden_proto (__ctype_init)
    So defeat macro expansion with parens for this declaration.  */
 extern int (__isctype) (int __c, int __mask);
 
+libc_hidden_proto (tolower)
+libc_hidden_proto (toupper)
+
 # if IS_IN (libc)
 
 /* These accessors are used by the optimized macros to find the