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:
Ulrich Drepper 2003-06-09 07:39:03 +00:00
parent eae59a5681
commit b17203463d
2 changed files with 10 additions and 5 deletions

View File

@ -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>
* sysdeps/unix/sysv/linux/s390/sem_wait.c (__new_sem_wait): Make

View File

@ -65,6 +65,9 @@ __pthread_cond_signal:
movl total_seq+4(%edi), %eax
movl total_seq(%edi), %ecx
cmpl 4(%ebx), %eax
#if cond_lock != 0
leal cond_lock(%edi), %edi
#endif
ja 3f
jb 4f
cmpl (%ebx), %ecx
@ -90,13 +93,10 @@ __pthread_cond_signal:
testl %eax, %eax
jne 5f
/* Unlock. */
/* Unlock. Note that at this point %edi always points to
cond_lock. */
4: LOCK
#if cond_lock == 0
subl $1, (%edi)
#else
subl $1, cond_lock(%edi)
#endif
jne 5f
6: xorl %eax, %eax