]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - nptl/sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S
Update copyright notices with scripts/update-copyrights
[thirdparty/glibc.git] / nptl / sysdeps / unix / sysv / linux / i386 / i486 / sem_trywait.S
index a7c405d95f3f1b5ca801e8c6c1c13b5b54a3a0f0..69611eac5d3c11c3548d9e8ba59f5bd4edca7144 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2014 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
    Lesser General Public License for more details.
 
    You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, write to the Free
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
 #include <shlib-compat.h>
 #include <pthread-errnos.h>
-
-#ifndef UP
-# define LOCK lock
-#else
-# define
-#endif
+#include <lowlevellock.h>
 
        .text
 
@@ -42,25 +36,25 @@ __new_sem_trywait:
        leal    -1(%eax), %edx
        LOCK
        cmpxchgl %edx, (%ecx)
-       jne,pn  2b
+       jne     2b
        xorl    %eax, %eax
        ret
 
 1:
 #ifdef PIC
-       call    __i686.get_pc_thunk.cx
+       SETUP_PIC_REG(cx)
 #else
        movl    $3f, %ecx
 3:
 #endif
        addl    $_GLOBAL_OFFSET_TABLE_, %ecx
-#if USE___THREAD
-       movl    %gs:0, %edx
-       subl    errno@gottpoff(%ecx), %edx
+#ifdef NO_TLS_DIRECT_SEG_REFS
+       movl    errno@gotntpoff(%ecx), %edx
+       addl    %gs:0, %edx
        movl    $EAGAIN, (%edx)
 #else
-       call    __errno_location@plt
-       movl    $EAGAIN, (%eax)
+       movl    errno@gotntpoff(%ecx), %edx
+       movl    $EAGAIN, %gs:(%edx)
 #endif
        orl     $-1, %eax
        ret
@@ -71,15 +65,3 @@ __new_sem_trywait:
 __old_sem_trywait = __new_sem_trywait
        compat_symbol(libpthread, __old_sem_trywait, sem_trywait, GLIBC_2_0)
 #endif
-
-
-#ifdef PIC
-       .section .gnu.linkonce.t.__i686.get_pc_thunk.cx,"ax",@progbits
-       .globl  __i686.get_pc_thunk.cx
-       .hidden __i686.get_pc_thunk.cx
-       .type   __i686.get_pc_thunk.cx,@function
-__i686.get_pc_thunk.cx:
-       movl (%esp), %ecx;
-       ret
-       .size   __i686.get_pc_thunk.cx,.-__i686.get_pc_thunk.cx
-#endif