From patchwork Fri Apr 27 15:36:34 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 905828 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=sourceware.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=libc-alpha-return-91883-incoming=patchwork.ozlabs.org@sourceware.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.b="N8YZaStd"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40XdMj4Z9yz9s0v for ; Sat, 28 Apr 2018 01:36:49 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:mime-version :content-type; q=dns; s=default; b=wDGCI6DpQC4k9/96R5amfQZtv/7jo RpEVyMFsqOV+d2oargyugPdnX26HP09ztV2LQN8bgzpuzU5/AuaGAG9gGtfTaMXg vEjbhTPRidOIIos00RpBdGsgLKQCDxrcpX/8m6hYhQe4IjegOZMGlYJapp7EDTNr DMVnSiuPGKTnSI= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:mime-version :content-type; s=default; bh=w4JfQqCnYkXK+37n9eVIGJEsMNw=; b=N8Y ZaStdTbjfdkf/i+llWMiGbOe23goIqnkV2miy1i7rRbBgRQByjD3V/DA1JVgPNsv jcZnL/WryIE4hBuQZsGXK+/g/oTwWa0SuuQtTcyuQndrkmeOQh+nZnl1JQMWIzng Jn2rbCAOHF8R1DlDoTyWxYp++rrdAwG58naACcko= Received: (qmail 123290 invoked by alias); 27 Apr 2018 15:36:43 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 123188 invoked by uid 89); 27 Apr 2018 15:36:42 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.5 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_PASS, URIBL_RED autolearn=ham version=3.3.2 spammy=chris, sk:with-mu, sk:withmu, o32 X-HELO: relay1.mentorg.com Date: Fri, 27 Apr 2018 15:36:34 +0000 From: Joseph Myers To: Subject: Remove tilegx port Message-ID: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 X-ClientProxiedBy: svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) To svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) Since tile support has been removed from the Linux kernel for 4.17, this patch removes the (unmaintained) port to tilegx from glibc (the tilepro support having been previously removed). This reflects the general principle that a glibc port needs upstream support for the architecture in all the components it build-depends on (so binutils, GCC and the Linux kernel, for the normal case of a port supporting the Linux kernel but no other OS), in order to be maintainable. Apart from removal of sysdeps/tile and sysdeps/unix/sysv/linux/tile (omitted from the diffs below), there are updates to various comments referencing tile for which removal of those references seemed appropriate. The configuration is removed from README and from build-many-glibcs.py. contrib.texi keeps mention of removed contributions, but I updated Chris Metcalf's entry to reflect that he also contributed the non-removed support for the generic Linux kernel syscall interface. __ASSUME_FADVISE64_64_NO_ALIGN support is removed, as it was only used by tile. 2018-04-27 Joseph Myers * sysdeps/tile: Remove. * sysdeps/unix/sysv/linux/tile: Likewise. * README (tilegx-*-linux-gnu): Remove from list of supported configurations. * manual/contrib.texi (Contributors): Mention Chris Metcalf's contribution of support for generic Linux kernel syscall interface. * scripts/build-many-glibcs.py (Context.add_all_configs): Remove tilegx configurations. (Config.install_linux_headers): Do not handle tile. * sysdeps/unix/sysv/linux/aarch64/ldsodefs.h: Do not mention Tile in comment. * sysdeps/unix/sysv/linux/nios2/Makefile: Likewise. * sysdeps/unix/sysv/linux/posix_fadvise.c: Likewise. [__ASSUME_FADVISE64_64_NO_ALIGN] (__ALIGNMENT_ARG): Remove conditional undefine and redefine. * sysdeps/unix/sysv/linux/posix_fadvise64.c: Do not mention Tile in comment. [__ASSUME_FADVISE64_64_NO_ALIGN] (__ALIGNMENT_ARG): Remove conditional undefine and redefine. diff --git a/NEWS b/NEWS index 3d6b2c8..363e918 100644 --- a/NEWS +++ b/NEWS @@ -57,6 +57,8 @@ Deprecated and removed features, and other changes affecting compatibility: these macros should first include , and then include if __GNU_LIBRARY__ is defined. +* The tilegx*-*-linux-gnu configurations are no longer supported. + Changes to build and runtime requirements: [Add changes to build and runtime requirements here] diff --git a/README b/README index 2874505..27a9fd4 100644 --- a/README +++ b/README @@ -41,7 +41,6 @@ The GNU C Library supports these configurations for using Linux kernels: sh[34]-*-linux-gnu sparc*-*-linux-gnu sparc64*-*-linux-gnu - tilegx-*-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/manual/contrib.texi b/manual/contrib.texi index 0da6dcb..dd28e92 100644 --- a/manual/contrib.texi +++ b/manual/contrib.texi @@ -265,7 +265,8 @@ version 3 (@code{i386-sequent-bsd}). @item Chris Metcalf for the port to Linux/Tile (@code{tilegx-@var{anything}-linux} and -@code{tilepro-@var{anything}-linux}). +@code{tilepro-@var{anything}-linux}) and support for the generic Linux +kernel syscall interface used by several newer ports. @item David Miller for contributing the port to Linux/Sparc diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py index f911b20..19411c1 100755 --- a/scripts/build-many-glibcs.py +++ b/scripts/build-many-glibcs.py @@ -376,14 +376,6 @@ class Context(object): 'arch': 'sparcv9', 'ccopts': '-m32 -mlong-double-128', 'cfg': ['--disable-multi-arch']}]) - self.add_config(arch='tilegx', - os_name='linux-gnu', - glibcs=[{}, - {'variant': '32', 'ccopts': '-m32'}]) - self.add_config(arch='tilegxbe', - os_name='linux-gnu', - glibcs=[{}, - {'variant': '32', 'ccopts': '-m32'}]) self.add_config(arch='x86_64', os_name='linux-gnu', gcc_cfg=['--with-multilib-list=m64,m32,mx32'], @@ -1271,7 +1263,6 @@ class Config(object): 'riscv64': 'riscv', 'sh': 'sh', 'sparc': 'sparc', - 'tile': 'tile', 'x86_64': 'x86'} linux_arch = None for k in arch_map: diff --git a/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h b/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h index 2f2f973..ff88292 100644 --- a/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h +++ b/sysdeps/unix/sysv/linux/aarch64/ldsodefs.h @@ -1,4 +1,5 @@ -/* Run-time dynamic linker data structures for loaded ELF shared objects. Tile. +/* Run-time dynamic linker data structures for loaded ELF shared objects. + AArch64 version. Copyright (C) 2001-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. diff --git a/sysdeps/unix/sysv/linux/nios2/Makefile b/sysdeps/unix/sysv/linux/nios2/Makefile index d0af9ec..20910fa 100644 --- a/sysdeps/unix/sysv/linux/nios2/Makefile +++ b/sysdeps/unix/sysv/linux/nios2/Makefile @@ -3,7 +3,7 @@ gen-as-const-headers += ucontext_i.sym endif ifeq ($(subdir),misc) -# MIPS/Tile-style cacheflush routine +# MIPS-style cacheflush routine sysdep_headers += sys/cachectl.h sysdep_routines += cacheflush endif diff --git a/sysdeps/unix/sysv/linux/posix_fadvise.c b/sysdeps/unix/sysv/linux/posix_fadvise.c index 08ccc22..d676a68 100644 --- a/sysdeps/unix/sysv/linux/posix_fadvise.c +++ b/sysdeps/unix/sysv/linux/posix_fadvise.c @@ -31,9 +31,8 @@ (redefined to __NR_fadvise64_64 in kernel-features.h) that behaves as __NR_fadvise64_64 (without the aligment argument required for the ABI). - Third option will be used by both tile 32-bits and mips o32. Tile - will set __ASSUME_FADVISE64_64_NO_ALIGN to issue a 6 argument syscall, - while mips will use a 7 argument one with __NR_fadvise64. + Third option will be used by mips o32. Mips will use a 7 argument + syscall with __NR_fadvise64. s390 implements fadvice64_64 using a specific struct with arguments packed inside. This is the only implementation handled in arch-specific @@ -53,11 +52,6 @@ posix_fadvise (int fd, off_t offset, off_t len, int advise) SYSCALL_LL (offset), SYSCALL_LL (len)); # else -# ifdef __ASSUME_FADVISE64_64_NO_ALIGN -# undef __ALIGNMENT_ARG -# define __ALIGNMENT_ARG -# endif - # ifndef __NR_fadvise64_64 # define __NR_fadvise64_64 __NR_fadvise64 # endif diff --git a/sysdeps/unix/sysv/linux/posix_fadvise64.c b/sysdeps/unix/sysv/linux/posix_fadvise64.c index eebf10c..61dfe89 100644 --- a/sysdeps/unix/sysv/linux/posix_fadvise64.c +++ b/sysdeps/unix/sysv/linux/posix_fadvise64.c @@ -26,18 +26,10 @@ libc_hidden_proto (__posix_fadvise64_l64) just after 'fd' to avoid the requirement of implementing 7-arg syscalls. ARM also defines __NR_fadvise64_64 as __NR_arm_fadvise64_64. - tile requires __ASSUME_ALIGNED_REGISTER_PAIRS but implements the 32-bit - fadvise64_64 without the padding 0 after fd. - s390 implements fadvice64_64 using a specific struct with arguments packed inside. This is the only implementation handled in arch-specific code. */ -#ifdef __ASSUME_FADVISE64_64_NO_ALIGN -# undef __ALIGNMENT_ARG -# define __ALIGNMENT_ARG -#endif - #ifndef __NR_fadvise64_64 # define __NR_fadvise64_64 __NR_fadvise64 #endif