diff options
| author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2017-12-12 19:15:45 -0200 |
|---|---|---|
| committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2017-12-20 16:55:24 -0200 |
| commit | ed95f6114928f00f5f8fe76ccf2ec9e77872cbad (patch) | |
| tree | 0161d2bc2599666e4dab69cfb07a75a445760f79 | |
| parent | 4735850f7a4f07f05ee9ff405238332f4bb3ab50 (diff) | |
| download | glibc-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
53 files changed, 98 insertions, 5106 deletions
@@ -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 @@ -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' @@ -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 |
