aboutsummaryrefslogtreecommitdiff
path: root/nptl/sysdeps/unix
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2014-05-14 15:32:18 -0700
committerRoland McGrath <roland@hack.frob.com>2014-05-14 15:32:18 -0700
commit039890a67818211dba8207feab3832b0fcc391d2 (patch)
treed7b545eb3c8d66e5cc0b0055c8eaf197308cc5d5 /nptl/sysdeps/unix
parent65c89320e2968c55feddfbdacd09c0a6cc0b006c (diff)
downloadglibc-039890a67818211dba8207feab3832b0fcc391d2.tar
glibc-039890a67818211dba8207feab3832b0fcc391d2.tar.gz
glibc-039890a67818211dba8207feab3832b0fcc391d2.tar.bz2
glibc-039890a67818211dba8207feab3832b0fcc391d2.zip
Move remaining files out of nptl/sysdeps/unix/sysv/linux/x86/.
Diffstat (limited to 'nptl/sysdeps/unix')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/Makefile3
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c81
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/elision-conf.h43
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/elision-lock.c95
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/elision-timed.c26
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/elision-trylock.c71
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/elision-unlock.c33
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/force-elision.h31
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/hle.h75
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/init-arch.c1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/init-arch.h1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_cond_lock.c22
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_lock.c22
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_timedlock.c22
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_trylock.c22
15 files changed, 0 insertions, 548 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/Makefile b/nptl/sysdeps/unix/sysv/linux/x86/Makefile
deleted file mode 100644
index 61b7552bc9..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-libpthread-sysdep_routines += init-arch
-libpthread-sysdep_routines += elision-lock elision-unlock elision-timed \
- elision-trylock
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c b/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c
deleted file mode 100644
index e6f5d6d1ab..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/* elision-conf.c: Lock elision tunable parameters.
- Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include "config.h"
-#include <pthreadP.h>
-#include <init-arch.h>
-#include <elision-conf.h>
-#include <unistd.h>
-
-/* Reasonable initial tuning values, may be revised in the future.
- This is a conservative initial value. */
-
-struct elision_config __elision_aconf =
- {
- /* How often to not attempt to use elision if a transaction aborted
- because the lock is already acquired. Expressed in number of lock
- acquisition attempts. */
- .skip_lock_busy = 3,
- /* How often to not attempt to use elision if a transaction aborted due
- to reasons other than other threads' memory accesses. Expressed in
- number of lock acquisition attempts. */
- .skip_lock_internal_abort = 3,
- /* How often we retry using elision if there is chance for the transaction
- to finish execution (e.g., it wasn't aborted due to the lock being
- already acquired. */
- .retry_try_xbegin = 3,
- /* Same as SKIP_LOCK_INTERNAL_ABORT but for trylock. */
- .skip_trylock_internal_abort = 3,
- };
-
-/* Set when the CPU supports elision. When false elision is never attempted.
- */
-
-int __elision_available attribute_hidden;
-
-/* Force elision for all new locks. This is used to decide whether existing
- DEFAULT locks should be automatically upgraded to elision in
- pthread_mutex_lock(). Disabled for suid programs. Only used when elision
- is available. */
-
-int __pthread_force_elision attribute_hidden;
-
-/* Initialize elison. */
-
-static void
-elision_init (int argc __attribute__ ((unused)),
- char **argv __attribute__ ((unused)),
- char **environ)
-{
- __elision_available = HAS_RTM;
-#ifdef ENABLE_LOCK_ELISION
- __pthread_force_elision = __libc_enable_secure ? 0 : __elision_available;
-#endif
-}
-
-#ifdef SHARED
-# define INIT_SECTION ".init_array"
-#else
-# define INIT_SECTION ".preinit_array"
-#endif
-
-void (*const __pthread_init_array []) (int, char **, char **)
- __attribute__ ((section (INIT_SECTION), aligned (sizeof (void *)))) =
-{
- &elision_init
-};
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.h b/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.h
deleted file mode 100644
index 6790b5aa13..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-conf.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* elision-conf.h: Lock elision tunable parameters.
- Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-#ifndef _ELISION_CONF_H
-#define _ELISION_CONF_H 1
-
-#include <pthread.h>
-#include <cpuid.h>
-#include <time.h>
-
-/* Should make sure there is no false sharing on this. */
-
-struct elision_config
-{
- int skip_lock_busy;
- int skip_lock_internal_abort;
- int retry_try_xbegin;
- int skip_trylock_internal_abort;
-};
-
-extern struct elision_config __elision_aconf attribute_hidden;
-
-extern int __elision_available attribute_hidden;
-extern int __pthread_force_elision attribute_hidden;
-
-/* Tell the test suite to test elision for this architecture. */
-#define HAVE_ELISION 1
-
-#endif
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-lock.c b/nptl/sysdeps/unix/sysv/linux/x86/elision-lock.c
deleted file mode 100644
index 385ac31a52..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-lock.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/* elision-lock.c: Elided pthread mutex lock.
- Copyright (C) 2011-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include <pthread.h>
-#include "pthreadP.h"
-#include "lowlevellock.h"
-#include "hle.h"
-#include <elision-conf.h>
-
-#if !defined(LLL_LOCK) && !defined(EXTRAARG)
-/* Make sure the configuration code is always linked in for static
- libraries. */
-#include "elision-conf.c"
-#endif
-
-#ifndef EXTRAARG
-#define EXTRAARG
-#endif
-#ifndef LLL_LOCK
-#define LLL_LOCK(a,b) lll_lock(a,b), 0
-#endif
-
-#define aconf __elision_aconf
-
-/* Adaptive lock using transactions.
- By default the lock region is run as a transaction, and when it
- aborts or the lock is busy the lock adapts itself. */
-
-int
-__lll_lock_elision (int *futex, short *adapt_count, EXTRAARG int private)
-{
- if (*adapt_count <= 0)
- {
- unsigned status;
- int try_xbegin;
-
- for (try_xbegin = aconf.retry_try_xbegin;
- try_xbegin > 0;
- try_xbegin--)
- {
- if ((status = _xbegin()) == _XBEGIN_STARTED)
- {
- if (*futex == 0)
- return 0;
-
- /* Lock was busy. Fall back to normal locking.
- Could also _xend here but xabort with 0xff code
- is more visible in the profiler. */
- _xabort (_ABORT_LOCK_BUSY);
- }
-
- if (!(status & _XABORT_RETRY))
- {
- if ((status & _XABORT_EXPLICIT)
- && _XABORT_CODE (status) == _ABORT_LOCK_BUSY)
- {
- /* Right now we skip here. Better would be to wait a bit
- and retry. This likely needs some spinning. */
- if (*adapt_count != aconf.skip_lock_busy)
- *adapt_count = aconf.skip_lock_busy;
- }
- /* Internal abort. There is no chance for retry.
- Use the normal locking and next time use lock.
- Be careful to avoid writing to the lock. */
- else if (*adapt_count != aconf.skip_lock_internal_abort)
- *adapt_count = aconf.skip_lock_internal_abort;
- break;
- }
- }
- }
- else
- {
- /* Use a normal lock until the threshold counter runs out.
- Lost updates possible. */
- (*adapt_count)--;
- }
-
- /* Use a normal lock here. */
- return LLL_LOCK ((*futex), private);
-}
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-timed.c b/nptl/sysdeps/unix/sysv/linux/x86/elision-timed.c
deleted file mode 100644
index 4fdaa0f9e9..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-timed.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* elision-timed.c: Lock elision timed lock.
- Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include <time.h>
-#include <elision-conf.h>
-#include "lowlevellock.h"
-#define __lll_lock_elision __lll_timedlock_elision
-#define EXTRAARG const struct timespec *t,
-#undef LLL_LOCK
-#define LLL_LOCK(a, b) lll_timedlock(a, t, b)
-#include "elision-lock.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-trylock.c b/nptl/sysdeps/unix/sysv/linux/x86/elision-trylock.c
deleted file mode 100644
index a478ac18e3..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-trylock.c
+++ /dev/null
@@ -1,71 +0,0 @@
-/* elision-trylock.c: Lock eliding trylock for pthreads.
- Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include <pthread.h>
-#include <pthreadP.h>
-#include <lowlevellock.h>
-#include "hle.h"
-#include <elision-conf.h>
-
-#define aconf __elision_aconf
-
-/* Try to elide a futex trylock. FUTEX is the futex variable. ADAPT_COUNT is
- the adaptation counter in the mutex. */
-
-int
-__lll_trylock_elision (int *futex, short *adapt_count)
-{
- /* Implement POSIX semantics by forbiding nesting
- trylock. Sorry. After the abort the code is re-executed
- non transactional and if the lock was already locked
- return an error. */
- _xabort (_ABORT_NESTED_TRYLOCK);
-
- /* Only try a transaction if it's worth it. */
- if (*adapt_count <= 0)
- {
- unsigned status;
-
- if ((status = _xbegin()) == _XBEGIN_STARTED)
- {
- if (*futex == 0)
- return 0;
-
- /* Lock was busy. Fall back to normal locking.
- Could also _xend here but xabort with 0xff code
- is more visible in the profiler. */
- _xabort (_ABORT_LOCK_BUSY);
- }
-
- if (!(status & _XABORT_RETRY))
- {
- /* Internal abort. No chance for retry. For future
- locks don't try speculation for some time. */
- if (*adapt_count != aconf.skip_trylock_internal_abort)
- *adapt_count = aconf.skip_trylock_internal_abort;
- }
- /* Could do some retries here. */
- }
- else
- {
- /* Lost updates are possible, but harmless. */
- (*adapt_count)--;
- }
-
- return lll_trylock (*futex);
-}
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/elision-unlock.c b/nptl/sysdeps/unix/sysv/linux/x86/elision-unlock.c
deleted file mode 100644
index b9be19ccc4..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/elision-unlock.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/* elision-unlock.c: Commit an elided pthread lock.
- Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include "pthreadP.h"
-#include "lowlevellock.h"
-#include "hle.h"
-
-int
-__lll_unlock_elision(int *lock, int private)
-{
- /* When the lock was free we're in a transaction.
- When you crash here you unlocked a free lock. */
- if (*lock == 0)
- _xend();
- else
- lll_unlock ((*lock), private);
- return 0;
-}
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h b/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h
deleted file mode 100644
index 945f8867fc..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/force-elision.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* force-elision.h: Automatic enabling of elision for mutexes
- Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-/* Check for elision on this lock without upgrading. */
-#define DO_ELISION(m) \
- (__pthread_force_elision \
- && (m->__data.__kind & PTHREAD_MUTEX_NO_ELISION_NP) == 0) \
-
-/* Automatically enable elision for existing user lock kinds. */
-#define FORCE_ELISION(m, s) \
- if (__pthread_force_elision \
- && (m->__data.__kind & PTHREAD_MUTEX_ELISION_FLAGS_NP) == 0) \
- { \
- mutex->__data.__kind |= PTHREAD_MUTEX_ELISION_NP; \
- s; \
- }
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/hle.h b/nptl/sysdeps/unix/sysv/linux/x86/hle.h
deleted file mode 100644
index 4a7b9e3bf7..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/hle.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Shared RTM header. Emulate TSX intrinsics for compilers and assemblers
- that do not support the intrinsics and instructions yet. */
-#ifndef _HLE_H
-#define _HLE_H 1
-
-#ifdef __ASSEMBLER__
-
-.macro XBEGIN target
- .byte 0xc7,0xf8
- .long \target-1f
-1:
-.endm
-
-.macro XEND
- .byte 0x0f,0x01,0xd5
-.endm
-
-.macro XABORT code
- .byte 0xc6,0xf8,\code
-.endm
-
-.macro XTEST
- .byte 0x0f,0x01,0xd6
-.endm
-
-#endif
-
-/* Official RTM intrinsics interface matching gcc/icc, but works
- on older gcc compatible compilers and binutils.
- We should somehow detect if the compiler supports it, because
- it may be able to generate slightly better code. */
-
-#define _XBEGIN_STARTED (~0u)
-#define _XABORT_EXPLICIT (1 << 0)
-#define _XABORT_RETRY (1 << 1)
-#define _XABORT_CONFLICT (1 << 2)
-#define _XABORT_CAPACITY (1 << 3)
-#define _XABORT_DEBUG (1 << 4)
-#define _XABORT_NESTED (1 << 5)
-#define _XABORT_CODE(x) (((x) >> 24) & 0xff)
-
-#define _ABORT_LOCK_BUSY 0xff
-#define _ABORT_LOCK_IS_LOCKED 0xfe
-#define _ABORT_NESTED_TRYLOCK 0xfd
-
-#ifndef __ASSEMBLER__
-
-#define __force_inline __attribute__((__always_inline__)) inline
-
-static __force_inline int _xbegin(void)
-{
- int ret = _XBEGIN_STARTED;
- asm volatile (".byte 0xc7,0xf8 ; .long 0" : "+a" (ret) :: "memory");
- return ret;
-}
-
-static __force_inline void _xend(void)
-{
- asm volatile (".byte 0x0f,0x01,0xd5" ::: "memory");
-}
-
-static __force_inline void _xabort(const unsigned int status)
-{
- asm volatile (".byte 0xc6,0xf8,%P0" :: "i" (status) : "memory");
-}
-
-static __force_inline int _xtest(void)
-{
- unsigned char out;
- asm volatile (".byte 0x0f,0x01,0xd6 ; setnz %0" : "=r" (out) :: "memory");
- return out;
-}
-
-#endif
-#endif
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/init-arch.c b/nptl/sysdeps/unix/sysv/linux/x86/init-arch.c
deleted file mode 100644
index 00a94d83dc..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/init-arch.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/x86_64/multiarch/init-arch.c>
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/init-arch.h b/nptl/sysdeps/unix/sysv/linux/x86/init-arch.h
deleted file mode 100644
index cd2d0befee..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/init-arch.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/x86_64/multiarch/init-arch.h>
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_cond_lock.c b/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_cond_lock.c
deleted file mode 100644
index 34c705235a..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_cond_lock.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright (C) 2013-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-/* The cond lock is not actually elided yet, but we still need to handle
- already elided locks. */
-#include <elision-conf.h>
-
-#include "sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_lock.c b/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_lock.c
deleted file mode 100644
index b8a33c1869..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_lock.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Elided version of pthread_mutex_lock.
- Copyright (C) 2011-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include <elision-conf.h>
-#include "force-elision.h"
-
-#include "nptl/pthread_mutex_lock.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_timedlock.c b/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_timedlock.c
deleted file mode 100644
index d33dd2a112..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_timedlock.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Elided version of pthread_mutex_timedlock.
- Copyright (C) 2011-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include <elision-conf.h>
-#include "force-elision.h"
-
-#include "nptl/pthread_mutex_timedlock.c"
diff --git a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_trylock.c b/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_trylock.c
deleted file mode 100644
index 6534e9693b..0000000000
--- a/nptl/sysdeps/unix/sysv/linux/x86/pthread_mutex_trylock.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Elided version of pthread_mutex_trylock.
- Copyright (C) 2011-2014 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- 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
- <http://www.gnu.org/licenses/>. */
-
-#include <elision-conf.h>
-#include "force-elision.h"
-
-#include "nptl/pthread_mutex_trylock.c"