* sysdeps/unix/sysv/linux/i386/i486/sem_post.S (__old_sem_post): New

routine instead of an alias to __new_sem_post.
2007-10-17  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/i386/i486/sem_post.S (__old_sem_post): New
	routine instead of an alias to __new_sem_post.
This commit is contained in:
Jakub Jelinek 2007-10-17 14:34:44 +00:00
parent 6a649d25bb
commit 96c06e084b
2 changed files with 25 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2007-10-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S (__old_sem_post): New
routine instead of an alias to __new_sem_post.
2007-10-15 Jakub Jelinek <jakub@redhat.com>
* init.c (__pthread_initialize_minimal): Initialize word to appease

View file

@ -86,7 +86,26 @@ __new_sem_post:
versioned_symbol(libpthread, __new_sem_post, sem_post, GLIBC_2_1)
#if SHLIB_COMPAT(libpthread, GLIBC_2_0, GLIBC_2_1)
.global __old_sem_post
__old_sem_post = __new_sem_post
.type __old_sem_post,@function
__old_sem_post:
pushl %ebx
movl 8(%esp), %ebx
LOCK
addl $1, (%ebx)
movl $SYS_futex, %eax
movl $FUTEX_WAKE, %ecx
movl $1, %edx
ENTER_KERNEL
testl %eax, %eax
js 1b
xorl %eax, %eax
popl %ebx
ret
.size __old_sem_post,.-__old_sem_post
compat_symbol(libpthread, __old_sem_post, sem_post, GLIBC_2_0)
#endif