aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-12-12 19:15:45 -0200
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-12-20 16:55:24 -0200
commited95f6114928f00f5f8fe76ccf2ec9e77872cbad (patch)
tree0161d2bc2599666e4dab69cfb07a75a445760f79
parent4735850f7a4f07f05ee9ff405238332f4bb3ab50 (diff)
downloadglibc-ed95f6114928f00f5f8fe76ccf2ec9e77872cbad.tar.xz
glibc-ed95f6114928f00f5f8fe76ccf2ec9e77872cbad.zip
Remove tilepro-*-linux-gnu support
As from previous discussions [1] this patch removes tileprox-*-linux-gnu support from GLIBC. This patch is a straigthfoward one, which just remove tilepro specific implementation and configurations (no sysdep simplfication or reorganization is done). * README: Remove tilepro-*-linux-gnu from supported architecture. * scripts/build-many-glibcs.py: Likewise. * sysdeps/tile/__tls_get_addr.S (__tls_get_addr): Likewise. * sysdeps/tile/crti.S (PREINIT_FUNCTION): Likewise. * sysdeps/tile/dl-machine.h (ELF_MACHINE_NAME, elf_machine_matches_host, elf_machine_dynamic, elf_machine_load_address, elf_machine_runtime_setup, reloc_howto howto, elf_machine_rela): Likewise * sysdeps/tile/dl-start.S (_start): Likewise. * sysdeps/tile/memcmp.c (DBLALIGN, REVBYTES): Likewise. * sysdeps/tile/memcopy.h (MEMCPY_OK_FOR_FWD_MEMMOVE, MEMCPY_OK_FOR_FWD_MEMMOVE, op_t): Likewise. * sysdeps/tile/nptl/pthread_spin_lock.c (TNS, CMPTNS): Likewise. * sysdeps/tile/nptl/pthread_spin_trylock.c (TNS): Likewise. * sysdeps/tile/nptl/pthread_spin_unlock.c (pthread_spin_unlock): Likewise. * sysdeps/tile/nptl/tls.h (DB_THREAD_SELF): Likewise. * sysdeps/tile/preconfigure: Likewise. * sysdeps/tile/stackguard-macros.h (STACK_CHK_GUARD, POINTER_CHK_GUARD): Likewise. * sysdeps/tile/stackinfo.h (__stackinfo_sub): Likewise. * sysdeps/tile/start.S (_start): Likewise. * sysdeps/tile/tls-macros.h (TLS_GD_OFFSET, TLS_IE_OFFSET, _TLS_LE): Likewise. * sysdeps/tile/sysdep.h (REGSIZE): Likewise. (LD, LD4U, ST, ST4, BNEZ, BEQZ, BEQZT, BGTZ, CMPEQI, CMPEQ, CMOVEQZ, CMOVNEZ): Remove. * sysdeps/unix/sysv/linux/tile/bits/environments.h (__ILP32_OFF32_CFLAGS, __ILP32_OFFBIG_CFLAGS, __ILP32_OFF32_LDFLAGS, __ILP32_OFFBIG_LDFLAGS, __LP64_OFF64_CFLAGS, __LP64_OFF64_LDFLAGS): Likewise. * sysdeps/tile/wordcopy.c (DBLALIGN): Likewise. * sysdeps/tile/tilepro/Implies: Remove file. * sysdeps/tile/tilepro/atomic-machine.h: Likewise. * sysdeps/tile/tilepro/bits/wordsize.h: Likewise. * sysdeps/tile/tilepro/memchr.c: Likewise. * sysdeps/tile/tilepro/memcpy.S: Likewise. * sysdeps/tile/tilepro/memset.c: Likewise. * sysdeps/tile/tilepro/memusage.h: Likewise. * sysdeps/tile/tilepro/rawmemchr.c: Likewise. * sysdeps/tile/tilepro/strchr.c: Likewise. * sysdeps/tile/tilepro/strchrnul.c: Likewise. * sysdeps/tile/tilepro/strlen.c: Likewise. * sysdeps/tile/tilepro/strrchr.c: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/Implies: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/c++-types.data: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/jmp_buf-macros.h: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/ld.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libBrokenLocale.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libanl.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libcrypt.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libdl.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libnsl.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libpthread.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libresolv.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/librt.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libthread_db.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libutil.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h: Likewise. * sysdeps/unix/sysv/linux/tile/sysconf.c (linux_sysconf): Remove tilepro mention in comment. [1] https://sourceware.org/ml/libc-alpha/2017-12/msg00038.html
-rw-r--r--ChangeLog66
-rw-r--r--NEWS2
-rw-r--r--README1
-rwxr-xr-xscripts/build-many-glibcs.py2
-rw-r--r--sysdeps/tile/__tls_get_addr.S11
-rw-r--r--sysdeps/tile/crti.S13
-rw-r--r--sysdeps/tile/dl-machine.h248
-rw-r--r--sysdeps/tile/dl-start.S5
-rw-r--r--sysdeps/tile/memcmp.c5
-rw-r--r--sysdeps/tile/memcopy.h8
-rw-r--r--sysdeps/tile/nptl/pthread_spin_lock.c10
-rw-r--r--sysdeps/tile/nptl/pthread_spin_trylock.c4
-rw-r--r--sysdeps/tile/nptl/pthread_spin_unlock.c5
-rw-r--r--sysdeps/tile/nptl/tls.h7
-rw-r--r--sysdeps/tile/preconfigure2
-rw-r--r--sysdeps/tile/stackguard-macros.h17
-rw-r--r--sysdeps/tile/stackinfo.h2
-rw-r--r--sysdeps/tile/start.S25
-rw-r--r--sysdeps/tile/sysdep.h29
-rw-r--r--sysdeps/tile/tilepro/Implies2
-rw-r--r--sysdeps/tile/tilepro/atomic-machine.h99
-rw-r--r--sysdeps/tile/tilepro/bits/wordsize.h6
-rw-r--r--sysdeps/tile/tilepro/memchr.c76
-rw-r--r--sysdeps/tile/tilepro/memcpy.S397
-rw-r--r--sysdeps/tile/tilepro/memset.c151
-rw-r--r--sysdeps/tile/tilepro/memusage.h29
-rw-r--r--sysdeps/tile/tilepro/rawmemchr.c45
-rw-r--r--sysdeps/tile/tilepro/strchr.c68
-rw-r--r--sysdeps/tile/tilepro/strchrnul.c65
-rw-r--r--sysdeps/tile/tilepro/strlen.c39
-rw-r--r--sysdeps/tile/tilepro/strrchr.c73
-rw-r--r--sysdeps/tile/tls-macros.h19
-rw-r--r--sysdeps/tile/wordcopy.c4
-rw-r--r--sysdeps/unix/sysv/linux/tile/bits/environments.h4
-rw-r--r--sysdeps/unix/sysv/linux/tile/sysconf.c4
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/Implies3
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/c++-types.data67
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/jmp_buf-macros.h6
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/ld.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h25
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libBrokenLocale.abilist2
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libanl.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist2137
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libcrypt.abilist8
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libdl.abilist10
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist749
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libnsl.abilist122
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libpthread.abilist226
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libresolv.abilist92
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/librt.abilist41
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libthread_db.abilist41
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h111
53 files changed, 98 insertions, 5106 deletions
diff --git a/ChangeLog b/ChangeLog
index 35d1d102f6..43dfbf2a5e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,71 @@
2017-12-20 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+ * README: Remove tilepro-*-linux-gnu from supported architecture.
+ * scripts/build-many-glibcs.py: Likewise.
+ * sysdeps/tile/__tls_get_addr.S (__tls_get_addr): Likewise.
+ * sysdeps/tile/crti.S (PREINIT_FUNCTION): Likewise.
+ * sysdeps/tile/dl-machine.h (ELF_MACHINE_NAME,
+ elf_machine_matches_host, elf_machine_dynamic,
+ elf_machine_load_address, elf_machine_runtime_setup, reloc_howto
+ howto, elf_machine_rela): Likewise.
+ * sysdeps/tile/dl-start.S (_start): Likewise.
+ * sysdeps/tile/memcmp.c (DBLALIGN, REVBYTES): Likewise.
+ * sysdeps/tile/memcopy.h (MEMCPY_OK_FOR_FWD_MEMMOVE,
+ MEMCPY_OK_FOR_FWD_MEMMOVE, op_t): Likewise.
+ * sysdeps/tile/nptl/pthread_spin_lock.c (TNS, CMPTNS): Likewise.
+ * sysdeps/tile/nptl/pthread_spin_trylock.c (TNS): Likewise.
+ * sysdeps/tile/nptl/pthread_spin_unlock.c (pthread_spin_unlock):
+ Likewise.
+ * sysdeps/tile/nptl/tls.h (DB_THREAD_SELF): Likewise.
+ * sysdeps/tile/preconfigure: Likewise.
+ * sysdeps/tile/stackguard-macros.h (STACK_CHK_GUARD,
+ POINTER_CHK_GUARD): Likewise.
+ * sysdeps/tile/stackinfo.h (__stackinfo_sub): Likewise.
+ * sysdeps/tile/start.S (_start): Likewise.
+ * sysdeps/tile/tls-macros.h (TLS_GD_OFFSET, TLS_IE_OFFSET, _TLS_LE):
+ Likewise.
+ * sysdeps/tile/sysdep.h (REGSIZE): Likewise.
+ (LD, LD4U, ST, ST4, BNEZ, BEQZ, BEQZT, BGTZ, CMPEQI, CMPEQ, CMOVEQZ,
+ CMOVNEZ): Remove.
+ * sysdeps/unix/sysv/linux/tile/bits/environments.h
+ (__ILP32_OFF32_CFLAGS, __ILP32_OFFBIG_CFLAGS, __ILP32_OFF32_LDFLAGS,
+ __ILP32_OFFBIG_LDFLAGS, __LP64_OFF64_CFLAGS, __LP64_OFF64_LDFLAGS):
+ Likewise.
+ * sysdeps/tile/wordcopy.c (DBLALIGN): Likewise.
+ * sysdeps/tile/tilepro/Implies: Remove file.
+ * sysdeps/tile/tilepro/atomic-machine.h: Likewise.
+ * sysdeps/tile/tilepro/bits/wordsize.h: Likewise.
+ * sysdeps/tile/tilepro/memchr.c: Likewise.
+ * sysdeps/tile/tilepro/memcpy.S: Likewise.
+ * sysdeps/tile/tilepro/memset.c: Likewise.
+ * sysdeps/tile/tilepro/memusage.h: Likewise.
+ * sysdeps/tile/tilepro/rawmemchr.c: Likewise.
+ * sysdeps/tile/tilepro/strchr.c: Likewise.
+ * sysdeps/tile/tilepro/strchrnul.c: Likewise.
+ * sysdeps/tile/tilepro/strlen.c: Likewise.
+ * sysdeps/tile/tilepro/strrchr.c: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/Implies: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/c++-types.data: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/jmp_buf-macros.h: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/ld.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/ldconfig.h: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libBrokenLocale.abilist:
+ Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libanl.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libcrypt.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libdl.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libnsl.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libpthread.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libresolv.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/librt.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libthread_db.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/libutil.abilist: Likewise.
+ * sysdeps/unix/sysv/linux/tile/tilepro/register-dump.h: Likewise.
+ * sysdeps/unix/sysv/linux/tile/sysconf.c (linux_sysconf): Remove
+ tilepro mention in comment.
+
* nptl/Makefile (libpthread-routines): Add pthread_join_common.
* nptl/pthreadP.h (__pthread_timedjoin_ex): New prototype.
* nptl/pthread_join_common.c: New file: common function used on
diff --git a/NEWS b/NEWS
index a43ff26e83..d60b31575d 100644
--- a/NEWS
+++ b/NEWS
@@ -106,6 +106,8 @@ Deprecated and removed features, and other changes affecting compatibility:
* The libresolv function p_secstodate is no longer supported for new
programs.
+* The tilepro-*-linux-gnu configuration is no longer supported.
+
Changes to build and runtime requirements:
* bison version 2.7 or later is required to generate code in the 'intl'
diff --git a/README b/README
index c3d17d1378..d0e99ea7d5 100644
--- a/README
+++ b/README
@@ -43,7 +43,6 @@ The GNU C Library supports these configurations for using Linux kernels:
sparc*-*-linux-gnu
sparc64*-*-linux-gnu
tilegx-*-linux-gnu
- tilepro-*-linux-gnu
If you are interested in doing a port, please contact the glibc
maintainers; see http://www.gnu.org/software/libc/ for more
diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
index b86d6c1387..b183cd2696 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
@@ -359,8 +359,6 @@ class Context(object):
os_name='linux-gnu',
glibcs=[{},
{'variant': '32', 'ccopts': '-m32'}])
- self.add_config(arch='tilepro',
- os_name='linux-gnu')
self.add_config(arch='x86_64',
os_name='linux-gnu',
gcc_cfg=['--with-multilib-list=m64,m32,mx32'],
diff --git a/sysdeps/tile/__tls_get_addr.S b/sysdeps/tile/__tls_get_addr.S
index 3b2b95522f..2402bd1e9a 100644
--- a/sysdeps/tile/__tls_get_addr.S
+++ b/sysdeps/tile/__tls_get_addr.S
@@ -37,7 +37,6 @@ ENTRY (__tls_get_addr)
ADDI_PTR r27, tp, DTV_OFFSET
}
.Llnk:
-#ifdef __tilegx__
{
LD_PTR r27, r27 /* r27 = THREAD_DTV() */
moveli r26, hw1_last(_rtld_local + TLS_GENERATION_OFFSET - .Llnk)
@@ -47,16 +46,6 @@ ENTRY (__tls_get_addr)
ADD_PTR r25, r25, r26
LD_PTR r26, r0 /* r26 = ti_module */
}
-#else
- {
- LD_PTR r27, r27 /* r27 = THREAD_DTV() */
- addli r25, r25, lo16(_rtld_local + TLS_GENERATION_OFFSET - .Llnk)
- }
- {
- auli r25, r25, ha16(_rtld_local + TLS_GENERATION_OFFSET - .Llnk)
- LD_PTR r26, r0 /* r26 = ti_module */
- }
-#endif
LD_PTR r25, r25 /* r25 = DL(dl_tls_generation) */
{
LD_PTR r28, r27 /* r28 = THREAD_DTV()->counter */
diff --git a/sysdeps/tile/crti.S b/sysdeps/tile/crti.S
index 522373aff5..1d714ab483 100644
--- a/sysdeps/tile/crti.S
+++ b/sysdeps/tile/crti.S
@@ -70,7 +70,6 @@ _init:
#if PREINIT_FUNCTION_WEAK
lnk r2
0:
-# ifdef __tilegx__
moveli r1, hw2_last(_GLOBAL_OFFSET_TABLE_ - 0b)
{
shl16insli r1, r1, hw1(_GLOBAL_OFFSET_TABLE_ - 0b)
@@ -80,22 +79,12 @@ _init:
shl16insli r1, r1, hw0(_GLOBAL_OFFSET_TABLE_ - 0b)
shl16insli r0, r0, hw0_got(PREINIT_FUNCTION)
}
-# else
- {
- moveli r1, lo16(_GLOBAL_OFFSET_TABLE_ - 0b)
- moveli r0, got_lo16(PREINIT_FUNCTION)
- }
- {
- auli r1, r1, ha16(_GLOBAL_OFFSET_TABLE_ - 0b)
- auli r0, r0, got_ha16(PREINIT_FUNCTION)
- }
-# endif
ADD_PTR r0, r0, r1
ADD_PTR r0, r0, r2
LD_PTR r0, r0
BEQZ r0, .Lno_weak_fn
jalr r0
-#elif defined(__tilegx__) && !defined(NO_PLT_PCREL)
+#elif !defined(NO_PLT_PCREL)
/* Since we are calling from the start of the object to the PLT,
call by loading the full address into a register. */
lnk r2
diff --git a/sysdeps/tile/dl-machine.h b/sysdeps/tile/dl-machine.h
index f7af7c3848..d745a9c07f 100644
--- a/sysdeps/tile/dl-machine.h
+++ b/sysdeps/tile/dl-machine.h
@@ -20,11 +20,7 @@
#ifndef dl_machine_h
#define dl_machine_h
-#ifdef __tilegx__
#define ELF_MACHINE_NAME "tilegx"
-#else
-#define ELF_MACHINE_NAME "tilepro"
-#endif
#include <sys/param.h>
#include <string.h>
@@ -37,18 +33,12 @@
static inline int
elf_machine_matches_host (const ElfW(Ehdr) *ehdr)
{
-#if defined __tilegx__
if (ehdr->e_machine != EM_TILEGX)
return 0;
-# if __WORDSIZE == 32
+#if __WORDSIZE == 32