2002-12-25  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Implement
	correct errno access for case that USE___THREAD is not defined.
This commit is contained in:
Ulrich Drepper 2002-12-25 08:56:55 +00:00
parent 015a2dc9c5
commit a218c9cfe3
2 changed files with 27 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2002-12-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Implement
correct errno access for case that USE___THREAD is not defined.
2002-12-24 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/dl-sysdep.h: Add missing #endif.

View File

@ -80,9 +80,15 @@ __new_sem_wait:
4:
#endif
addl $_GLOBAL_OFFSET_TABLE_, %ebx
#if USE___THREAD
movl %gs:0, %edx
subl errno@gottpoff(%ebx), %edx
movl %eax, (%edx)
#else
movl %eax, %edx
call __errno_location@plt
movl %edx, (%eax)
#endif
orl $-1, %eax
popl %esi
popl %ebx
@ -121,9 +127,14 @@ __new_sem_trywait:
3:
#endif
addl $_GLOBAL_OFFSET_TABLE_, %ecx
#if USE___THREAD
movl %gs:0, %edx
subl errno@gottpoff(%ecx), %edx
movl $EAGAIN, (%edx)
#else
call __errno_location@plt
movl $EAGAIN, (%eax)
#endif
orl $-1, %eax
ret
.size __new_sem_trywait,.-__new_sem_trywait
@ -226,9 +237,15 @@ sem_timedwait:
4:
#endif
addl $_GLOBAL_OFFSET_TABLE_, %ebx
#if USE___THREAD
movl %gs:0, %edx
subl errno@gottpoff(%ebx), %edx
movl %eax, (%edx)
#else
movl %eax, %edx
call __errno_location@plt
movl %edx, (%eax)
#endif
addl $8, %esp
orl $-1, %eax
@ -272,9 +289,14 @@ __new_sem_post:
4:
#endif
addl $_GLOBAL_OFFSET_TABLE_, %ebx
#if USE___THREAD
movl %gs:0, %edx
subl errno@gottpoff(%ebx), %edx
movl $EINVAL, (%edx)
#else
call __errno_location@plt
movl $EAGAIN, (%eax)
#endif
orl $-1, %eax
popl %ebx