mirror of git://sourceware.org/git/glibc.git
Update.
2003-06-09 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S (__pthread_cond_signal): Some more tweaks to handle cond_lock!=0.
This commit is contained in:
parent
eae59a5681
commit
b17203463d
|
@ -1,3 +1,8 @@
|
||||||
|
2003-06-09 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
|
||||||
|
(__pthread_cond_signal): Some more tweaks to handle cond_lock!=0.
|
||||||
|
|
||||||
2003-06-08 Ulrich Drepper <drepper@redhat.com>
|
2003-06-08 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/s390/sem_wait.c (__new_sem_wait): Make
|
* sysdeps/unix/sysv/linux/s390/sem_wait.c (__new_sem_wait): Make
|
||||||
|
|
|
@ -65,6 +65,9 @@ __pthread_cond_signal:
|
||||||
movl total_seq+4(%edi), %eax
|
movl total_seq+4(%edi), %eax
|
||||||
movl total_seq(%edi), %ecx
|
movl total_seq(%edi), %ecx
|
||||||
cmpl 4(%ebx), %eax
|
cmpl 4(%ebx), %eax
|
||||||
|
#if cond_lock != 0
|
||||||
|
leal cond_lock(%edi), %edi
|
||||||
|
#endif
|
||||||
ja 3f
|
ja 3f
|
||||||
jb 4f
|
jb 4f
|
||||||
cmpl (%ebx), %ecx
|
cmpl (%ebx), %ecx
|
||||||
|
@ -90,13 +93,10 @@ __pthread_cond_signal:
|
||||||
testl %eax, %eax
|
testl %eax, %eax
|
||||||
jne 5f
|
jne 5f
|
||||||
|
|
||||||
/* Unlock. */
|
/* Unlock. Note that at this point %edi always points to
|
||||||
|
cond_lock. */
|
||||||
4: LOCK
|
4: LOCK
|
||||||
#if cond_lock == 0
|
|
||||||
subl $1, (%edi)
|
subl $1, (%edi)
|
||||||
#else
|
|
||||||
subl $1, cond_lock(%edi)
|
|
||||||
#endif
|
|
||||||
jne 5f
|
jne 5f
|
||||||
|
|
||||||
6: xorl %eax, %eax
|
6: xorl %eax, %eax
|
||||||
|
|
Loading…
Reference in New Issue