Inline __pthread_cleanup_pop functionality.
authordrepper <drepper>
Sun, 2 Mar 2003 07:50:34 +0000 (07:50 +0000)
committerdrepper <drepper>
Sun, 2 Mar 2003 07:50:34 +0000 (07:50 +0000)
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S

index b13ad19..090fecb 100644 (file)
@@ -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
index da0483a..5d9248a 100644 (file)
@@ -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