From patchwork Tue May 28 23:03:32 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steve Ellcey X-Patchwork-Id: 247054 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "localhost", Issuer "www.qmailtoaster.com" (not verified)) by ozlabs.org (Postfix) with ESMTPS id 7C4362C02A4 for ; Wed, 29 May 2013 09:03:44 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :date:to:subject:mime-version:content-type :content-transfer-encoding:message-id; q=dns; s=default; b=lxc9p Wa9qI7AEazCtjwlrdDsomtF6UAgn2ch5wiP2kk/6QSNPR13RgJab1qPZpS4KGG7T Ztru6DWtjWt5DmlYTe0cIcT+X59JSr+2/e2jfQCx3bNYTQICux9DuxoyHrIWqdSn +jnj0nsYL4wtZSBqPlzVH60pZ1C4juuUbFovLk= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :date:to:subject:mime-version:content-type :content-transfer-encoding:message-id; s=default; bh=gsj0zkncnGH v3Vzhqk7DOwLYTAM=; b=VnbI/2n1xQv2sSIcuqVszCdLnlladHs48lSd86+JhS7 yOwz89q+XKDlBxids+U+hODkgtOHHC9h8KvCD8ZXOIRUyMmGlpZUDohAgpFlejv2 cIlfQH+rVPr6PZFl2VtQx5k4ZmVFeRIxLbkxxdBFwCUtSwyvXoKO4y85Xe6orB2U = Received: (qmail 28241 invoked by alias); 28 May 2013 23:03:38 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 28231 invoked by uid 89); 28 May 2013 23:03:38 -0000 X-Spam-SWARE-Status: No, score=-3.2 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD autolearn=ham version=3.3.1 Received: from multi.imgtec.com (HELO multi.imgtec.com) (194.200.65.239) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Tue, 28 May 2013 23:03:37 +0000 From: "Steve Ellcey " Date: Tue, 28 May 2013 16:03:32 -0700 To: , Subject: [patch, mips] Update multilibs for mips-mti-* targets User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Message-ID: <4f8c9b7b-e489-435b-a4fc-fb66d78b261e@BAMAIL02.ba.imgtec.org> X-SEF-Processed: 7_3_0_01181__2013_05_29_00_03_36 Richard, This patch adds the micromips multilib to the mips-mti-elf and mips-mti-linux targets. It also adds mips16 multilib to mips-mti-linux. I hadn't added that earlier because I was waiting for the mips16 changes to get checked in to glibc and they are in now. It shouldn't affect any other mips targets, OK to checkin? Steve Ellcey sellcey@imgtec.com 2013-05-28 Steve Ellcey * config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips and mips16 directories. * config/mips/t-mti-linux (MULTILIB_OPTIONS): Add micromips and mips16. (MULTILIB_DIRNAMES): Ditto. (MULTILIB_EXCEPTIONS): Add new exceptions. * config/mips/t-mti-elf (MULTILIB_OPTIONS): Add micromips. (MULTILIB_DIRNAMES): Ditto. (MULTILIB_EXCEPTIONS): Add new exceptions. diff --git a/gcc/config/mips/mti-linux.h b/gcc/config/mips/mti-linux.h index a3fb489..45bc0b8 100644 --- a/gcc/config/mips/mti-linux.h +++ b/gcc/config/mips/mti-linux.h @@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see /* This target is a multilib target, specify the sysroot paths. */ #undef SYSROOT_SUFFIX_SPEC #define SYSROOT_SUFFIX_SPEC \ - "%{mips32:/mips32}%{mips64:/mips64}%{mips64r2:/mips64r2}%{mabi=64:/64}%{mel|EL:/el}%{msoft-float:/sof}" + "%{mips32:/mips32}%{mips64:/mips64}%{mips64r2:/mips64r2}%{mips16:/mips16}%{mmicromips:/micromips}%{mabi=64:/64}%{mel|EL:/el}%{msoft-float:/sof}" #undef DRIVER_SELF_SPECS #define DRIVER_SELF_SPECS \ diff --git a/gcc/config/mips/t-mti-elf b/gcc/config/mips/t-mti-elf index 3f0868f..66b6cbd 100644 --- a/gcc/config/mips/t-mti-elf +++ b/gcc/config/mips/t-mti-elf @@ -16,8 +16,8 @@ # along with GCC; see the file COPYING3. If not see # . -MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16 mabi=64 EL msoft-float -MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 64 el sof +MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16 mmicromips mabi=64 EL msoft-float +MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 micromips 64 el sof MULTILIB_MATCHES = EL=mel EB=meb # We do not want to build mips16 versions of mips64* architectures. @@ -32,4 +32,11 @@ MULTILIB_EXCEPTIONS += *mips32*/*mabi=64* # or mips64r2 but does specify mabi=64 is not allowed because that # would be defaulting to the mips32r2 architecture. MULTILIB_EXCEPTIONS += mabi=64* -MULTILIB_EXCEPTIONS += mips16/mabi=64* +MULTILIB_EXCEPTIONS += *mips16/mabi=64* +MULTILIB_EXCEPTIONS += *mmicromips/mabi=64* + +# We only want micromips for mips32r2 architecture and we do not want +# it used in conjunction with -mips16. +MULTILIB_EXCEPTIONS += *mips16/mmicromips* +MULTILIB_EXCEPTIONS += *mips64*/mmicromips* +MULTILIB_EXCEPTIONS += *mips32/mmicromips* diff --git a/gcc/config/mips/t-mti-linux b/gcc/config/mips/t-mti-linux index 775a68d..3d99e25 100644 --- a/gcc/config/mips/t-mti-linux +++ b/gcc/config/mips/t-mti-linux @@ -19,15 +19,26 @@ # The default build is mips32r2, hard-float big-endian. Add mips32, # soft-float, and little-endian variations. -MULTILIB_OPTIONS = mips32/mips64/mips64r2 mabi=64 EL msoft-float -MULTILIB_DIRNAMES = mips32 mips64 mips64r2 64 el sof +MULTILIB_OPTIONS = mips32/mips64/mips64r2 mips16 mmicromips mabi=64 EL msoft-float +MULTILIB_DIRNAMES = mips32 mips64 mips64r2 mips16 micromips 64 el sof MULTILIB_MATCHES = EL=mel EB=meb +# We do not want to build mips16 versions of mips64* architectures. +MULTILIB_EXCEPTIONS += *mips64*/*mips16* + # The 64 bit ABI is not supported on the mips32 architecture. MULTILIB_EXCEPTIONS += *mips32*/*mabi=64* # The 64 bit ABI is not supported on the mips32r2 architecture. # Because mips32r2 is the default we can't use that flag to trigger -# the exception so we check for mabi=64 with no specific mips flag -# instead. +# the exception so we check for mabi=64 with no specific mips +# architecture flag instead. MULTILIB_EXCEPTIONS += mabi=64* +MULTILIB_EXCEPTIONS += *mips16/mabi=64* +MULTILIB_EXCEPTIONS += *mmicromips/mabi=64* + +# We only want micromips for mips32r2 architecture and we do not want +# it used in conjunction with -mips16. +MULTILIB_EXCEPTIONS += *mips16/mmicromips* +MULTILIB_EXCEPTIONS += *mips64*/mmicromips* +MULTILIB_EXCEPTIONS += *mips32/mmicromips*