diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-03-10 07:39:55 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-03-10 07:39:55 +0000 |
commit | c2e5e08573cd001c4f57f6c0b1c5f7708c6eca6d (patch) | |
tree | ef6b894ff829b65aa36338e66796e34f26a09415 /nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S | |
parent | cd4b2a553a5e0fa51f2ad74166b12820316ab66e (diff) |
Update.
* sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Fix many
leftovers from the ia32 code.
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Remove unneccessary
memory load.
(clear_once_control): Don't load %esi.
* sysdeps/x86_64/tls.h: Remove all traces of segment descriptor
handling.
* sysdeps/unix/sysv/linux/x86_64/fork.c: New file.
Diffstat (limited to 'nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S')
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S b/nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S index abab62ff1e..8d3deb88f8 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/pthread_once.S @@ -105,8 +105,7 @@ __pthread_once: pushl %edx call __pthread_cleanup_push /* Note: no @PLT. */ - movl 44(%esp), %eax - call *%eax + call *44(%esp) /* Pop the cleanup handler. This code depends on the once handler and _pthread_cleanup_push not touch the content @@ -144,20 +143,17 @@ pthread_once = __pthread_once .type clear_once_control,@function .align 16 clear_once_control: - pushl %esi pushl %ebx - movl 12(%esp), %ebx + movl 8(%esp), %ebx movl $0, (%ebx) - xorl %esi, %esi movl $0x7fffffff, %edx movl $FUTEX_WAKE, %ecx movl $SYS_futex, %eax ENTER_KERNEL popl %ebx - popl %esi ret .size clear_once_control,.-clear_once_control |