From 413db45d1bfb11ab1b2e8307d4b519d5169c0b7b Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Thu, 27 Aug 2015 07:55:13 -0700 Subject: Move i486/pthread_spin_trylock.S to pthread_spin_trylock.S Since glibc doesn't support i386 any more, we can move i486/pthread_spin_trylock.S to pthread_spin_trylock.S * sysdeps/i386/i486/pthread_spin_trylock.S: Moved to ... * sysdeps/i386/pthread_spin_trylock.S: Here. * sysdeps/i386/i586/pthread_spin_trylock.S: Removed. * sysdeps/i386/i686/pthread_spin_trylock.S: Updated. --- ChangeLog | 7 +++++ sysdeps/i386/i486/pthread_spin_trylock.S | 46 -------------------------------- sysdeps/i386/i586/pthread_spin_trylock.S | 1 - sysdeps/i386/i686/pthread_spin_trylock.S | 2 +- sysdeps/i386/pthread_spin_trylock.S | 46 ++++++++++++++++++++++++++++++++ 5 files changed, 54 insertions(+), 48 deletions(-) delete mode 100644 sysdeps/i386/i486/pthread_spin_trylock.S delete mode 100644 sysdeps/i386/i586/pthread_spin_trylock.S create mode 100644 sysdeps/i386/pthread_spin_trylock.S diff --git a/ChangeLog b/ChangeLog index f44a4d9e03..b9e5dbc3bf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2015-08-27 H.J. Lu + + * sysdeps/i386/i486/pthread_spin_trylock.S: Moved to ... + * sysdeps/i386/pthread_spin_trylock.S: Here. + * sysdeps/i386/i586/pthread_spin_trylock.S: Removed. + * sysdeps/i386/i686/pthread_spin_trylock.S: Updated. + 2015-08-27 H.J. Lu * sysdeps/i386/i486/string-inlines.c: Moved to ... diff --git a/sysdeps/i386/i486/pthread_spin_trylock.S b/sysdeps/i386/i486/pthread_spin_trylock.S deleted file mode 100644 index afa479dfab..0000000000 --- a/sysdeps/i386/i486/pthread_spin_trylock.S +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright (C) 2002-2015 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper , 2002. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - 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, see - . */ - -#include - - -#ifdef UP -# define LOCK -#else -# define LOCK lock -#endif - - .globl pthread_spin_trylock - .type pthread_spin_trylock,@function - .align 16 -pthread_spin_trylock: - movl 4(%esp), %edx - movl $1, %eax - xorl %ecx, %ecx - LOCK - cmpxchgl %ecx, (%edx) - movl $EBUSY, %eax -#ifdef HAVE_CMOV - cmovel %ecx, %eax -#else - jne 0f - movl %ecx, %eax -0: -#endif - ret - .size pthread_spin_trylock,.-pthread_spin_trylock diff --git a/sysdeps/i386/i586/pthread_spin_trylock.S b/sysdeps/i386/i586/pthread_spin_trylock.S deleted file mode 100644 index 0cf8b3ab70..0000000000 --- a/sysdeps/i386/i586/pthread_spin_trylock.S +++ /dev/null @@ -1 +0,0 @@ -#include diff --git a/sysdeps/i386/i686/pthread_spin_trylock.S b/sysdeps/i386/i686/pthread_spin_trylock.S index 924c4d728e..9da05ee3ff 100644 --- a/sysdeps/i386/i686/pthread_spin_trylock.S +++ b/sysdeps/i386/i686/pthread_spin_trylock.S @@ -17,4 +17,4 @@ . */ #define HAVE_CMOV 1 -#include +#include diff --git a/sysdeps/i386/pthread_spin_trylock.S b/sysdeps/i386/pthread_spin_trylock.S new file mode 100644 index 0000000000..afa479dfab --- /dev/null +++ b/sysdeps/i386/pthread_spin_trylock.S @@ -0,0 +1,46 @@ +/* Copyright (C) 2002-2015 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper , 2002. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + 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, see + . */ + +#include + + +#ifdef UP +# define LOCK +#else +# define LOCK lock +#endif + + .globl pthread_spin_trylock + .type pthread_spin_trylock,@function + .align 16 +pthread_spin_trylock: + movl 4(%esp), %edx + movl $1, %eax + xorl %ecx, %ecx + LOCK + cmpxchgl %ecx, (%edx) + movl $EBUSY, %eax +#ifdef HAVE_CMOV + cmovel %ecx, %eax +#else + jne 0f + movl %ecx, %eax +0: +#endif + ret + .size pthread_spin_trylock,.-pthread_spin_trylock -- cgit 1.4.1