summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/thread/__tls_get_addr.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/thread/__tls_get_addr.c b/src/thread/__tls_get_addr.c
index 84a413d4..6945faa0 100644
--- a/src/thread/__tls_get_addr.c
+++ b/src/thread/__tls_get_addr.c
@@ -1,16 +1,16 @@
#include <stddef.h>
#include "pthread_impl.h"
+#include "libc.h"
+
+__attribute__((__visibility__("hidden")))
+void *__tls_get_new(size_t *);
void *__tls_get_addr(size_t *v)
{
pthread_t self = __pthread_self();
-#ifdef SHARED
- __attribute__((__visibility__("hidden")))
- void *__tls_get_new(size_t *);
if (v[0]<=(size_t)self->dtv[0])
return (char *)self->dtv[v[0]]+v[1]+DTP_OFFSET;
return __tls_get_new(v);
-#else
- return (char *)self->dtv[1]+v[1]+DTP_OFFSET;
-#endif
}
+
+weak_alias(__tls_get_addr, __tls_get_new);