diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-02-03 03:51:24 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-02-03 03:51:24 +0000 |
commit | 2f42e8be4c56f013118f8dac63fb726aaa805d13 (patch) | |
tree | a3f169a1b8ef87d5031f07fae9c4329738cf0cda | |
parent | 75dec09e4db3931b8259406a019fc7de9bf5ff2e (diff) | |
download | glibc-2f42e8be4c56f013118f8dac63fb726aaa805d13.zip glibc-2f42e8be4c56f013118f8dac63fb726aaa805d13.tar.gz glibc-2f42e8be4c56f013118f8dac63fb726aaa805d13.tar.bz2 |
Update.
2003-02-02 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
(__lll_lock_wait): Add branch predicition.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S
(__lll_lock_wait): Likewise.
(lll_unlock_wake_cb): Removed.
-rw-r--r-- | nptl/ChangeLog | 8 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S | 28 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S | 4 |
3 files changed, 11 insertions, 29 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 77f0984..222694c 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,11 @@ +2003-02-02 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S + (__lll_lock_wait): Add branch predicition. + * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S + (__lll_lock_wait): Likewise. + (lll_unlock_wake_cb): Removed. + 2003-01-31 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Remove diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S index dda4c18..3484009 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S @@ -55,7 +55,7 @@ __lll_lock_wait: 0: #endif xaddl %eax, (%ebx) - jne 1b + jne,pn 1b movl $-1, (%ebx) @@ -66,32 +66,6 @@ __lll_lock_wait: .size __lll_lock_wait,.-__lll_lock_wait - .type lll_unlock_wake_cb,@function - .align 16 -lll_unlock_wake_cb: - pushl %esi - pushl %ebx - pushl %ecx - pushl %edx - - movl 20(%esp), %ebx -#ifndef UP - cmpl $0, %gs:MULTIPLE_THREADS_OFFSET - je,pt 0f - lock -0: -#endif - incl (%ebx) - jng 1f - - popl %edx - popl %ecx - popl %ebx - popl %esi - ret - .size lll_unlock_wake_cb,.-lll_unlock_wake_cb - - .globl __lll_unlock_wake .type __lll_unlock_wake,@function .hidden __lll_unlock_wake diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S index e79e65b..bdfc506 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S @@ -1,4 +1,4 @@ -/* Copyright (C) 2002 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -55,7 +55,7 @@ __lll_lock_wait: orl $-1, %eax /* Load -1. */ LOCK xaddl %eax, (%ebx) - jne 1b + jne,pn 1b movl $-1, (%ebx) |