aboutsummaryrefslogtreecommitdiff
path: root/nptl/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/sysdeps')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S5
1 files changed, 3 insertions, 2 deletions
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 3a24adf..4722b4c 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
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -65,6 +65,7 @@ __pthread_cond_signal:
movl total_seq(%edi), %ecx
cmpl 4(%ebx), %eax
#if cond_lock != 0
+ /* Must use leal to preserve the flags. */
leal cond_lock(%edi), %edi
#endif
ja 3f
@@ -76,7 +77,7 @@ __pthread_cond_signal:
3: addl $1, (%ebx)
adcl $0, 4(%ebx)
- /* Wake up one thread by moving it to the internal lock futex. */
+ /* Wake up one thread. */
movl $FUTEX_WAKE, %ecx
movl $SYS_futex, %eax
movl $1, %edx