about summary refs log tree commit diff
path: root/nptl/pthread_exit.c
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/pthread_exit.c')
-rw-r--r--nptl/pthread_exit.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/nptl/pthread_exit.c b/nptl/pthread_exit.c
index aed8c12e17..6abf66463e 100644
--- a/nptl/pthread_exit.c
+++ b/nptl/pthread_exit.c
@@ -36,8 +36,11 @@ __pthread_exit (void *value)
 
   __do_cancel ();
 }
+libc_hidden_def (__pthread_exit)
 weak_alias (__pthread_exit, pthread_exit)
 
-/* After a thread terminates, __libc_start_main decrements
-   __nptl_nthreads defined in pthread_create.c.  */
-PTHREAD_STATIC_FN_REQUIRE (__pthread_create)
+/* Ensure that the unwinder is always linked in (the __pthread_unwind
+   reference from __do_cancel is weak).  Use ___pthread_unwind_next
+   (three underscores) to produce a strong reference to the same
+   file.  */
+PTHREAD_STATIC_FN_REQUIRE (___pthread_unwind_next)