aboutsummaryrefslogtreecommitdiff
path: root/nptl
diff options
context:
space:
mode:
Diffstat (limited to 'nptl')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S14
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S14
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