aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-12-13 11:43:39 -0200
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-12-20 16:55:26 -0200
commit24d1d8ec9e529ed66c49e17366fe5a889d483670 (patch)
treea80a960c7f0b071cff127c37d76814413e3a956d
parented95f6114928f00f5f8fe76ccf2ec9e77872cbad (diff)
downloadglibc-24d1d8ec9e529ed66c49e17366fe5a889d483670.zip
glibc-24d1d8ec9e529ed66c49e17366fe5a889d483670.tar.gz
glibc-24d1d8ec9e529ed66c49e17366fe5a889d483670.tar.bz2
Simplify tilegx sysdeps folder
With tilepro support removal we can now simplify internal tile support by moving the directory structure to avoid the unnecessary directory levels in tile/tilegx both on generic and linux folders. Checked with a build for tilegx-linux-gnu and tilegx-linux-gnu-32 with and without the patch, there is no difference in generated binary with a dissassemble. * stdlib/bug-getcontext.c (do_test): Remove tilepro mention in comment. * sysdeps/tile/preconfigure: Remove tilegx folder. * sysdeps/tile/tilegx/Implies: Move definitions to ... * sysdeps/tile/Implies: ... here. * sysdeps/tile/tilegx/Makefile: Move rules to ... * sysdeps/tile/Makefile: ... here. * sysdeps/tile/tilegx/atomic-machine.h: Move definitions to ... * sysdeps/tile/atomic-machine.h: ... here. Add include guards. * sysdeps/tile/tilegx/bits/wordsize.h: Move to ... * sysdeps/tile/bits/wordsize.h: ... here. * sysdeps/tile/tilegx/*: Move to ... * sysdeps/tile/*: ... here. * sysdeps/tile/tilegx/tilegx32/Implies: Move to ... * sysdeps/tile/tilegx32/Implies: ... here. * sysdeps/tile/tilegx/tilegx64/Implies: Move to ... * sysdeps/tile/tilegx64/Implies: ... here. * sysdeps/unix/sysv/linux/tile/tilegx/Makefile: Move definitions to ... * sysdeps/unix/sysv/linux/tile/Makefile: ... here. * sysdeps/unix/sysv/linux/tile/tilegx/*: Move to ... * sysdeps/unix/sysv/linux/tile/*: ... here. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/*: Move to ... * sysdeps/unix/sysv/linux/tile/tilegx32/*: ... here. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/*: Move to ... * sysdeps/unix/sysv/linux/tile/tilegx64/*: ... here.
-rw-r--r--ChangeLog27
-rw-r--r--stdlib/bug-getcontext.c2
-rw-r--r--sysdeps/tile/Implies1
-rw-r--r--sysdeps/tile/Makefile36
-rw-r--r--sysdeps/tile/atomic-machine.h51
-rw-r--r--sysdeps/tile/bits/wordsize.h (renamed from sysdeps/tile/tilegx/bits/wordsize.h)0
-rw-r--r--sysdeps/tile/memchr.c (renamed from sysdeps/tile/tilegx/memchr.c)0
-rw-r--r--sysdeps/tile/memcpy.c (renamed from sysdeps/tile/tilegx/memcpy.c)0
-rw-r--r--sysdeps/tile/memset.c (renamed from sysdeps/tile/tilegx/memset.c)0
-rw-r--r--sysdeps/tile/memusage.h (renamed from sysdeps/tile/tilegx/memusage.h)0
-rw-r--r--sysdeps/tile/preconfigure4
-rw-r--r--sysdeps/tile/rawmemchr.c (renamed from sysdeps/tile/tilegx/rawmemchr.c)0
-rw-r--r--sysdeps/tile/strcasestr.c (renamed from sysdeps/tile/tilegx/strcasestr.c)0
-rw-r--r--sysdeps/tile/strchr.c (renamed from sysdeps/tile/tilegx/strchr.c)0
-rw-r--r--sysdeps/tile/strchrnul.c (renamed from sysdeps/tile/tilegx/strchrnul.c)0
-rw-r--r--sysdeps/tile/string-endian.h (renamed from sysdeps/tile/tilegx/string-endian.h)0
-rw-r--r--sysdeps/tile/strlen.c (renamed from sysdeps/tile/tilegx/strlen.c)0
-rw-r--r--sysdeps/tile/strnlen.c (renamed from sysdeps/tile/tilegx/strnlen.c)0
-rw-r--r--sysdeps/tile/strrchr.c (renamed from sysdeps/tile/tilegx/strrchr.c)0
-rw-r--r--sysdeps/tile/strstr.c (renamed from sysdeps/tile/tilegx/strstr.c)0
-rw-r--r--sysdeps/tile/tilegx/Implies1
-rw-r--r--sysdeps/tile/tilegx/Makefile35
-rw-r--r--sysdeps/tile/tilegx/atomic-machine.h61
-rw-r--r--sysdeps/tile/tilegx32/Implies (renamed from sysdeps/tile/tilegx/tilegx32/Implies)1
-rw-r--r--sysdeps/tile/tilegx64/Implies (renamed from sysdeps/tile/tilegx/tilegx64/Implies)1
-rw-r--r--sysdeps/unix/sysv/linux/tile/Makefile5
-rw-r--r--sysdeps/unix/sysv/linux/tile/configure (renamed from sysdeps/unix/sysv/linux/tile/tilegx/configure)2
-rw-r--r--sysdeps/unix/sysv/linux/tile/configure.ac (renamed from sysdeps/unix/sysv/linux/tile/tilegx/configure.ac)2
-rw-r--r--sysdeps/unix/sysv/linux/tile/ioctl.S (renamed from sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/ldconfig.h (renamed from sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/ldd-rewrite.sed (renamed from sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/register-dump.h (renamed from sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/sched_getcpu.c (renamed from sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx/Makefile4
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/Implies (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies)1
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/Makefile (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/c++-types.data (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/c++-types.data)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/jmp_buf-macros.h (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/jmp_buf-macros.h)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/ld.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/ld.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libBrokenLocale.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libBrokenLocale.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libanl.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libanl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libc.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libcrypt.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libcrypt.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libdl.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libdl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libm.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libnsl.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libnsl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libpthread.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libpthread.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libresolv.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libresolv.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/librt.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/librt.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libthread_db.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libthread_db.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx32/libutil.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libutil.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/Implies (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies)1
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/Makefile (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/c++-types.data (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/c++-types.data)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/jmp_buf-macros.h (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/jmp_buf-macros.h)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/ld.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/ld.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libBrokenLocale.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libBrokenLocale.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libanl.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libanl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libc.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libcrypt.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libcrypt.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libdl.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libdl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libm.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libnsl.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libnsl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libpthread.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libpthread.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libresolv.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libresolv.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/librt.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/librt.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libthread_db.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libthread_db.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilegx64/libutil.abilist (renamed from sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libutil.abilist)0
68 files changed, 114 insertions, 121 deletions
diff --git a/ChangeLog b/ChangeLog
index 43dfbf2..4887697 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,32 @@
2017-12-20 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+ * stdlib/bug-getcontext.c (do_test): Remove tilepro mention in
+ comment.
+ * sysdeps/tile/preconfigure: Remove tilegx folder.
+ * sysdeps/tile/tilegx/Implies: Move definitions to ...
+ * sysdeps/tile/Implies: ... here.
+ * sysdeps/tile/tilegx/Makefile: Move rules to ...
+ * sysdeps/tile/Makefile: ... here.
+ * sysdeps/tile/tilegx/atomic-machine.h: Move definitions to ...
+ * sysdeps/tile/atomic-machine.h: ... here. Add include guards.
+ * sysdeps/tile/tilegx/bits/wordsize.h: Move to ...
+ * sysdeps/tile/bits/wordsize.h: ... here.
+ * sysdeps/tile/tilegx/*: Move to ...
+ * sysdeps/tile/*: ... here.
+ * sysdeps/tile/tilegx/tilegx32/Implies: Move to ...
+ * sysdeps/tile/tilegx32/Implies: ... here.
+ * sysdeps/tile/tilegx/tilegx64/Implies: Move to ...
+ * sysdeps/tile/tilegx64/Implies: ... here.
+ * sysdeps/unix/sysv/linux/tile/tilegx/Makefile: Move definitions
+ to ...
+ * sysdeps/unix/sysv/linux/tile/Makefile: ... here.
+ * sysdeps/unix/sysv/linux/tile/tilegx/*: Move to ...
+ * sysdeps/unix/sysv/linux/tile/*: ... here.
+ * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/*: Move to ...
+ * sysdeps/unix/sysv/linux/tile/tilegx32/*: ... here.
+ * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/*: Move to ...
+ * sysdeps/unix/sysv/linux/tile/tilegx64/*: ... here.
+
* README: Remove tilepro-*-linux-gnu from supported architecture.
* scripts/build-many-glibcs.py: Likewise.
* sysdeps/tile/__tls_get_addr.S (__tls_get_addr): Likewise.
diff --git a/stdlib/bug-getcontext.c b/stdlib/bug-getcontext.c
index 163400a..55c681c 100644
--- a/stdlib/bug-getcontext.c
+++ b/stdlib/bug-getcontext.c
@@ -50,7 +50,7 @@ do_test (void)
printf ("\nDone with getcontext()!\n");
fflush (NULL);
- /* On nios2 and tilepro, GCC 5 warns that except_mask may be used
+ /* On nios2 GCC 5 warns that except_mask may be used
uninitialized. Because it is always initialized and nothing in
this test ever calls setcontext (a setcontext call could result
in local variables being clobbered on the second return from
diff --git a/sysdeps/tile/Implies b/sysdeps/tile/Implies
index 1cbc053..cb17441 100644
--- a/sysdeps/tile/Implies
+++ b/sysdeps/tile/Implies
@@ -1,3 +1,4 @@
ieee754/soft-fp
+ieee754/dbl-64/wordsize-64
ieee754/dbl-64
ieee754/flt-32
diff --git a/sysdeps/tile/Makefile b/sysdeps/tile/Makefile
index 3cd4d1e..dcb8777 100644
--- a/sysdeps/tile/Makefile
+++ b/sysdeps/tile/Makefile
@@ -1,3 +1,39 @@
+include $(common-objpfx)cflags-mcmodel-large.mk
+
+# Check for gcc to support the command-line switch, and for
+# binutils to support the hwN_plt() assembly operators and relocations.
+$(common-objpfx)cflags-mcmodel-large.mk: $(common-objpfx)config.make
+ mcmodel=no; \
+ (echo 'int main() { return getuid(); }' | \
+ $(CC) -o /dev/null -xc - -mcmodel=large -fpic) && mcmodel=yes; \
+ echo "cflags-mcmodel-large = $$mcmodel" > $@
+
+ifeq (yes,$(cflags-mcmodel-large))
+
+ifeq ($(subdir),csu)
+# elf-init.c is in libc_nonshared.o (the end of the shared object) but
+# must reach the _init symbol at the very start of the shared object.
+CFLAGS-elf-init.c += -mcmodel=large
+
+# __gmon_start__ is at the very start of the shared object when linked
+# with profiling, but calls to libc.so via the PLT at the very end.
+CFLAGS-gmon-start.c += -mcmodel=large
+endif
+
+else
+
+# Don't try to compile assembly code with hwN_plt() directives if the
+# toolchain doesn't support -mcmodel=large.
+ifeq ($(subdir),csu)
+CPPFLAGS-start.S += -DNO_PLT_PCREL
+CPPFLAGS-crti.S += -DNO_PLT_PCREL
+endif
+ifeq ($(subdir),nptl)
+CPPFLAGS-pt-crti.S += -DNO_PLT_PCREL
+endif
+
+endif
+
# We don't support long doubles as a distinct type. We don't need to set
# this variable; it's here mostly for documentational purposes.
diff --git a/sysdeps/tile/atomic-machine.h b/sysdeps/tile/atomic-machine.h
index 32277c9..58ce76c 100644
--- a/sysdeps/tile/atomic-machine.h
+++ b/sysdeps/tile/atomic-machine.h
@@ -16,20 +16,12 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
-/* The sub-architecture headers provide definitions for these macros
- that work for "int" and "long" size values only:
-
- atomic_compare_and_exchange_val_acq()
- atomic_exchange_acq()
- atomic_exchange_and_add()
- atomic_and_val()
- atomic_or_val()
- atomic_decrement_if_positive() [tilegx only]
-
- Here we provide generic definitions true for all Tilera chips. */
+#ifndef _ATOMIC_MACHINE_H
+#define _ATOMIC_MACHINE_H 1
#include <stdint.h>
#include <features.h>
+#include <arch/spr_def.h>
typedef int32_t atomic32_t;
typedef uint32_t uatomic32_t;
@@ -46,6 +38,41 @@ typedef uintptr_t uatomicptr_t;
typedef intmax_t atomic_max_t;
typedef uintmax_t uatomic_max_t;
+#ifdef _LP64
+# define __HAVE_64B_ATOMICS 1
+#else
+/* tilegx32 does have 64-bit atomics, but assumptions in the semaphore
+ code mean that unaligned 64-bit atomics will be used if this symbol
+ is true, and unaligned atomics are not supported on tile. */
+# define __HAVE_64B_ATOMICS 0
+#endif
+
+#define USE_ATOMIC_COMPILER_BUILTINS 0
+#define ATOMIC_EXCHANGE_USES_CAS 0
+
+/* Pick appropriate 8- or 4-byte instruction. */
+#define __atomic_update(mem, v, op) \
+ ((__typeof (*(mem))) (__typeof (*(mem) - *(mem))) \
+ ((sizeof (*(mem)) == 8) ? \
+ __insn_##op ((void *) (mem), (int64_t) (__typeof((v) - (v))) (v)) : \
+ (sizeof (*(mem)) == 4) ? \
+ __insn_##op##4 ((void *) (mem), (int32_t) (__typeof ((v) - (v))) (v)) : \
+ __atomic_error_bad_argument_size()))
+
+#define atomic_compare_and_exchange_val_acq(mem, n, o) \
+ ({ __insn_mtspr (SPR_CMPEXCH_VALUE, (int64_t) (__typeof ((o) - (o))) (o)); \
+ __atomic_update (mem, n, cmpexch); })
+#define atomic_exchange_acq(mem, newvalue) \
+ __atomic_update (mem, newvalue, exch)
+#define atomic_exchange_and_add(mem, value) \
+ __atomic_update (mem, value, fetchadd)
+#define atomic_and_val(mem, mask) \
+ __atomic_update (mem, mask, fetchand)
+#define atomic_or_val(mem, mask) \
+ __atomic_update (mem, mask, fetchor)
+#define atomic_decrement_if_positive(mem) \
+ __atomic_update (mem, -1, fetchaddgez)
+
/* Barrier macro. */
#define atomic_full_barrier() __sync_synchronize()
@@ -79,3 +106,5 @@ typedef uintmax_t uatomic_max_t;
*/
extern int __atomic_error_bad_argument_size(void)
__attribute__ ((warning ("bad sizeof atomic argument")));
+
+#endif /* _ATOMIC_MACHINE_H */
diff --git a/sysdeps/tile/tilegx/bits/wordsize.h b/sysdeps/tile/bits/wordsize.h
index 9dc4da5..9dc4da5 100644
--- a/sysdeps/tile/tilegx/bits/wordsize.h
+++ b/sysdeps/tile/bits/wordsize.h
diff --git a/sysdeps/tile/tilegx/memchr.c b/sysdeps/tile/memchr.c
index 38c0da6..38c0da6 100644
--- a/sysdeps/tile/tilegx/memchr.c
+++ b/sysdeps/tile/memchr.c
diff --git a/sysdeps/tile/tilegx/memcpy.c b/sysdeps/tile/memcpy.c
index c1a2a29..c1a2a29 100644
--- a/sysdeps/tile/tilegx/memcpy.c
+++ b/sysdeps/tile/memcpy.c
diff --git a/sysdeps/tile/tilegx/memset.c b/sysdeps/tile/memset.c
index c6804a9..c6804a9 100644
--- a/sysdeps/tile/tilegx/memset.c
+++ b/sysdeps/tile/memset.c
diff --git a/sysdeps/tile/tilegx/memusage.h b/sysdeps/tile/memusage.h
index c91371a..c91371a 100644
--- a/sysdeps/tile/tilegx/memusage.h
+++ b/sysdeps/tile/memusage.h
diff --git a/sysdeps/tile/preconfigure b/sysdeps/tile/preconfigure
index d2165c3..21382df 100644
--- a/sysdeps/tile/preconfigure
+++ b/sysdeps/tile/preconfigure
@@ -3,8 +3,8 @@ case "$machine" in
tilegx*)
base_machine=tile
if $CC $CFLAGS $CPPFLAGS -E -dM -xc /dev/null | grep -q __LP64__; then
- machine=tile/tilegx/tilegx64
+ machine=tile/tilegx64
else
- machine=tile/tilegx/tilegx32
+ machine=tile/tilegx32
fi ;;
esac
diff --git a/sysdeps/tile/tilegx/rawmemchr.c b/sysdeps/tile/rawmemchr.c
index 3f5044c..3f5044c 100644
--- a/sysdeps/tile/tilegx/rawmemchr.c
+++ b/sysdeps/tile/rawmemchr.c
diff --git a/sysdeps/tile/tilegx/strcasestr.c b/sysdeps/tile/strcasestr.c
index ecb3e62..ecb3e62 100644
--- a/sysdeps/tile/tilegx/strcasestr.c
+++ b/sysdeps/tile/strcasestr.c
diff --git a/sysdeps/tile/tilegx/strchr.c b/sysdeps/tile/strchr.c
index 1a5eb5c..1a5eb5c 100644
--- a/sysdeps/tile/tilegx/strchr.c
+++ b/sysdeps/tile/strchr.c
diff --git a/sysdeps/tile/tilegx/strchrnul.c b/sysdeps/tile/strchrnul.c
index e3024dd..e3024dd 100644
--- a/sysdeps/tile/tilegx/strchrnul.c
+++ b/sysdeps/tile/strchrnul.c
diff --git a/sysdeps/tile/tilegx/string-endian.h b/sysdeps/tile/string-endian.h
index 09b5781..09b5781 100644
--- a/sysdeps/tile/tilegx/string-endian.h
+++ b/sysdeps/tile/string-endian.h
diff --git a/sysdeps/tile/tilegx/strlen.c b/sysdeps/tile/strlen.c
index cebdf22..cebdf22 100644
--- a/sysdeps/tile/tilegx/strlen.c
+++ b/sysdeps/tile/strlen.c
diff --git a/sysdeps/tile/tilegx/strnlen.c b/sysdeps/tile/strnlen.c
index c3560d2..c3560d2 100644
--- a/sysdeps/tile/tilegx/strnlen.c
+++ b/sysdeps/tile/strnlen.c
diff --git a/sysdeps/tile/tilegx/strrchr.c b/sysdeps/tile/strrchr.c
index 51a08b7..51a08b7 100644
--- a/sysdeps/tile/tilegx/strrchr.c
+++ b/sysdeps/tile/strrchr.c
diff --git a/sysdeps/tile/tilegx/strstr.c b/sysdeps/tile/strstr.c
index f82936a..f82936a 100644
--- a/sysdeps/tile/tilegx/strstr.c
+++ b/sysdeps/tile/strstr.c
diff --git a/sysdeps/tile/tilegx/Implies b/sysdeps/tile/tilegx/Implies
deleted file mode 100644
index ade71c1..0000000
--- a/sysdeps/tile/tilegx/Implies
+++ /dev/null
@@ -1 +0,0 @@
-ieee754/dbl-64/wordsize-64
diff --git a/sysdeps/tile/tilegx/Makefile b/sysdeps/tile/tilegx/Makefile
deleted file mode 100644
index 4281dd9..0000000
--- a/sysdeps/tile/tilegx/Makefile
+++ /dev/null
@@ -1,35 +0,0 @@
-include $(common-objpfx)cflags-mcmodel-large.mk
-
-# Check for gcc to support the command-line switch, and for
-# binutils to support the hwN_plt() assembly operators and relocations.
-$(common-objpfx)cflags-mcmodel-large.mk: $(common-objpfx)config.make
- mcmodel=no; \
- (echo 'int main() { return getuid(); }' | \
- $(CC) -o /dev/null -xc - -mcmodel=large -fpic) && mcmodel=yes; \
- echo "cflags-mcmodel-large = $$mcmodel" > $@
-
-ifeq (yes,$(cflags-mcmodel-large))
-
-ifeq ($(subdir),csu)
-# elf-init.c is in libc_nonshared.o (the end of the shared object) but
-# must reach the _init symbol at the very start of the shared object.
-CFLAGS-elf-init.c += -mcmodel=large
-
-# __gmon_start__ is at the very start of the shared object when linked
-# with profiling, but calls to libc.so via the PLT at the very end.
-CFLAGS-gmon-start.c += -mcmodel=large
-endif
-
-else
-
-# Don't try to compile assembly code with hwN_plt() directives if the
-# toolchain doesn't support -mcmodel=large.
-ifeq ($(subdir),csu)
-CPPFLAGS-start.S += -DNO_PLT_PCREL
-CPPFLAGS-crti.S += -DNO_PLT_PCREL
-endif
-ifeq ($(subdir),nptl)
-CPPFLAGS-pt-crti.S += -DNO_PLT_PCREL
-endif
-
-endif
diff --git a/sysdeps/tile/tilegx/atomic-machine.h b/sysdeps/tile/tilegx/atomic-machine.h
deleted file mode 100644
index e77f670..0000000
--- a/sysdeps/tile/tilegx/atomic-machine.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Copyright (C) 2011-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011.
-
- 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 _ATOMIC_MACHINE_H
-#define _ATOMIC_MACHINE_H 1
-
-#include <arch/spr_def.h>
-
-#ifdef _LP64
-# define __HAVE_64B_ATOMICS 1
-#else
-/* tilegx32 does have 64-bit atomics, but assumptions in the semaphore
- code mean that unaligned 64-bit atomics will be used if this symbol
- is true, and unaligned atomics are not supported on tile. */
-# define __HAVE_64B_ATOMICS 0
-#endif
-
-#define USE_ATOMIC_COMPILER_BUILTINS 0
-#define ATOMIC_EXCHANGE_USES_CAS 0
-
-/* Pick appropriate 8- or 4-byte instruction. */
-#define __atomic_update(mem, v, op) \
- ((__typeof (*(mem))) (__typeof (*(mem) - *(mem))) \
- ((sizeof (*(mem)) == 8) ? \
- __insn_##op ((void *) (mem), (int64_t) (__typeof((v) - (v))) (v)) : \
- (sizeof (*(mem)) == 4) ? \
- __insn_##op##4 ((void *) (mem), (int32_t) (__typeof ((v) - (v))) (v)) : \
- __atomic_error_bad_argument_size()))
-
-#define atomic_compare_and_exchange_val_acq(mem, n, o) \
- ({ __insn_mtspr (SPR_CMPEXCH_VALUE, (int64_t) (__typeof ((o) - (o))) (o)); \
- __atomic_update (mem, n, cmpexch); })
-#define atomic_exchange_acq(mem, newvalue) \
- __atomic_update (mem, newvalue, exch)
-#define atomic_exchange_and_add(mem, value) \
- __atomic_update (mem, value, fetchadd)
-#define atomic_and_val(mem, mask) \
- __atomic_update (mem, mask, fetchand)
-#define atomic_or_val(mem, mask) \
- __atomic_update (mem, mask, fetchor)
-#define atomic_decrement_if_positive(mem) \
- __atomic_update (mem, -1, fetchaddgez)
-
-#include <sysdeps/tile/atomic-machine.h>
-
-#endif /* atomic-machine.h */
diff --git a/sysdeps/tile/tilegx/tilegx32/Implies b/sysdeps/tile/tilegx32/Implies
index 993b7f4..709e1dc 100644
--- a/sysdeps/tile/tilegx/tilegx32/Implies
+++ b/sysdeps/tile/tilegx32/Implies
@@ -1,3 +1,2 @@
-tile/tilegx
tile
wordsize-32
diff --git a/sysdeps/tile/tilegx/tilegx64/Implies b/sysdeps/tile/tilegx64/Implies
index eb0686e..1e9db8e 100644
--- a/sysdeps/tile/tilegx/tilegx64/Implies
+++ b/sysdeps/tile/tilegx64/Implies
@@ -1,3 +1,2 @@
-tile/tilegx
tile
wordsize-64
diff --git a/sysdeps/unix/sysv/linux/tile/Makefile b/sysdeps/unix/sysv/linux/tile/Makefile
index 04605a6..fddaf18 100644
--- a/sysdeps/unix/sysv/linux/tile/Makefile
+++ b/sysdeps/unix/sysv/linux/tile/Makefile
@@ -1,3 +1,8 @@
+# Provide biarch definitions.
+abi-variants := 64 32
+abi-64-condition := __WORDSIZE == 64
+abi-32-condition := __WORDSIZE == 32
+
ifeq ($(subdir),misc)
# <sys/reg.h> provides something like x86 compatibility.
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/configure b/sysdeps/unix/sysv/linux/tile/configure
index 36e42e0..63f9686 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/configure
+++ b/sysdeps/unix/sysv/linux/tile/configure
@@ -4,7 +4,7 @@
ldd_rewrite_script=$dir/ldd-rewrite.sed
case $machine in
-tile/tilegx/tilegx32)
+tile/tilegx32)
test -n "$libc_cv_slibdir" ||
case "$prefix" in
/usr | /usr/)
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/configure.ac b/sysdeps/unix/sysv/linux/tile/configure.ac
index baca1f6..45ec42c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/configure.ac
+++ b/sysdeps/unix/sysv/linux/tile/configure.ac
@@ -4,7 +4,7 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
ldd_rewrite_script=$dir/ldd-rewrite.sed
case $machine in
-tile/tilegx/tilegx32)
+tile/tilegx32)
LIBC_SLIBDIR_RTLDDIR([lib32], [lib32])
;;
esac
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S b/sysdeps/unix/sysv/linux/tile/ioctl.S
index 43f9563..43f9563 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/ioctl.S
+++ b/sysdeps/unix/sysv/linux/tile/ioctl.S
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h b/sysdeps/unix/sysv/linux/tile/ldconfig.h
index 6185e30..6185e30 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/ldconfig.h
+++ b/sysdeps/unix/sysv/linux/tile/ldconfig.h
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed b/sysdeps/unix/sysv/linux/tile/ldd-rewrite.sed
index 8b0bb69..8b0bb69 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/ldd-rewrite.sed
+++ b/sysdeps/unix/sysv/linux/tile/ldd-rewrite.sed
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h b/sysdeps/unix/sysv/linux/tile/register-dump.h
index 491413e..491413e 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/register-dump.h
+++ b/sysdeps/unix/sysv/linux/tile/register-dump.h
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c b/sysdeps/unix/sysv/linux/tile/sched_getcpu.c
index 807913c..807913c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/sched_getcpu.c
+++ b/sysdeps/unix/sysv/linux/tile/sched_getcpu.c
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/Makefile b/sysdeps/unix/sysv/linux/tile/tilegx/Makefile
deleted file mode 100644
index 62a5be6..0000000
--- a/sysdeps/unix/sysv/linux/tile/tilegx/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Provide biarch definitions.
-abi-variants := 64 32
-abi-64-condition := __WORDSIZE == 64
-abi-32-condition := __WORDSIZE == 32
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies b/sysdeps/unix/sysv/linux/tile/tilegx32/Implies
index 9090d3f..0023bb7 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Implies
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/Implies
@@ -1,4 +1,3 @@
-unix/sysv/linux/tile/tilegx
unix/sysv/linux/tile
unix/sysv/linux/generic/wordsize-32
unix/sysv/linux/generic
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile b/sysdeps/unix/sysv/linux/tile/tilegx32/Makefile
index 1e9d29b..1e9d29b 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/Makefile
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/Makefile
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/c++-types.data b/sysdeps/unix/sysv/linux/tile/tilegx32/c++-types.data
index 1a7bcb3..1a7bcb3 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/c++-types.data
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/c++-types.data
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/tile/tilegx32/jmp_buf-macros.h
index eb64802..eb64802 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/jmp_buf-macros.h
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/jmp_buf-macros.h
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/ld.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/ld.abilist
index f166310..f166310 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/ld.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/ld.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libBrokenLocale.abilist
index 0d64827..0d64827 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libBrokenLocale.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libBrokenLocale.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libanl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libanl.abilist
index a3b1cc0..a3b1cc0 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libanl.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libanl.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libc.abilist
index dcbfbc0..dcbfbc0 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libc.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libcrypt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libcrypt.abilist
index d564380..d564380 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libcrypt.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libcrypt.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libdl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libdl.abilist
index cabc30c..cabc30c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libdl.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libdl.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libm.abilist
index 6b375f5..6b375f5 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libm.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libnsl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libnsl.abilist
index 0277e5c..0277e5c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libnsl.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libnsl.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libpthread.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libpthread.abilist
index d16158f..d16158f 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libpthread.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libresolv.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libresolv.abilist
index aa2fefa..aa2fefa 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libresolv.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libresolv.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/librt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/librt.abilist
index 14f5c82..14f5c82 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/librt.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libthread_db.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libthread_db.abilist
index 4aade0b..4aade0b 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libthread_db.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libthread_db.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libutil.abilist b/sysdeps/unix/sysv/linux/tile/tilegx32/libutil.abilist
index e4d4326..e4d4326 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libutil.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx32/libutil.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies b/sysdeps/unix/sysv/linux/tile/tilegx64/Implies
index e4e0800..f814319 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Implies
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/Implies
@@ -1,4 +1,3 @@
-unix/sysv/linux/tile/tilegx
unix/sysv/linux/tile
unix/sysv/linux/generic
unix/sysv/linux/wordsize-64
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile b/sysdeps/unix/sysv/linux/tile/tilegx64/Makefile
index c8991d3..c8991d3 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Makefile
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/Makefile
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/c++-types.data b/sysdeps/unix/sysv/linux/tile/tilegx64/c++-types.data
index ac925cc..ac925cc 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/c++-types.data
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/c++-types.data
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/tile/tilegx64/jmp_buf-macros.h
index 685f9b8..685f9b8 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/jmp_buf-macros.h
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/jmp_buf-macros.h
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/ld.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/ld.abilist
index ab74e7e..ab74e7e 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/ld.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/ld.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libBrokenLocale.abilist
index 0d64827..0d64827 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libBrokenLocale.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libBrokenLocale.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libanl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libanl.abilist
index a3b1cc0..a3b1cc0 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libanl.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libanl.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libc.abilist
index 53dc99c..53dc99c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libc.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libcrypt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libcrypt.abilist
index d564380..d564380 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libcrypt.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libcrypt.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libdl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libdl.abilist
index cabc30c..cabc30c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libdl.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libdl.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libm.abilist
index 6b375f5..6b375f5 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libm.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libnsl.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libnsl.abilist
index 0277e5c..0277e5c 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libnsl.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libnsl.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libpthread.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libpthread.abilist
index d16158f..d16158f 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libpthread.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libresolv.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libresolv.abilist
index bd81642..bd81642 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libresolv.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libresolv.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/librt.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/librt.abilist
index 14f5c82..14f5c82 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/librt.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libthread_db.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libthread_db.abilist
index 4aade0b..4aade0b 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libthread_db.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libthread_db.abilist
diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libutil.abilist b/sysdeps/unix/sysv/linux/tile/tilegx64/libutil.abilist
index e4d4326..e4d4326 100644
--- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libutil.abilist
+++ b/sysdeps/unix/sysv/linux/tile/tilegx64/libutil.abilist