From patchwork Fri Oct 2 14:50:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Coplan X-Patchwork-Id: 1375836 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=sourceware.org; envelope-from=gcc-patches-bounces@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gcc.gnu.org Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=SacfdBtq; dkim-atps=neutral Received: from sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4C2tGr1ccMz9s1t for ; Sat, 3 Oct 2020 00:51:16 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 782E6386F823; Fri, 2 Oct 2020 14:51:13 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 782E6386F823 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1601650273; bh=MHyqXgYS0eBdJF9j/xse0cOOexS1ms+huA5/PEGU90I=; h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=SacfdBtqvS8HUTZ6UGIJe/g5VxHLFCf7ARQPYhHYQmoSKWYqtEaZPVYZNi09q/slK SnZbgNyM4TYnV7iQlDWDo50B6V8XyebkleeNyfgKSyUUjaCSpTNGyomUbdOzdluwoT akfJukpvMxYYvzWFucneYdk8Z7QpJTelDCij5WLw= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20050.outbound.protection.outlook.com [40.107.2.50]) by sourceware.org (Postfix) with ESMTPS id D4AEF3865492 for ; Fri, 2 Oct 2020 14:51:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org D4AEF3865492 Received: from AM7PR03CA0017.eurprd03.prod.outlook.com (2603:10a6:20b:130::27) by VI1PR0802MB2413.eurprd08.prod.outlook.com (2603:10a6:800:b9::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.37; Fri, 2 Oct 2020 14:51:08 +0000 Received: from AM5EUR03FT053.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:130:cafe::b3) by AM7PR03CA0017.outlook.office365.com (2603:10a6:20b:130::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.32 via Frontend Transport; Fri, 2 Oct 2020 14:51:08 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; gcc.gnu.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;gcc.gnu.org; dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT053.mail.protection.outlook.com (10.152.16.210) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.34 via Frontend Transport; Fri, 2 Oct 2020 14:51:07 +0000 Received: ("Tessian outbound bac899b43a54:v64"); Fri, 02 Oct 2020 14:51:07 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 7a4be564aa6b855c X-CR-MTA-TID: 64aa7808 Received: from 6b42a69ba8a3.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id FD70F3EC-BAD2-42FB-9117-3178D58DDAA2.1; Fri, 02 Oct 2020 14:50:30 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 6b42a69ba8a3.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 02 Oct 2020 14:50:30 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iwd7xJMdyxfdqHED1vrCQPf/yvVgpbVo+DQ11tEB3kVSWUhhk+zG1SCVAfHop9oKg3kUJtrr0ZsaW2FOpf214JJWjNnQb+l7V9ezijPraVrOzGIVC1jUgf1xInRkfjF9turyx1f2LlnQbWCLcOtsBI0j5YM9AlOPiCgWl46CvoWsW48maK/AyLWGeME08BcyRTTD5YC+REC1DsazGWerMfd/xf1cfnboEr3e1sqVnrq4sftTMGiCIzxFJoT7c5UW5z09tB/lbF3dISPYwOs3kal5+FSYo3HU6e0cO7HJ7ghqGRm6jmD7nFGiGDYzER6e1ph9+hd0IBQFxbjDPVWbeQ== 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-SenderADCheck; bh=MHyqXgYS0eBdJF9j/xse0cOOexS1ms+huA5/PEGU90I=; b=SUeDqz9k/5u6m/ynbQ1StI5a1P9sdiYJxTas2ZMCfoIBI/IXDAMXl0hcyC1OoR6Ph2fovq28P1kf/c5a5igXTmEptyQqq8MY3bJeICalO0G51LVIIsU2WkHryjLNOuiPZnHWKrACeAYtYC/r1s7a3avImH8FucwUE20y0TgDZtPogxwvS8CPEO/LcVk7ANVImaQua33aDZsaO+QLGuXxE1pf57wnLN2mTUGuhkNCOzINxachgI5+ECw3Y/PCSjLWwJe1ttklkNl+N7iAGvNhCRCW8ucpG1KD4AUh+/xWF8R8SL8wBBmjuGrr/eJ4j7Z/sp8BCSK+fQDf4nDCgn6Kvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none Authentication-Results-Original: gcc.gnu.org; dkim=none (message not signed) header.d=none;gcc.gnu.org; dmarc=none action=none header.from=arm.com; Received: from VI1PR08MB4029.eurprd08.prod.outlook.com (2603:10a6:803:ec::14) by VE1PR08MB5679.eurprd08.prod.outlook.com (2603:10a6:800:1a8::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.35; Fri, 2 Oct 2020 14:50:28 +0000 Received: from VI1PR08MB4029.eurprd08.prod.outlook.com ([fe80::c194:c7c6:f09e:6f3d]) by VI1PR08MB4029.eurprd08.prod.outlook.com ([fe80::c194:c7c6:f09e:6f3d%7]) with mapi id 15.20.3433.037; Fri, 2 Oct 2020 14:50:28 +0000 Date: Fri, 2 Oct 2020 15:50:19 +0100 To: gcc-patches@gcc.gnu.org Subject: [PATCH][GCC 9] arm: Add support for Neoverse N2 CPU Message-ID: <20201002145019.nsxpfdwrqi663ojo@arm.com> Content-Disposition: inline User-Agent: NeoMutt/20171215 X-Originating-IP: [217.140.106.49] X-ClientProxiedBy: SA0PR11CA0081.namprd11.prod.outlook.com (2603:10b6:806:d2::26) To VI1PR08MB4029.eurprd08.prod.outlook.com (2603:10a6:803:ec::14) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from arm.com (217.140.106.49) by SA0PR11CA0081.namprd11.prod.outlook.com (2603:10b6:806:d2::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.37 via Frontend Transport; Fri, 2 Oct 2020 14:50:26 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 8c747a24-25c3-4d6b-1415-08d866e29886 X-MS-TrafficTypeDiagnostic: VE1PR08MB5679:|VI1PR0802MB2413: X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:4303;OLM:4303; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: m4O8yoXSrjhPIf6V2zx32/jQ9q7GScBTaf3kepNFB6X7oApskz9n7JrnjTKzetChNjCCw5iKaEs56Q60YRnyhAKOY5l57uJfyXnQIXbZXZKXcDG1rFkQ/CnJQgGkZYEiNdkMbtJGiRdLY8+kTCpKIfy6osS1rMwhqrjwq3HYHKcr9RX3FR+DgHZeBZSjSJBhT3WxDtZEEP43vHfw5uD5lEbVf7vfLsMkOTpWlcbHgG3JF5dOpHkpsYzeakWAjeEERdXmfpszi5n02miPp6dMcoCUVxyydUfHpqvl2q3bm+Tu/HYbp4+GFpf4QkBe+plZa/h1J26eqav3Q14r368jN7gW6ZOxWTTG5udpkC5GJMCCawP+pcaGMjEIjtBllpLu X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB4029.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(39860400002)(346002)(366004)(376002)(136003)(235185007)(55016002)(6916009)(86362001)(44832011)(26005)(8886007)(6666004)(16526019)(66946007)(186003)(66616009)(66556008)(66476007)(956004)(5660300002)(1076003)(2616005)(21480400003)(7696005)(33964004)(44144004)(52116002)(478600001)(2906002)(4326008)(316002)(8936002)(54906003)(36756003)(8676002)(2700100001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: MUszi5FdG31IhE9yHMEernf+iVl6zfcr/wsj380TpW7bVrITo77HUcic5bEPIH4UObVGCoPq4Pz55VNOfsGZJSJK0TIhXBjG1cMxG34yTfjdT9ezV8FNXS3IAb/uRuWaY6n89yGoTZ3Sjb7cY0cn7l4jB7pXRE34Bazea5jKSZoNMHtzufXi2/wsnJm0NcGWRrZaSwzUl8XercsTkG3GmpZ8oPLweIReK99pU+8SiWeZorNyShN5gaDVuW81vb5xegcV1d+SJjh5Kvhx/ou7A56Kg28v89ewobZBZa1DPoTXxFPaHSoKoh9nnehuxkIPbdkBui0CwFMTrZ2SMDN3RvW95cW9Jkrclg7iQUrv/aa6Mbq2KcX4PX0Rck1EYyHj7TGn9ULTVRCM1+NaYbA79cyvyLgQs1yFSC/EqcE1xY41S6jSGujA6uAVT2moVaR3inXchlCXBlwy0IMELmb2AfA1sI5HE0yUroUalyLiPPHToWIzR6uvnpCBUu5YNuC/rt97vHNoUHsNOViRUQkBx9b3r+pZSx5VfinQW4ScGHPaSghc6MD6cdfnHGoH0mUF6BujjD5uDF3a7L3iLLzaHo0LoQcjn1UVe480TDwtt9jRwCBCbvcpreqDQZoH3yCSr9dK2JfUvMjgFqS6O+mFUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5679 Original-Authentication-Results: gcc.gnu.org; dkim=none (message not signed) header.d=none;gcc.gnu.org; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT053.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: d863b3b5-f222-46ef-c320-08d866e2809b X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Zard6LJsF2jGXnYR1dE7VLEw2dAliYkpWGfCf9DAYFGYZ8V+nKfDK3/ziJ/f8Hw36eUk3+a+zMl/Z3/RdWdhHaeL3rLI+Mpb78vgoaO+OJwlaSXFvAkTEnk8LPdVoECdKYflDY5K+Dtko4Zrwmh/GvNJwOWP3UGw78StpBNMb9ZwQu/4FnjSykv/X1U1j5AIFS4y1oezmxfpcRdvTFrokfWyXl4aQjl2+RIQ1Fsv4b+lCNWQHwO/aro6wQabxTPY0SQsIag13pMB/WBTIvHvETmhQNrihWhqzY9McaJr02fjJ1ct+YXOHdvNGI9Wm8KeCdxEiQOb6ljnZN1ThmfU1jGKly14iGgghIcptgpti2lcaFcluDTRU5muTw5V3MXnlWp4uhFDZXqSKM2/xljo893dGWxVtEFWgFf5hjsje0E= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(4636009)(396003)(376002)(136003)(346002)(39860400002)(46966005)(81166007)(336012)(235185007)(6666004)(70206006)(70586007)(66616009)(36906005)(16526019)(26005)(6916009)(36756003)(33964004)(2906002)(478600001)(21480400003)(44144004)(54906003)(2616005)(5660300002)(7696005)(956004)(4326008)(8886007)(55016002)(186003)(86362001)(47076004)(356005)(1076003)(316002)(44832011)(82310400003)(8936002)(8676002)(82740400003)(2700100001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2020 14:51:07.9931 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8c747a24-25c3-4d6b-1415-08d866e29886 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM5EUR03FT053.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2413 X-Spam-Status: No, score=-14.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Alex Coplan via Gcc-patches From: Alex Coplan Reply-To: Alex Coplan Cc: Richard Earnshaw , Ramana Radhakrishnan Errors-To: gcc-patches-bounces@gcc.gnu.org Sender: "Gcc-patches" This patch backports the AArch32 support for Arm's Neoverse N2 CPU to GCC 9. Testing: * Bootstrapped and regtested on arm-none-linux-gnueabihf. OK for GCC 9 branch? Thanks, Alex --- gcc/ChangeLog: * config/arm/arm-cpus.in (neoverse-n2): New. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm-tune.md: Regenerate. * doc/invoke.texi: Document support for Neoverse N2. diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in index 747767ab386..3c375b9a7b9 100644 --- a/gcc/config/arm/arm-cpus.in +++ b/gcc/config/arm/arm-cpus.in @@ -1372,6 +1372,18 @@ begin cpu neoverse-v1 costs cortex_a57 end cpu neoverse-v1 +# Armv8.5 A-profile Architecture Processors +begin cpu neoverse-n2 + cname neoversen2 + tune for cortex-a57 + tune flags LDSCHED + architecture armv8.5-a+fp16 + option crypto add FP_ARMv8 CRYPTO + costs cortex_a57 + vendor 41 + part 0xd49 +end cpu neoverse-n2 + # V8 M-profile implementations. begin cpu cortex-m23 cname cortexm23 diff --git a/gcc/config/arm/arm-tables.opt b/gcc/config/arm/arm-tables.opt index 5384284b53a..5befadddf9e 100644 --- a/gcc/config/arm/arm-tables.opt +++ b/gcc/config/arm/arm-tables.opt @@ -246,6 +246,9 @@ Enum(processor_type) String(cortex-a76.cortex-a55) Value( TARGET_CPU_cortexa76co EnumValue Enum(processor_type) String(neoverse-v1) Value( TARGET_CPU_neoversev1) +EnumValue +Enum(processor_type) String(neoverse-n2) Value( TARGET_CPU_neoversen2) + EnumValue Enum(processor_type) String(cortex-m23) Value( TARGET_CPU_cortexm23) diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md index 1257daff074..102765e6568 100644 --- a/gcc/config/arm/arm-tune.md +++ b/gcc/config/arm/arm-tune.md @@ -45,6 +45,6 @@ cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35, cortexa73cortexa53,cortexa55,cortexa75, cortexa76,neoversen1,cortexa75cortexa55, - cortexa76cortexa55,neoversev1,cortexm23, - cortexm33,cortexr52" + cortexa76cortexa55,neoversev1,neoversen2, + cortexm23,cortexm33,cortexr52" (const (symbol_ref "((enum attr_tune) arm_tune)"))) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index e4cc83ba5cb..2eb2c82dc47 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -17570,9 +17570,9 @@ Permissible names are: @samp{arm7tdmi}, @samp{arm7tdmi-s}, @samp{arm710t}, @samp{cortex-m4}, @samp{cortex-m7}, @samp{cortex-m23}, @samp{cortex-m33}, @samp{cortex-m1.small-multiply}, @samp{cortex-m0.small-multiply}, @samp{cortex-m0plus.small-multiply}, @samp{exynos-m1}, @samp{marvell-pj4}, -@samp{neoverse-n1}, @samp{neoverse-v1}, @samp{xscale}, @samp{iwmmxt}, -@samp{iwmmxt2}, @samp{ep9312}, @samp{fa526}, @samp{fa626}, @samp{fa606te}, -@samp{fa626te}, @samp{fmp626}, @samp{fa726te}, @samp{xgene1}. +@samp{neoverse-n1}, @samp{neoverse-n2}, @samp{neoverse-v1}, @samp{xscale}, +@samp{iwmmxt}, @samp{iwmmxt2}, @samp{ep9312}, @samp{fa526}, @samp{fa626}, +@samp{fa606te}, @samp{fa626te}, @samp{fmp626}, @samp{fa726te}, @samp{xgene1}. Additionally, this option can specify that GCC should tune the performance of the code for a big.LITTLE system. Permissible names are: