summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2018-08-09 01:26:19 +0200
committerAndreas K. Hüttel <dilfridge@gentoo.org>2018-10-21 17:38:19 +0200
commit2db7b5e9316275d22110a8d7841cd5862d354510 (patch)
treeff4f756d4d99f9fd3cfcaa113507282c2f807246
parenthurd: Add missing symbols for proper libc_get/setspecific (diff)
downloadglibc-2db7b5e9316275d22110a8d7841cd5862d354510.tar.gz
glibc-2db7b5e9316275d22110a8d7841cd5862d354510.tar.bz2
glibc-2db7b5e9316275d22110a8d7841cd5862d354510.zip
hurd: Avoid PLTs for __pthread_get/setspecific
* sysdeps/htl/pthreadP.h [IS_IN (libpthread)] (__pthread_getspecific, __pthread_setspecific): Add hidden proto. * sysdeps/htl/pt-getspecific.c (__pthread_getspecific): Add hidden def. * sysdeps/htl/pt-setspecific.c (__pthread_setspecific): Add hidden def. (cherry picked from commit 726e1554ce4db5e35af41cb0110c54c5e1232054)
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/htl/pt-getspecific.c1
-rw-r--r--sysdeps/htl/pt-setspecific.c1
-rw-r--r--sysdeps/htl/pthreadP.h2
4 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 31abb116a5..dbcc56667b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,10 @@
* htl/Versions (__pthread_getspecific, __pthread_setspecific): Add
symbols.
+ * sysdeps/htl/pthreadP.h [IS_IN (libpthread)] (__pthread_getspecific,
+ __pthread_setspecific): Add hidden proto.
+ * sysdeps/htl/pt-getspecific.c (__pthread_getspecific): Add hidden def.
+ * sysdeps/htl/pt-setspecific.c (__pthread_setspecific): Add hidden def.
2018-08-01 Carlos O'Donel <carlos@redhat.com>
diff --git a/sysdeps/htl/pt-getspecific.c b/sysdeps/htl/pt-getspecific.c
index a0227a67f6..64ddf9551a 100644
--- a/sysdeps/htl/pt-getspecific.c
+++ b/sysdeps/htl/pt-getspecific.c
@@ -36,3 +36,4 @@ __pthread_getspecific (pthread_key_t key)
return self->thread_specifics[key];
}
strong_alias (__pthread_getspecific, pthread_getspecific);
+hidden_def (__pthread_getspecific)
diff --git a/sysdeps/htl/pt-setspecific.c b/sysdeps/htl/pt-setspecific.c
index a46a12f157..02aff417ef 100644
--- a/sysdeps/htl/pt-setspecific.c
+++ b/sysdeps/htl/pt-setspecific.c
@@ -48,3 +48,4 @@ __pthread_setspecific (pthread_key_t key, const void *value)
return 0;
}
strong_alias (__pthread_setspecific, pthread_setspecific);
+hidden_def (__pthread_setspecific)
diff --git a/sysdeps/htl/pthreadP.h b/sysdeps/htl/pthreadP.h
index 132ac1718e..71c2fcd9c6 100644
--- a/sysdeps/htl/pthreadP.h
+++ b/sysdeps/htl/pthreadP.h
@@ -68,6 +68,8 @@ struct __pthread_cancelation_handler **___pthread_get_cleanup_stack (void) attri
#if IS_IN (libpthread)
hidden_proto (__pthread_key_create)
+hidden_proto (__pthread_getspecific)
+hidden_proto (__pthread_setspecific)
hidden_proto (_pthread_mutex_init)
#endif