From 91c6a187b89cb1ea9afc6a963106fbccca218dde Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sat, 8 Sep 2018 18:46:06 -0400 Subject: [PATCH] move declarations of tls setup/access functions to pthread_impl.h it's already included in all places where these are needed, and aside from __tls_get_addr, they're all implementation internals. --- ldso/dynlink.c | 4 ---- src/internal/pthread_impl.h | 6 ++++++ src/thread/__tls_get_addr.c | 2 -- src/thread/pthread_create.c | 2 -- src/time/timer_create.c | 2 -- 5 files changed, 6 insertions(+), 10 deletions(-) diff --git a/ldso/dynlink.c b/ldso/dynlink.c index 1d3dacc3..f78a02e6 100644 --- a/ldso/dynlink.c +++ b/ldso/dynlink.c @@ -96,9 +96,7 @@ struct symdef { struct dso *dso; }; -int __init_tp(void *); void __init_libc(char **, char *); -void *__copy_tls(unsigned char *); static struct builtin_tls { char c; @@ -1892,8 +1890,6 @@ static void *addr2dso(size_t a) return 0; } -void *__tls_get_addr(tls_mod_off_t *); - static void *do_dlsym(struct dso *p, const char *s, void *ra) { size_t i; diff --git a/src/internal/pthread_impl.h b/src/internal/pthread_impl.h index d4d1dc61..3479bcf6 100644 --- a/src/internal/pthread_impl.h +++ b/src/internal/pthread_impl.h @@ -135,6 +135,12 @@ struct __timer { ((sigset_t *)(const unsigned long [_NSIG/8/sizeof(long)]){ \ 0x80000000 }) +void *__tls_get_addr(tls_mod_off_t *); +hidden void *__tls_get_new(tls_mod_off_t *); +int __init_tp(void *); +void *__copy_tls(unsigned char *); +void __reset_tls(); + int __clone(int (*)(void *), void *, int, void *, ...); int __set_thread_area(void *); int __libc_sigaction(int, const struct sigaction *, struct sigaction *); diff --git a/src/thread/__tls_get_addr.c b/src/thread/__tls_get_addr.c index 3bc60571..013817b4 100644 --- a/src/thread/__tls_get_addr.c +++ b/src/thread/__tls_get_addr.c @@ -2,8 +2,6 @@ #include "pthread_impl.h" #include "libc.h" -hidden void *__tls_get_new(tls_mod_off_t *); - void *__tls_get_addr(tls_mod_off_t *v) { pthread_t self = __pthread_self(); diff --git a/src/thread/pthread_create.c b/src/thread/pthread_create.c index 27ace2c6..dc869dc1 100644 --- a/src/thread/pthread_create.c +++ b/src/thread/pthread_create.c @@ -178,8 +178,6 @@ static void init_file_lock(FILE *f) if (f && f->lock<0) f->lock = 0; } -void *__copy_tls(unsigned char *); - int __pthread_create(pthread_t *restrict res, const pthread_attr_t *restrict attrp, void *(*entry)(void *), void *restrict arg) { int ret, c11 = (attrp == __ATTRP_C11_THREAD); diff --git a/src/time/timer_create.c b/src/time/timer_create.c index 16432bec..ad7a2646 100644 --- a/src/time/timer_create.c +++ b/src/time/timer_create.c @@ -19,8 +19,6 @@ static void dummy_0() } weak_alias(dummy_0, __pthread_tsd_run_dtors); -void __reset_tls(); - static void cleanup_fromsig(void *p) { pthread_t self = __pthread_self(); -- 2.25.1