aboutsummaryrefslogtreecommitdiff
path: root/nptl/pthread_create.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-02-18 11:12:34 +0000
committerUlrich Drepper <drepper@redhat.com>2003-02-18 11:12:34 +0000
commitba25bb0f1d140994dc0b6ee5f074d1237c493ee5 (patch)
treed8c32106df64b166b1a32a3add3b1ed889743416 /nptl/pthread_create.c
parent729924a042266022cc469501d01b33f0f9ae4bfc (diff)
downloadglibc-ba25bb0f1d140994dc0b6ee5f074d1237c493ee5.zip
glibc-ba25bb0f1d140994dc0b6ee5f074d1237c493ee5.tar.gz
glibc-ba25bb0f1d140994dc0b6ee5f074d1237c493ee5.tar.bz2
Update.
* pthread_create.c (deallocate_tsd): Mark as internal_function. Add some more __builtin_expect.
Diffstat (limited to 'nptl/pthread_create.c')
-rw-r--r--nptl/pthread_create.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c
index 172f002..74f3e9a 100644
--- a/nptl/pthread_create.c
+++ b/nptl/pthread_create.c
@@ -107,6 +107,7 @@ __find_in_stack_list (pd)
/* Deallocate POSIX thread-local-storage. */
static void
+internal_function
deallocate_tsd (struct pthread *pd)
{
/* Maybe no data was ever allocated. This happens often so we have
@@ -180,7 +181,8 @@ internal_function
__free_tcb (struct pthread *pd)
{
/* The thread is exiting now. */
- if (atomic_bit_test_set (&pd->cancelhandling, TERMINATED_BIT) == 0)
+ if (__builtin_expect (atomic_bit_test_set (&pd->cancelhandling,
+ TERMINATED_BIT) == 0, 1))
{
/* Remove the descriptor from the list. */
if (DEBUGGING_P && __find_in_stack_list (pd) == NULL)