Fix check for PI mutex in x86-64 pthread_cond_signal
authorAndreas Schwab <schwab@redhat.com>
Mon, 10 Aug 2009 15:10:11 +0000 (08:10 -0700)
committerUlrich Drepper <drepper@redhat.com>
Mon, 10 Aug 2009 15:10:11 +0000 (08:10 -0700)
Register eax contains the syscall number, use a different one instead.

nptl/ChangeLog
nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S

index 5be464e..092962f 100644 (file)
@@ -1,3 +1,9 @@
+2009-08-10  Andreas Schwab  <schwab@redhat.com>
+
+       * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
+       (__pthread_cond_signal): Don't clobber register used for syscall
+       number.
+
 2009-08-08  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait):
index 4d001ee..d1d83a8 100644 (file)
@@ -64,9 +64,9 @@ __pthread_cond_signal:
 
        /* Get the address of the mutex used.  */
        movq    dep_mutex(%r8), %rcx
-       movl    MUTEX_KIND(%rcx), %eax
-       andl    $(ROBUST_BIT|PI_BIT), %eax
-       cmpl    $PI_BIT, %eax
+       movl    MUTEX_KIND(%rcx), %r11d
+       andl    $(ROBUST_BIT|PI_BIT), %r11d
+       cmpl    $PI_BIT, %r11d
        je      9f
 
 #ifdef __ASSUME_PRIVATE_FUTEX