From 42e6c66593eb7a07afd58e70bef9aeed9f910548 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 26 May 2007 04:49:06 +0000 Subject: * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Add private futex support. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. --- nptl/sysdeps/unix/sysv/linux/i386/i486/sem_wait.S | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'nptl/sysdeps/unix/sysv/linux/i386/i486/sem_wait.S') diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_wait.S index bb4d6443e9..d0eef75144 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_wait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_wait.S @@ -29,7 +29,7 @@ #endif #define SYS_futex 240 -#define FUTEX_WAKE 1 +#define FUTEX_WAIT 0 #if VALUE != 0 @@ -76,10 +76,15 @@ __new_sem_wait: 6: call __pthread_enable_asynccancel movl %eax, (%esp) +#if FUTEX_WAIT == 0 + movl PRIVATE(%ebx), %ecx +#else + movl $FUTEX_WAIT, %ecx + orl PRIVATE(%ebx), %ecx +#endif xorl %esi, %esi + xorl %edx, %edx movl $SYS_futex, %eax - movl %esi, %ecx - movl %esi, %edx ENTER_KERNEL movl %eax, %esi -- cgit v1.2.3