diff options
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S | 14 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S | 14 |
2 files changed, 14 insertions, 14 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S index 81a4623a9c..b2a5d53e31 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S @@ -56,20 +56,20 @@ __pthread_cond_broadcast: testl %eax, %eax jne 1f -2: movl total_seq+4(%ebx), %eax - movl total_seq(%ebx), %ecx - cmpl wakeup_seq+4(%ebx), %eax +2: addl $wakeup_seq, %ebx + movl total_seq+4-wakeup_seq(%ebx), %eax + movl total_seq-wakeup_seq(%ebx), %ecx + cmpl 4(%ebx), %eax ja 3f jb 4f - cmpl wakeup_seq(%ebx), %ecx + cmpl (%ebx), %ecx jna 4f /* Case all currently waiting threads to wake up. */ -3: movl %ecx, wakeup_seq(%ebx) - movl %eax, wakeup_seq+4(%ebx) +3: movl %ecx, (%ebx) + movl %eax, 4(%ebx) /* Wake up all threads. */ - addl $wakeup_seq, %ebx movl $FUTEX_WAKE, %ecx xorl %esi, %esi movl $SYS_futex, %eax diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S index a581c127b2..404bb4ff85 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S @@ -56,20 +56,20 @@ __pthread_cond_signal: testl %eax, %eax jne 1f -2: movl total_seq+4(%ebx), %eax - movl total_seq(%ebx), %ecx - cmpl wakeup_seq+4(%ebx), %eax +2: addl $wakeup_seq, %ebx + movl total_seq+4-wakeup_seq(%ebx), %eax + movl total_seq-wakeup_seq(%ebx), %ecx + cmpl 4(%ebx), %eax ja 3f jb 4f - cmpl wakeup_seq(%ebx), %ecx + cmpl (%ebx), %ecx jbe 4f /* Bump the wakeup number. */ -3: addl $1, wakeup_seq(%ebx) - adcl $0, wakeup_seq+4(%ebx) +3: addl $1, (%ebx) + adcl $0, 4(%ebx) /* Wake up one thread. */ - addl $wakeup_seq, %ebx movl $FUTEX_WAKE, %ecx xorl %esi, %esi movl $SYS_futex, %eax |