From patchwork Fri Apr 14 07:20:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: YunQiang Su X-Patchwork-Id: 83259 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp192118vqo; Fri, 14 Apr 2023 00:21:22 -0700 (PDT) X-Google-Smtp-Source: AKy350a4XfejwJGT0O0XfblJBRh3nAgYredZKl1hYQSkQ22cfSbRB5kMeRX0EM1YxqMSuQxZL7s3 X-Received: by 2002:a17:906:4813:b0:94e:bede:6d2a with SMTP id w19-20020a170906481300b0094ebede6d2amr3510858ejq.24.1681456882137; Fri, 14 Apr 2023 00:21:22 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1681456882; cv=pass; d=google.com; s=arc-20160816; b=n98MIycNPjxplqyHh3bZDcN7HeM+thGNBkTQO1wWmqNOuU/kzwHW6guJMNyaxR2Ii3 uzfbFIfIdi0k0IjVxAqx13yZ6Q6EhT3kD/PYAtxUJTNco5+DPJkBL9JPkSs9Y1kl2kG+ 1evBsTHijmCBOrKtMRTh3HPQ1TluMSJwluS8QO7wICLgRFfhVOy7ToJbO/TwU2VHGS+L V/TyWLn9yjK+ILjYMXsRec1pyqB6bT58WWLTb2+8r7q249lKiv72DaGT8e9Dy1SSI1Xw gP+xmnHXHAwYNVJIncE5M0nUkcF6/PL3AqE6du3C2oH2ySqcQXIZL+s7MoNvrB0sI0jZ 2EqQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:mime-version :content-transfer-encoding:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:dmarc-filter:delivered-to; bh=PvGovfLjfvi1oT8raHw4HyXemX3EgmD8crogBUnZkbA=; b=Yuc/N6NVrsZmN/vUWGF8Ft5a8qblCyr4XA8IK9EowC9+rbNXg4L+992+inrR6G1HGA D+Y3eTEqnoy8Fef1vLVHZmmXyMih+WCdHUmokfQE4uw7fR5FygExvSfAY3muHFh/ZHw3 bXVzuGovsrpgabW6YwodtvS3nsZMlxf4PfTfK9bBDC4Lqfq7CNOZbzHRhdh6mNYOtItE WvjEsDhcTSXHKk2711jnkW8mFtYFJZKF3upeV/0WiuzwROXUE1nOsr+OSR96166Q3Mjp R8QPRAv9GPbHHjjdbrRRWtWcLgI2Kl72JTP3I3YvzX77tS9qLYzu1WQgReHu7yrRX+L8 d8IQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@cipunited.onmicrosoft.com header.s=selector1-cipunited-onmicrosoft-com header.b=L+5UBBaK; arc=pass (i=1 spf=pass spfdomain=cipunited.com dkim=pass dkdomain=cipunited.com dmarc=pass fromdomain=cipunited.com); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org" Received: from sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id up35-20020a170907cca300b0094eeec818fdsi343472ejc.989.2023.04.14.00.21.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Apr 2023 00:21:22 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@cipunited.onmicrosoft.com header.s=selector1-cipunited-onmicrosoft-com header.b=L+5UBBaK; arc=pass (i=1 spf=pass spfdomain=cipunited.com dkim=pass dkdomain=cipunited.com dmarc=pass fromdomain=cipunited.com); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 60B843858434 for ; Fri, 14 Apr 2023 07:21:20 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from APC01-PSA-obe.outbound.protection.outlook.com (mail-psaapc01on2106.outbound.protection.outlook.com [40.107.255.106]) by sourceware.org (Postfix) with ESMTPS id 7A0DD3858D20 for ; Fri, 14 Apr 2023 07:21:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7A0DD3858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=cipunited.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=cipunited.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OPMvKhFNS2vWTbDi7XI1o4/qy2XiYJV14J5pDfI/FxqS55l2M38Sv0i9cQj1mcVIfvVV/Fze0dO+roIOWXKgKjYBsMcWgJuf7x2gmZ9RdR4G7SX4hixNOlVHOiDRdIqAqlvFlftGo9JhECv4CSBhz+S81N+hutvW3v1B6pewF5lHP6dNVUabhERKgouq4K9bkBnDEFS7y+0Na1n4RYMEvz78G2/6l6nIRRnn9RwYO031z3GoIFvhS7Qonds041YSAqgmg5GolIE4VTqZgsSVnCx3dLDM+6SSBpg2ARNz4/MaleIDINIJ1XyaGuqEO19KBU/1RsMTkCzIeA9DnCLTLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PvGovfLjfvi1oT8raHw4HyXemX3EgmD8crogBUnZkbA=; b=J3GzvNvWhaiGWhP4z8MSeJsBXtgHXRvzRlrfDGwzqc4t+LDXC/scLbjYAsDE+jZSh3YjDpfXIoLskS+unqv3YTBxyFQwHegsSB0yrRQlbXKS+F7E5k8axnRTq4Dbn8BjNmqcZXRTG3JunfjzTjmkWDe18kurcFUEm/rI06F3AfxAnjsWR6Y9Fz/HarW87eYKxm/pIl5GdJrb5aLoCH+9jsdjFESo5f4NA7nNaGKL5oF+PLeSxxBsZxWGpjYtSb3G8PUdCBpv7pZKfQxZ1CnIYIsTZcHbo+uHa2nC1BXULzXdJJbGgrwtXzEBUlOA0+SfK2ThLrErfVz8ut4Dmc5rVg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cipunited.com; dmarc=pass action=none header.from=cipunited.com; dkim=pass header.d=cipunited.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cipunited.onmicrosoft.com; s=selector1-cipunited-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PvGovfLjfvi1oT8raHw4HyXemX3EgmD8crogBUnZkbA=; b=L+5UBBaKU6SxCvqAT/I/kziMeDZFaZ6WbuTJ+p2d9jWIE1A9+f3DMvU9py5dh3B4eYkx8vjZADp8sMAYwRhkaYyF6JBxOOSQgs7XVEN/yg1cO7XjE/TBWHSL4HB1dhhJEoN2AGuCGQo4kSUUT0xu4ZiB1eecoju9akATrYPK+R0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=cipunited.com; Received: from TYZPR04MB6117.apcprd04.prod.outlook.com (2603:1096:400:25a::9) by TYUPR04MB6792.apcprd04.prod.outlook.com (2603:1096:400:35f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.28; Fri, 14 Apr 2023 07:21:07 +0000 Received: from TYZPR04MB6117.apcprd04.prod.outlook.com ([fe80::4016:87b:f0d1:b150]) by TYZPR04MB6117.apcprd04.prod.outlook.com ([fe80::4016:87b:f0d1:b150%6]) with mapi id 15.20.6298.030; Fri, 14 Apr 2023 07:21:06 +0000 From: YunQiang Su To: binutils@sourceware.org Cc: syq@debian.org, macro@orcam.me.uk, xry111@xry111.site, richard.sandiford@arm.com, jiaxun.yang@flygoat.com, YunQiang Su Subject: [PATCH v3] MIPS: the default output fellows triple Date: Fri, 14 Apr 2023 15:20:46 +0800 Message-Id: <20230414072046.1639896-1-yunqiang.su@cipunited.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230403110635.23391-1-yunqiang.su@cipunited.com> References: <20230403110635.23391-1-yunqiang.su@cipunited.com> X-ClientProxiedBy: TYCPR01CA0018.jpnprd01.prod.outlook.com (2603:1096:405::30) To TYZPR04MB6117.apcprd04.prod.outlook.com (2603:1096:400:25a::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYZPR04MB6117:EE_|TYUPR04MB6792:EE_ X-MS-Office365-Filtering-Correlation-Id: 949d625e-928b-4b31-c0cb-08db3cb8d009 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jjDIw6cfVGKiSNhHEvrIyFY6X20u+pe77kO6btGjFtsKPhcBSUzW+a0TNjwmr5STY7VWvSwKqy9jWglmKXbg+hR71nPQw+68Zl3GefCOus8wxnYhBdY38EO//VyhsBqh6nYob7K8zz5IquNlcc6AzdWdwmK/UkkSwl9Kz1gAI2ioQbR2gWN4rJnEcP0CHx7yG/xv6ML+sWk/qT4ikz2TTE0vrfbq1+RE5LioizYTucuFIgWlsCqLiLnAKhuaY3KUncfpddPmbn2CrjAw++FHUOr7bVRpqrNRnKPhg/y5LIG4vko4e2fZqPvPv8YOfeLIxImNaxKPxQBsooeDs8zP2rg0mjpvdfgWhw1zAYu5xDAqQW7Dj9lfrSNRCKMol56oG2pjO+weqkcDdoans20TUG2RaigTNz2nA9auxoCt7qNh7trpbYjavsbOcaohuL9KEQGavejY+VX9kpUbCJkAFkXq6BqgmpyBsStC640HcTftn3rXPdUl0r1t7b1K0DKNtrefKh6cYaPCZ55QRiKX5WtrfvVz6/H5zUp1S+t6xr1hYlCZUEoj2TecKmp41GuSdcvt5AhtU10ufX8l03crqzZCiXXsAyCj7WiGshn0kwe8L9AG1ZlwY4Zepz8gj8ov X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYZPR04MB6117.apcprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(136003)(376002)(396003)(346002)(366004)(39830400003)(451199021)(6486002)(36756003)(38350700002)(5660300002)(38100700002)(86362001)(41300700001)(8936002)(2906002)(6916009)(66476007)(66946007)(4326008)(8676002)(66556008)(2616005)(83380400001)(107886003)(478600001)(316002)(1076003)(6506007)(26005)(6512007)(52116002)(186003)(6666004); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 6iY4sJm2V59m74/Zq8lPLs6s9V/fJgXRODlDxSRwCExg/HXTatKi5k+BKgn2RdrU567NLmk+Xk+DPLoVI6pDbVz6fkPV0j80ot79lO6QOg2uyiYKRo6dW9X5NMuIfgwJtdVhHMbEAYKgPhCKugyZ6ptCdfM2GHj/5nOz0gUvd/8GYj55eN7qSgRcaG+cQex4URMRYrL9lO1NdFUYjgCZN9sbvVTMiW90YO5nLeYjXGt1wEz41N8D1bhQcIPSFcwUo5r/FMA96BjgzW6B1YNkITKYLXarMDO2k22+ixYz3juTj0hxhDVmxChZarYjwLJXM43WWE3WsnWeBPEfPJjT9UJ4X9QK1Q2tM7U+76pYnJ5P1jmXQ10kjfVigl3mCuXHh4Jm1pl2Jdr3ZfhnI7OM/4d7TFitMbamRdqe683I3kLyd3yvkYEUO1FdObqrB4FFbAuKKJaCyCfX6pQluZmb4dzNRBRpSOxeHMH+82EO/o0gHojznle07MD3LpxfMT7iQIurtMgYG5kUumv7NNomBKwCAKGW/S0vg8fGrycL8PorOrSNr4IQGIjN8oXFSVhpaylmKdEGsOLTYH3FyHj2zkHS/1FSO0KeHeVcXJaVS72hMYkvc7RTN8dbqqktSIK4QZ6ALEzZlyfZ9V0yoLt+yM+xTD6mkSjmXlNfjOVJzAdxXEqkV0v5lknwda8B9cG6KU1LpysxStyICjqiXDS9FemzXi2s7tDWxJanKC/nNrrRNbomTijD2KkmuHn0ERVrcNWr10d/ZRhyMiLc9OM3Glqd/V00+Yj3RbvJkPiwJgC5U+J5U6c9CeyyTpQD6PDXxH2yfkCHIjKuzA9p0m1K8D3aj1joiHOAiy+NxbxRprohj1A/No+4LfPMHqeyLfWbmDAeKEYlNcT8p2wUp908cE2PyBIhet0xYt9TwJNmnMEaO2CTDc5lqC262gYAKJPzZY9VvMx/FQ32a4QzGH1w97/5NXLJIY8G/w9M3x+ohdhElNFLzW8qKn/wwageXOBqZBxejOtvJhka8Ep2/jrmEbyzhQKtRnm7dW0k3iAU+1fUSFltT1cFa/ibrfcqWlzy2iJgPRjml89tM5TrR18msG3/7vWFvZcY007T4bjitQlcKDjxgvorfflGKxxC16XpNTHEtfJ1c6lj4mUzYUKfNlHbYYitGEGDboxEpzv0a0wRu+yN6NfYT9U0+gPmu2QMQSApENXaaPTDQxLIj0o2xjvZBjCyBlgFOnoJCNuP8DrAPFkNEZjLsrHMAxGnEx9RiQuUWdKpKN69WPxVfWJpG2UUraZkUFeZ1sLea/KDVInEgHRvakcH6mWUnm590Coh+PPky6raZGPtWMfNhEDTAElt67icpHTGljVmF17uFtnt8iqDq0ImmwTdE3XLPdIxY875RYBwB/7hckodIUicdWqqXoyq2ZHH7vCjDWMwgM25YXEwupG0V2O/4MkBiUVfxTiScjZwEUFgqT3lsf3Pqsg+RpYokCdzYcPlCt20j4/zm5xq1r8WMA++3x6ju464HWyu2vtGhmasVAsbr7qffQ32vxfxFX/uO+ZvhkPnKrcemBsfcEhoH2FeCv2JLSEhyLtrEzEjYCTBJ9wbUWBunQ== X-OriginatorOrg: cipunited.com X-MS-Exchange-CrossTenant-Network-Message-Id: 949d625e-928b-4b31-c0cb-08db3cb8d009 X-MS-Exchange-CrossTenant-AuthSource: TYZPR04MB6117.apcprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2023 07:21:06.7855 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e31cf5b5-ee69-4d5f-9c69-edeeda2458c0 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +fBybFJVRTvLCrtmOgZlVa8CyptZZUJSMkTF7vZ+tyC96M1+B7Qc8Q9NOylHkRL5WCJIVM6YFvGHOWmyXxYK2enbPCPua5ze3xCgkZZ5nsw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYUPR04MB6792 X-Spam-Status: No, score=-13.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1763135331326445207?= X-GMAIL-MSGID: =?utf-8?q?1763135331326445207?= PR 25494. 1. as fellows the isa level in triple of target > as xx.s 2. ld fellows the isa level in triple of target > ld -r -b binary xx.dat -o xx.o These rules include: 1. *-gnuabi64: will use N64 ABI by default 2. *-img-* (vendor): will use MIPS r6 by default 3. mipsisa32r6*/mipsisa64r6*: will use MIPS r6 by default --- bfd/config.bfd | 21 +++++++++++++++++-- bfd/elfxx-mips.c | 10 +++++++-- .../binutils-all/mips/mips-note-2-n32.d | 1 + gas/configure | 14 ++++++++++++- gas/configure.ac | 14 ++++++++++++- gold/configure.tgt | 14 +++++++++++++ ld/configure.tgt | 12 +++++++++-- 7 files changed, 78 insertions(+), 8 deletions(-) diff --git a/bfd/config.bfd b/bfd/config.bfd index 7af481048db..a57105097a8 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -941,11 +941,21 @@ case "${targ}" in targ_defvec=mips_elf32_be_vec targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" ;; - mips64*el-*-linux*) + mips*64*el-*-linux*-gnuabi64) + targ_defvec=mips_elf64_trad_le_vec + targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec" + want64=true + ;; + mips*64*-*-linux*-gnuabi64) + targ_defvec=mips_elf64_trad_be_vec + targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec" + want64=true + ;; + mips*64*el-*-linux*) targ_defvec=mips_elf32_ntrad_le_vec targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" ;; - mips64*-*-linux*) + mips*64*-*-linux*) targ_defvec=mips_elf32_ntrad_be_vec targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" ;; @@ -1525,3 +1535,10 @@ case "${targ_defvec} ${targ_selvecs}" in targ_archs="$targ_archs bfd_iamcu_arch" ;; esac + +case "${targ}" in + mipsisa32r6* | mipsisa64r6* | mips*-img-*) + targ_cflags="$targ_cflags -DMIPS_DEFAULT_R6=1" + ;; +esac + diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index 13a89953293..336c32b48ec 100644 --- a/bfd/elfxx-mips.c +++ b/bfd/elfxx-mips.c @@ -12327,9 +12327,15 @@ mips_set_isa_flags (bfd *abfd) { default: if (ABI_N32_P (abfd) || ABI_64_P (abfd)) - val = E_MIPS_ARCH_3; +#ifdef MIPS_DEFAULT_R6 + val = E_MIPS_ARCH_64R6; else - val = E_MIPS_ARCH_1; + val = E_MIPS_ARCH_32R6; +#else + val = E_MIPS_ARCH_3; + else + val = E_MIPS_ARCH_1; +#endif break; case bfd_mach_mips3000: diff --git a/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d b/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d index c2a581858ed..5e24e7a115e 100644 --- a/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d +++ b/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d @@ -1,4 +1,5 @@ #PROG: objcopy +#as: -n32 #readelf: --notes --wide #objcopy: --merge-notes #name: MIPS merge notes section (n32) diff --git a/gas/configure b/gas/configure index b56836998ef..0daa80d5b4c 100755 --- a/gas/configure +++ b/gas/configure @@ -12211,6 +12211,15 @@ _ACEOF use_e_mips_abi_o32=1 ;; esac + # If Vendor is IMG, then MIPSr6 is used + case ${target} in + mips*64*-img-*) + mips_cpu=mips64r6 + ;; + mips*-img-*) + mips_cpu=mips32r6 + ;; + esac # Decide whether to generate 32-bit or 64-bit code by default. # Used to resolve -march=from-abi when an embedded ABI is selected. case ${target} in @@ -12223,7 +12232,10 @@ _ACEOF esac # Decide which ABI to target by default. case ${target} in - mips64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \ + mips*64*-linux-gnuabi64) + mips_default_abi=N64_ABI + ;; + mips*64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \ | mips64*-kfreebsd*-gnu | mips64*-ps2-elf*) mips_default_abi=N32_ABI ;; diff --git a/gas/configure.ac b/gas/configure.ac index 6a68fd7c4e6..2b91f9ec616 100644 --- a/gas/configure.ac +++ b/gas/configure.ac @@ -380,6 +380,15 @@ changequote([,])dnl use_e_mips_abi_o32=1 ;; esac + # If Vendor is IMG, then MIPSr6 is used + case ${target} in + mips*64*-img-*) + mips_cpu=mips64r6 + ;; + mips*-img-*) + mips_cpu=mips32r6 + ;; + esac # Decide whether to generate 32-bit or 64-bit code by default. # Used to resolve -march=from-abi when an embedded ABI is selected. case ${target} in @@ -392,7 +401,10 @@ changequote([,])dnl esac # Decide which ABI to target by default. case ${target} in - mips64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \ + mips*64*-linux-gnuabi64) + mips_default_abi=N64_ABI + ;; + mips*64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \ | mips64*-kfreebsd*-gnu | mips64*-ps2-elf*) mips_default_abi=N32_ABI ;; diff --git a/gold/configure.tgt b/gold/configure.tgt index 4b54e08d27f..ef47ce079f1 100644 --- a/gold/configure.tgt +++ b/gold/configure.tgt @@ -153,6 +153,13 @@ aarch64*-*) targ_big_endian=false targ_extra_big_endian=true ;; +mips*64*el*-*-*|mips*64*le*-*-*) + targ_obj=mips + targ_machine=EM_MIPS_RS3_LE + targ_size=64 + targ_big_endian=false + targ_extra_big_endian=true + ;; mips*el*-*-*|mips*le*-*-*) targ_obj=mips targ_machine=EM_MIPS_RS3_LE @@ -160,6 +167,13 @@ mips*el*-*-*|mips*le*-*-*) targ_big_endian=false targ_extra_big_endian=true ;; +mips*64*-*-*) + targ_obj=mips + targ_machine=EM_MIPS + targ_size=64 + targ_big_endian=true + targ_extra_big_endian=false + ;; mips*-*-*) targ_obj=mips targ_machine=EM_MIPS diff --git a/ld/configure.tgt b/ld/configure.tgt index 34c9d67c365..4a71f679e29 100644 --- a/ld/configure.tgt +++ b/ld/configure.tgt @@ -580,11 +580,19 @@ mips*-*-vxworks*) targ_emul=elf32ebmipvxworks ;; mips*-*-windiss) targ_emul=elf32mipswindiss ;; -mips64*el-*-linux-*) targ_emul=elf32ltsmipn32 +mips*64*el-*-linux-gnuabi64) targ_emul=elf64ltsmip + targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip" + targ_extra_libpath=$targ_extra_emuls + ;; +mips*64*el-*-linux-*) targ_emul=elf32ltsmipn32 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" targ_extra_libpath=$targ_extra_emuls ;; -mips64*-*-linux-*) targ_emul=elf32btsmipn32 +mips*64*-*-linux-gnuabi64) targ_emul=elf64btsmip + targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip" + targ_extra_libpath=$targ_extra_emuls + ;; +mips*64*-*-linux-*) targ_emul=elf32btsmipn32 targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" targ_extra_libpath=$targ_extra_emuls ;;