summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 14:33:26 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 14:34:40 -0700
commitef9b6f73f45a46d079018f63e2d9184eaa0db1d5 (patch)
tree24b219357cedb237a2c55ac90f42f47ada16b154
parent8da92e722ca66e35003abf64a77ae529f9989e6a (diff)
Mark 3 *_internal functions with attribute_hidden [BZ #18822]
Mark __ptsname_internal, __mktime_internal and __fopen_internal with attribute_hidden to allow direct access to them within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/stdlib.h (__ptsname_internal): Add attribute_hidden. * include/time.h (__mktime_internal): Likewise. * libio/iolibio.h (__fopen_internal): Likewise.
-rw-r--r--ChangeLog7
-rw-r--r--include/stdlib.h2
-rw-r--r--include/time.h2
-rw-r--r--libio/iolibio.h3
4 files changed, 11 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 593ac8395a..b011e83b93 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-10-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #18822]
+ * include/stdlib.h (__ptsname_internal): Add attribute_hidden.
+ * include/time.h (__mktime_internal): Likewise.
+ * libio/iolibio.h (__fopen_internal): Likewise.
+
2017-10-01 John David Anglin <danglin@gcc.gnu.org>
* sysdeps/unix/sysv/linux/hppa/getcontext.S (__getcontext): Save return
diff --git a/include/stdlib.h b/include/stdlib.h
index c4a6e6f737..2274790a2e 100644
--- a/include/stdlib.h
+++ b/include/stdlib.h
@@ -78,7 +78,7 @@ extern char *__realpath (const char *__name, char *__resolved);
extern int __ptsname_r (int __fd, char *__buf, size_t __buflen);
# ifndef _ISOMAC
extern int __ptsname_internal (int fd, char *buf, size_t buflen,
- struct stat64 *stp);
+ struct stat64 *stp) attribute_hidden;
# endif
extern int __getpt (void);
extern int __posix_openpt (int __oflag);
diff --git a/include/time.h b/include/time.h
index 324913214f..870b7eb93c 100644
--- a/include/time.h
+++ b/include/time.h
@@ -54,7 +54,7 @@ extern void __tz_compute (time_t timer, struct tm *tm, int use_localtime)
extern time_t __mktime_internal (struct tm *__tp,
struct tm *(*__func) (const time_t *,
struct tm *),
- time_t *__offset);
+ time_t *__offset) attribute_hidden;
extern struct tm *__localtime_r (const time_t *__timer,
struct tm *__tp) attribute_hidden;
diff --git a/libio/iolibio.h b/libio/iolibio.h
index f215fcef01..754d8b0650 100644
--- a/libio/iolibio.h
+++ b/libio/iolibio.h
@@ -23,7 +23,8 @@ extern _IO_FILE *_IO_fopen (const char*, const char*);
extern _IO_FILE *_IO_old_fopen (const char*, const char*);
extern _IO_FILE *_IO_new_fopen (const char*, const char*);
extern _IO_FILE *_IO_fopen64 (const char*, const char*);
-extern _IO_FILE *__fopen_internal (const char*, const char*, int);
+extern _IO_FILE *__fopen_internal (const char*, const char*, int)
+ attribute_hidden;
extern _IO_FILE *__fopen_maybe_mmap (_IO_FILE *) __THROW;
extern int _IO_fprintf (_IO_FILE*, const char*, ...);
extern int _IO_fputs (const char*, _IO_FILE*);