diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-03-02 07:52:31 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-03-02 07:52:31 +0000 |
commit | 748bec0865432d32b673478c502e4e4e5bed5339 (patch) | |
tree | 9ac172ec15ff2ccce969a26166e4035fd276f8a7 | |
parent | 78429f12311d5670b4c8715e5cb0586220914cb5 (diff) | |
download | glibc-748bec0865432d32b673478c502e4e4e5bed5339.tar.gz glibc-748bec0865432d32b673478c502e4e4e5bed5339.tar.xz glibc-748bec0865432d32b673478c502e4e4e5bed5339.zip |
Update.
* sysdeps/i386/tcb-offsets.sym: Add CLEANUP and CLEANUP_PREV. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Inline __pthread_cleanup_pop functionality. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S | 6 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S | 6 |
3 files changed, 9 insertions, 8 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index b85d911e0f..a3f0c94705 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -4,6 +4,11 @@ 2003-03-01 Ulrich Drepper <drepper@redhat.com> + * sysdeps/i386/tcb-offsets.sym: Add CLEANUP and CLEANUP_PREV. + * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Inline + __pthread_cleanup_pop functionality. + * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. + * descr.h (struct pthread): Move tid field to the front now that it is often used. diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S index b13ad19408..090fecbd43 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S @@ -197,10 +197,8 @@ __pthread_cond_timedwait: jne 10f /* Remove cancellation handler. */ -11: leal 28(%esp), %edx - movl $0, 4(%esp) - movl %edx, (%esp) - call __pthread_cleanup_pop +11: movl 20+CLEANUP_PREV(%esp), %edx + movl %edx, %gs:CLEANUP /* Trick ahead: 8(%esp) contains the address of the mutex. */ addl $8, %esp diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S index da0483ab1b..5d9248a8a1 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S @@ -218,10 +218,8 @@ __pthread_cond_wait: jne 10f /* Remove cancellation handler. */ -11: leal 20(%esp), %edx - movl $0, 4(%esp) - movl %edx, (%esp) - call __pthread_cleanup_pop +11: movl 20+CLEANUP_PREV(%esp), %edx + movl %edx, %gs:CLEANUP /* Trick ahead: 8(%esp) contains the address of the mutex. */ addl $8, %esp |