aboutsummaryrefslogtreecommitdiff
path: root/libgomp/team.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgomp/team.c')
-rw-r--r--libgomp/team.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libgomp/team.c b/libgomp/team.c
index 9662234..ba57152 100644
--- a/libgomp/team.c
+++ b/libgomp/team.c
@@ -78,7 +78,6 @@ gomp_thread_start (void *xdata)
#else
struct gomp_thread local_thr;
thr = &local_thr;
- pthread_setspecific (gomp_tls_key, thr);
#endif
gomp_sem_init (&thr->release, 0);
@@ -92,6 +91,9 @@ gomp_thread_start (void *xdata)
#ifdef GOMP_NEEDS_THREAD_HANDLE
thr->handle = data->handle;
#endif
+#if !(defined HAVE_TLS || defined USE_EMUTLS)
+ pthread_setspecific (gomp_tls_key, thr);
+#endif
thr->ts.team->ordered_release[thr->ts.team_id] = &thr->release;