* 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.
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.
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
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