diff options
author | Ulrich Drepper <drepper@redhat.com> | 2007-05-26 04:49:06 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2007-05-26 04:49:06 +0000 |
commit | 42e6c66593eb7a07afd58e70bef9aeed9f910548 (patch) | |
tree | 917aa294557cf8439bdccc82c1e45a34edea2584 /nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S | |
parent | 3d2dd6ca71fa9933e3413625d606f4b486661409 (diff) | |
download | glibc-42e6c66593eb7a07afd58e70bef9aeed9f910548.tar.gz |
* 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.
Diffstat (limited to 'nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S')
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S index 3677ab3bf9..57b5b58186 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S @@ -30,7 +30,7 @@ #define SYS_gettimeofday __NR_gettimeofday #define SYS_futex 240 -#define FUTEX_WAKE 1 +#define FUTEX_WAIT 0 #if VALUE != 0 @@ -108,10 +108,15 @@ sem_timedwait: movl %eax, 8(%esp) movl 28(%esp), %ebx /* Load semaphore address. */ - xorl %ecx, %ecx +#if FUTEX_WAIT == 0 + movl PRIVATE(%ebx), %ecx +#else + movl $FUTEX_WAIT, %ecx + orl PRIVATE(%ebx), %ecx +#endif movl %esp, %esi - movl $SYS_futex, %eax xorl %edx, %edx + movl $SYS_futex, %eax ENTER_KERNEL movl %eax, %esi |