mirror of
git://git.musl-libc.org/musl
synced 2025-03-07 12:17:32 +00:00
move some more code out of pthread_create.c
this also de-uglifies the dummy function aliasing a bit.
This commit is contained in:
parent
4f24994920
commit
a6054e3c94
@ -5,11 +5,7 @@ static void dummy_0()
|
|||||||
}
|
}
|
||||||
weak_alias(dummy_0, __rsyscall_lock);
|
weak_alias(dummy_0, __rsyscall_lock);
|
||||||
weak_alias(dummy_0, __rsyscall_unlock);
|
weak_alias(dummy_0, __rsyscall_unlock);
|
||||||
|
weak_alias(dummy_0, __pthread_tsd_run_dtors);
|
||||||
static void dummy_1(pthread_t self)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
weak_alias(dummy_1, __pthread_tsd_run_dtors);
|
|
||||||
|
|
||||||
#ifdef __pthread_unwind_next
|
#ifdef __pthread_unwind_next
|
||||||
#undef __pthread_unwind_next
|
#undef __pthread_unwind_next
|
||||||
@ -28,7 +24,7 @@ void __pthread_unwind_next(struct __ptcb *cb)
|
|||||||
|
|
||||||
LOCK(&self->exitlock);
|
LOCK(&self->exitlock);
|
||||||
|
|
||||||
__pthread_tsd_run_dtors(self);
|
__pthread_tsd_run_dtors();
|
||||||
|
|
||||||
/* Mark this thread dead before decrementing count */
|
/* Mark this thread dead before decrementing count */
|
||||||
self->dead = 1;
|
self->dead = 1;
|
||||||
|
@ -31,8 +31,9 @@ int pthread_key_delete(pthread_key_t k)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void __pthread_tsd_run_dtors(pthread_t self)
|
void __pthread_tsd_run_dtors()
|
||||||
{
|
{
|
||||||
|
pthread_t self = __pthread_self();
|
||||||
int i, j, not_finished = self->tsd_used;
|
int i, j, not_finished = self->tsd_used;
|
||||||
for (j=0; not_finished && j<PTHREAD_DESTRUCTOR_ITERATIONS; j++) {
|
for (j=0; not_finished && j<PTHREAD_DESTRUCTOR_ITERATIONS; j++) {
|
||||||
not_finished = 0;
|
not_finished = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user