From patchwork Tue Sep 29 16:03:37 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Coplan X-Patchwork-Id: 1373505 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=8.43.85.97; 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=xCjZJ6JK; dkim-atps=neutral Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (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 4C142C4cZNz9ryj for ; Wed, 30 Sep 2020 02:04:01 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 8BB6F394D8C5; Tue, 29 Sep 2020 16:03:58 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8BB6F394D8C5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1601395438; bh=sV+nO1SSqox+SKJzIpa1ku/8K02MDL33310rSHKQIk4=; h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=xCjZJ6JKISBgsW39aJkoBRQ4zcN9803IBIwM1wmJO8l7M2NZcLQNBfgUJoJqAOSke GHDfrefUEgWNZk1ssT3s5VXhC3AV3SbXJCALv1VF66KXWGURkRqSOtuT5dH6Hrc+wn cm/To41rP3no/efTp+ti0bTfed0vj2CLOTWMQbQU= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50052.outbound.protection.outlook.com [40.107.5.52]) by sourceware.org (Postfix) with ESMTPS id 5850B3857C7F for ; Tue, 29 Sep 2020 16:03:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 5850B3857C7F Received: from DB6PR0202CA0021.eurprd02.prod.outlook.com (2603:10a6:4:29::31) by PR3PR08MB5804.eurprd08.prod.outlook.com (2603:10a6:102:83::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.24; Tue, 29 Sep 2020 16:03:53 +0000 Received: from DB5EUR03FT056.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:29:cafe::9e) by DB6PR0202CA0021.outlook.office365.com (2603:10a6:4:29::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.20 via Frontend Transport; Tue, 29 Sep 2020 16:03:53 +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 DB5EUR03FT056.mail.protection.outlook.com (10.152.21.124) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.21 via Frontend Transport; Tue, 29 Sep 2020 16:03:53 +0000 Received: ("Tessian outbound bac899b43a54:v64"); Tue, 29 Sep 2020 16:03:53 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 2c04e211d58b8aba X-CR-MTA-TID: 64aa7808 Received: from dbb70beb0d6d.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1EEF6D59-E510-4FA6-9A6D-CB0BDF7945B8.1; Tue, 29 Sep 2020 16:03:41 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id dbb70beb0d6d.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 29 Sep 2020 16:03:41 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IKBm7TLcrbY0d2HKTLKNewRCRxJPrhPUNP1WGO+zUiipDFM22Lxvh5TLhaEcitdhXDd+0LocphUJO+pJU91daVIamf9Wtz03uQO37aQ38fdy33+tnNd0rXfzwGwsuaUoRu858u+7CdqvG85eC8f1cU/tYUPKVeg8QXIjP4y1jvBlkHnjkyu2lQarwu0u6H2notMl7HOpXhpxgcvMws2K5e6N1TpBZGis1gcNVOQ0kd9WFkvtXdjyrnGYyGUvWESctfG8aO34vja8U/JDAF5kjwlUfFtQa/yvKpokUofBfihvZJM3lK0lkioJ4qsJOVe7KRqUb95hG3gGBL8DCmrV9w== 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=sV+nO1SSqox+SKJzIpa1ku/8K02MDL33310rSHKQIk4=; b=mxyBwyxB3tWm1Id8I6HP9QB+fFFarGkXaiRNSUXlqmA3YZKbUj+2O/SXMaSZCm3AGMBxdmGqBa8ubfAJ0biPHm2p3XYJ/uh6fpBJOyOMaa43augBir//aebZIGn8BynXj/6XDTqRBtkJQK5Sz034tZkei6SUyNqIQwG713SVfsBzeGAzqQQjx0B5TYvjqaRInKmKVTq8n3kJwggtO/sxSQdJtsakgXvy/7A103Ut+xI9J4mcB/MfQ6DYEY9NHnlDm8UgIm1ND/vwGKFaiO+YogXVZgBbyLXxsVGlnoYAE5K3mNCGPBIsK2q/DOWEPp+I3lpsdN85vfg5nMyK21Xd0Q== 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 VI1PR08MB4141.eurprd08.prod.outlook.com (2603:10a6:803:ed::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.25; Tue, 29 Sep 2020 16:03:39 +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.3412.029; Tue, 29 Sep 2020 16:03:39 +0000 Date: Tue, 29 Sep 2020 17:03:37 +0100 To: gcc-patches@gcc.gnu.org Subject: [PATCH][GCC 10] aarch64: Add support for Neoverse N2 CPU Message-ID: <20200929160336.chicl53w4jd4mgjz@arm.com> Content-Disposition: inline User-Agent: NeoMutt/20171215 X-ClientProxiedBy: LO2P265CA0154.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9::22) 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.52) by LO2P265CA0154.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:9::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.32 via Frontend Transport; Tue, 29 Sep 2020 16:03:39 +0000 X-Originating-IP: [217.140.106.52] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 0b998922-6454-47f1-5107-08d86491430d X-MS-TrafficTypeDiagnostic: VI1PR08MB4141:|PR3PR08MB5804: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:1265;OLM:1265; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: N1gojz+gWxs48YDt8aQqVMdtS1Uq+DwJo04tHZbHqio60PpO0oVXqmW5TrWnuPQ7G+fRoZeTljsCyy0FiGQJ2xO2H9xDyXOTYIzIVYCA0CAX7GRs0mXN8Vq6/YwaZLmT3VSOiD2hogEB1TzVtCYqGQ33Ah9xMoSvhPi7IHyr8/apojK9x8oSap3mPxfOMjCcHLBbfF3z2rmj6PFlKwoNgudYwIKKNzLE+45N0P66HN2Jvy9FJCAFuri3+XAxOnSzWke8Ae0yIDdNGC+vuHZ5woVC39i8pdkQZj56iFHxYubENfGwCiDuBiWdbOoSFcZ/noOvBPqYh7VsbadzP6d95B1xzk/ayA22WFc4yl6/A0Dfdu5WTP67kCz8JDv+exK8fGw5UJzRwUBZuszrgMh3/LEnSPPRpNFOKlAfWyoiGh0= 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)(346002)(376002)(366004)(39830400003)(136003)(396003)(16526019)(7696005)(33964004)(5660300002)(54906003)(21480400003)(235185007)(316002)(66556008)(66476007)(44144004)(66616009)(8936002)(2906002)(186003)(86362001)(478600001)(26005)(55016002)(44832011)(36756003)(52116002)(6916009)(2616005)(956004)(8886007)(8676002)(4326008)(66946007)(1076003)(2700100001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: kKcHAZ3W32xjAy2vZLfXG6biNr03bJF06ETiabJQx3PJx4zp9w8Xphj1XVZ7w/oajSSUY059XarxIAhmX+s7Ri4fdaxP5wNjhEXtKQcmixOI6TeR5WAlVJxHGSvxVGQEp64t+fkQCc8/QFi17T3SWHr684Mj1jMU5MAALZiwVYyzz1N7jeUtZAszjaYFRyA/6SH6Up/7KDg4vJCc+q+GkPyRAu4M75zuxc9s58SdgPi1QN3/X/CLIg3LhEtNG+vuQ85MVZJy9a0lGMXFZU75HqiqPhxbmNIGh/rX34V85XRckU8DW1Kq6LA93QElb2LRDA19IRW/VD6S1J0JuoNOnTFyEi3sJZyv3DMuXmsBo3caQGmFbt+xvT0NClSw5SxDh+Pj+pOIA2L2Tn+6TlTfF9eguUSXZEJKCLIS9AZvT9882vXZkNqJP6KHqcTDBRArUt1VIPURxgIaPHnM4DC25VheJjXq88Tz4MYM+2mXkBlyW95hdbYMnKVBVx5yB1z7q5aOkXF6s+QsPY7BrGem9NMsr17yzmgUFNzZY1v1i0GBxi3oocBaitjFiMD/cJSSSEUoQdwL40NwvE8ch12QbXWzsxeHiO4OIM54uwRmc1dFglyvupIeoaqRbjNJ6fnA9zcqd6yxuZIvh7XUDKBtGA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4141 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: DB5EUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: e143f91a-3188-4070-3ce4-08d864913ad4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Tjsgq/L95obuZygjeW5FQzPu+8yYoyMvMDv+OPth8CCd5N1lhbxJskGxSj2q9mJCfnbav/UERDMPHk7PyJwpfIDWpIjCm7U+8/GrfWrAZVdkVtV7YstCTAlkdFTUihHrVgKfx4+NHvtkK5nJj92FL8OROCto3b92I/+vtlyGxTK3gNONV8xsveSFt59f+621av3ArtwYeyE1U3IUoxDtPPYAd3wsVcvUcl8w6KHbyo/RAYaSAUY0lEOslaCSMawx1psScQ6ZGjS0IZondQyIg50ucoFiJfnSCmFjUnyjIkWJos4gI06uSsV9FoRqilVgoqVC6S6QxQ8MO5XqlfN/VdmPqFBM+hvbRLwf2VKwsbm7/AeXhtrn7lSVHsiprdCBcXSCso1EIB3CrAIuubb5AbtJDddwtm6F/YZZu0QvCdHP4Za8NQDL4zy16ig3xvwNXy1q2va/nYui4CwYpBWqCTj821oM5LD/3cy7oGeoYhg= 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)(39860400002)(346002)(376002)(396003)(136003)(46966005)(336012)(2616005)(478600001)(956004)(44832011)(4326008)(8676002)(36756003)(7696005)(2906002)(54906003)(316002)(186003)(16526019)(26005)(21480400003)(44144004)(33964004)(82310400003)(8936002)(6916009)(81166007)(55016002)(356005)(82740400003)(70586007)(47076004)(1076003)(5660300002)(235185007)(66616009)(70206006)(8886007)(86362001)(2700100001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2020 16:03:53.0826 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0b998922-6454-47f1-5107-08d86491430d 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: DB5EUR03FT056.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5804 X-Spam-Status: No, score=-14.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_NONE, 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 Errors-To: gcc-patches-bounces@gcc.gnu.org Sender: "Gcc-patches" Hello, This patch backports the AArch64 support for Arm's Neoverse N2 CPU to GCC 10. Testing: * Bootstrapped and regtested on aarch64-none-linux-gnu. OK for GCC 10 branch? Thanks, Alex --- gcc/ChangeLog: * config/aarch64/aarch64-cores.def: Add Neoverse N2. * config/aarch64/aarch64-tune.md: Regenerate. * doc/invoke.texi: Document AArch64 support for Neoverse N2. diff --git a/gcc/config/aarch64/aarch64-cores.def b/gcc/config/aarch64/aarch64-cores.def index a3bd56f5b43..94e6a6a1329 100644 --- a/gcc/config/aarch64/aarch64-cores.def +++ b/gcc/config/aarch64/aarch64-cores.def @@ -139,6 +139,9 @@ AARCH64_CORE("neoverse-v1", neoversev1, cortexa57, 8_4A, AARCH64_FL_FOR_ARCH8_4 /* Qualcomm ('Q') cores. */ AARCH64_CORE("saphira", saphira, saphira, 8_4A, AARCH64_FL_FOR_ARCH8_4 | AARCH64_FL_CRYPTO | AARCH64_FL_RCPC, saphira, 0x51, 0xC01, -1) +/* Armv8.5-A Architecture Processors. */ +AARCH64_CORE("neoverse-n2", neoversen2, cortexa57, 8_5A, AARCH64_FL_FOR_ARCH8_5 | AARCH64_FL_I8MM | AARCH64_FL_BF16 | AARCH64_FL_F16 | AARCH64_FL_SVE | AARCH64_FL_SVE2 | AARCH64_FL_SVE2_BITPERM | AARCH64_FL_RNG | AARCH64_FL_MEMTAG, neoversen1, 0x41, 0xd49, -1) + /* ARMv8-A big.LITTLE implementations. */ AARCH64_CORE("cortex-a57.cortex-a53", cortexa57cortexa53, cortexa53, 8A, AARCH64_FL_FOR_ARCH8 | AARCH64_FL_CRC, cortexa57, 0x41, AARCH64_BIG_LITTLE (0xd07, 0xd03), -1) diff --git a/gcc/config/aarch64/aarch64-tune.md b/gcc/config/aarch64/aarch64-tune.md index 8e38052d6cf..7fda2294b8a 100644 --- a/gcc/config/aarch64/aarch64-tune.md +++ b/gcc/config/aarch64/aarch64-tune.md @@ -1,5 +1,5 @@ ;; -*- buffer-read-only: t -*- ;; Generated automatically by gentune.sh from aarch64-cores.def (define_attr "tune" - "cortexa34,cortexa35,cortexa53,cortexa57,cortexa72,cortexa73,thunderx,thunderxt88p1,thunderxt88,octeontx,octeontxt81,octeontxt83,thunderxt81,thunderxt83,emag,xgene1,falkor,qdf24xx,exynosm1,phecda,thunderx2t99p1,vulcan,thunderx2t99,cortexa55,cortexa75,cortexa76,cortexa76ae,cortexa77,cortexa65,cortexa65ae,ares,neoversen1,neoversee1,octeontx2,octeontx2t98,octeontx2t96,octeontx2t93,octeontx2f95,octeontx2f95n,octeontx2f95mm,a64fx,tsv110,thunderx3t110,zeus,neoversev1,saphira,cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35,cortexa73cortexa53,cortexa75cortexa55,cortexa76cortexa55" + "cortexa34,cortexa35,cortexa53,cortexa57,cortexa72,cortexa73,thunderx,thunderxt88p1,thunderxt88,octeontx,octeontxt81,octeontxt83,thunderxt81,thunderxt83,emag,xgene1,falkor,qdf24xx,exynosm1,phecda,thunderx2t99p1,vulcan,thunderx2t99,cortexa55,cortexa75,cortexa76,cortexa76ae,cortexa77,cortexa65,cortexa65ae,ares,neoversen1,neoversee1,octeontx2,octeontx2t98,octeontx2t96,octeontx2t93,octeontx2f95,octeontx2f95n,octeontx2f95mm,a64fx,tsv110,thunderx3t110,zeus,neoversev1,saphira,neoversen2,cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35,cortexa73cortexa53,cortexa75cortexa55,cortexa76cortexa55" (const (symbol_ref "((enum attr_tune) aarch64_tune)"))) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 0eb5b6bb135..4c08258bf57 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -16976,8 +16976,8 @@ performance of the code. Permissible values for this option are: @samp{cortex-a57}, @samp{cortex-a72}, @samp{cortex-a73}, @samp{cortex-a75}, @samp{cortex-a76}, @samp{cortex-a76ae}, @samp{cortex-a77}, @samp{cortex-a65}, @samp{cortex-a65ae}, @samp{cortex-a34}, -@samp{ares}, @samp{exynos-m1}, @samp{emag}, @samp{falkor}, -@samp{neoverse-e1},@samp{neoverse-n1},@samp{neoverse-v1},@samp{qdf24xx}, +@samp{ares}, @samp{exynos-m1}, @samp{emag}, @samp{falkor}, @samp{neoverse-e1}, +@samp{neoverse-n1}, @samp{neoverse-n2}, @samp{neoverse-v1}, @samp{qdf24xx}, @samp{saphira}, @samp{phecda}, @samp{xgene1}, @samp{vulcan}, @samp{octeontx}, @samp{octeontx81}, @samp{octeontx83}, @samp{octeontx2}, @samp{octeontx2t98}, @samp{octeontx2t96}