From patchwork Fri Oct 2 14:51:39 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Coplan X-Patchwork-Id: 1375837 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=JLk7Ai3M; 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 4C2tHl0xr8z9s1t for ; Sat, 3 Oct 2020 00:52:02 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 90B29386F823; Fri, 2 Oct 2020 14:52:00 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 90B29386F823 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1601650320; bh=CcbuBgiBuPDVkEKAkxcoojPlVsgQOjXwS9EZ4vF78aQ=; h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=JLk7Ai3Mneg/B7z73KavKXg9afNh9i7JAAiw1QNnn6ZCy0+FMdnVlL2xbA2aD3FTz H9xibf8jwRsHp9BfKPpr/zi14uHPh02KnykbZULINijAAV2TRnQP6bUzQHhZtXq8oD 06XXocv/eHLrUWTu/U/RCeqFpIJFy1l0cjPQXy2w= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2074.outbound.protection.outlook.com [40.107.20.74]) by sourceware.org (Postfix) with ESMTPS id B0BD43865492 for ; Fri, 2 Oct 2020 14:51:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org B0BD43865492 Received: from DB6PR07CA0200.eurprd07.prod.outlook.com (2603:10a6:6:42::30) by VE1PR08MB5647.eurprd08.prod.outlook.com (2603:10a6:800:1b2::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.32; Fri, 2 Oct 2020 14:51:56 +0000 Received: from DB5EUR03FT021.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:42::4) by DB6PR07CA0200.outlook.office365.com (2603:10a6:6:42::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.15 via Frontend Transport; Fri, 2 Oct 2020 14:51:55 +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 DB5EUR03FT021.mail.protection.outlook.com (10.152.20.238) 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:55 +0000 Received: ("Tessian outbound 34b830c8a0ef:v64"); Fri, 02 Oct 2020 14:51:55 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 8af2c18ef36b1d46 X-CR-MTA-TID: 64aa7808 Received: from 4c6d8e8ab60e.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 7736C83E-D62B-4C60-987A-42EF71F08D1D.1; Fri, 02 Oct 2020 14:51:50 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4c6d8e8ab60e.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 02 Oct 2020 14:51:50 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AqYazeOCHaxLFmpnVTiaI0Sr8g+u0xUItggSmK3gqepfwl5lGivFh7XtMwmXZSpezBnJ0+6IcCUHVnyezGY2WeEU/sqPmBgiECPSlO3DQaSBs6uVjnL0+3vV8ur6Cu4joiAUaV/qSUAOM+LLJlOqVASbMKokFZ/kKRPtSTRRWo6rxJT3MWYbb+D0wHCWjV470I88jmoahYIDxbQFAZg5lVIa/clMoil5E1+kZ1r7XSkguS+bWoR7GRwrUwYJf+Xzgnj4rV6R/lE1De9TpWARTOpkyAGqsDOM+0UMc+6i+eO0pd6S/MZTftY+D/5Dd/UVfzRcH+iT4FLurRPnJKItKQ== 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=CcbuBgiBuPDVkEKAkxcoojPlVsgQOjXwS9EZ4vF78aQ=; b=kEqM1OPKvL4O2FcYkuUiPt3030DN3L6G3htC70gNg/6OmKdfU/keMtlqctqe4T1cA5jNQUghBQ8nqI+kymU1eDGU2eyQtWZxTm/JMjVnitECMaFPDClznv9Ole2UTZ5vScAgMBQiwJexPFXv8H/hMrD7cvkZn1E1+zTqMz/ybhmyHwftG2tkzNdJIfMg5ampZsMbFMJXMKvORvN/Tj40QMSM956IkpViZWrsO4XcEKL4jx0sMVXfybz4nGUjrqq2H5OMrmdfaowZlnu/pLOh6AbIOxM1MqpPv7VHNUFctFMChsQAYNerGQjP6uLgH9xSDWSAx/macu1j1uoEk5Ttdg== 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 VE1PR08MB5119.eurprd08.prod.outlook.com (2603:10a6:803:114::20) 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:51:47 +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:51:47 +0000 Date: Fri, 2 Oct 2020 15:51:39 +0100 To: gcc-patches@gcc.gnu.org Subject: [PATCH][GCC 8] arm: Add support for Neoverse N2 CPU Message-ID: <20201002145139.gp67hagfa6tyvlrt@arm.com> Content-Disposition: inline User-Agent: NeoMutt/20171215 X-Originating-IP: [217.140.106.49] X-ClientProxiedBy: DM5PR06CA0042.namprd06.prod.outlook.com (2603:10b6:3:5d::28) 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 DM5PR06CA0042.namprd06.prod.outlook.com (2603:10b6:3:5d::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.36 via Frontend Transport; Fri, 2 Oct 2020 14:51:45 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 4b6d73d6-19b2-4417-2722-08d866e2b4ff X-MS-TrafficTypeDiagnostic: VE1PR08MB5119:|VE1PR08MB5647: 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:5516;OLM:5516; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: RXUVrmCUvRXzFybiF173iiT4CBeYc6p/rdag9X2deT0BStioZJi5S9AHD17djAUWyWvspDqWrpIalBiwA6J3nZ+YKf26O33YARnQiO/UJOLuUr/hleVDfHsaZS74OlwI1O6ofZVYk9yuTHpFLzk2M8sKP/c7Fm1NWHe25t47azsM+MV6Q4QIFZzaoIcCW3BE0TMvL6tEZtyZbbFu5/QyHE65hEbJ4xVbs3GUKqv7HSfBRRJ1F68Gz41MAjYYYgZzmDjDW2mpi11EGSWPZ55Gn2m/GWhYPQWTQYBbfD0saC4wD3jTAkNrbEjsHYPH3urRSjxl1OaJ46H78Ex1iz1KobpqJGE8oe2ftktjNghIspZv1HYPrU54azYRHaUsC6bw 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)(39850400004)(136003)(346002)(376002)(366004)(21480400003)(16526019)(26005)(55016002)(54906003)(36756003)(33964004)(52116002)(2616005)(5660300002)(44832011)(7696005)(186003)(478600001)(956004)(66946007)(8936002)(66556008)(2906002)(66616009)(235185007)(44144004)(6916009)(1076003)(8886007)(316002)(8676002)(86362001)(4326008)(66476007)(6666004)(2700100001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: Ow4EMgQ3ohfm7RJkIOAN5CZ2UHfsNoSH5piNrZrfxiQjVP3MF5jx/knVn6Er7OdnmZqCPN6aTPK35CQIkvcztxagoeSj+NUccOquk6lRCNetjFJr+c0ag6TLWE6PpxCRAjjLqE5wNnhrY/HSixHhTpbI1tveutsYOB62N6tD63nVD6Bh4kGBUlOLx/M4a3x3C6fK+EhwjDYHMVZbesDRd0rafx9DdBYBxDOFtk5WjKhBsM+nzdt1rVA1yuH16FRj+mhdWxBb8FgkJka+M8tq4ZEuMcVabYUj4DMx4m5nGC5NOA8jjmULvafFWQ+dAvFxUD2bK/3H5km6a//9Ms80Fia9SpAAGfTfjVrIWcA1pKLjBQkAQOvSiVc+CJSAwDoA+E9qxSiY0l9W+8Qfn55j2dOWna0jai7iA++M+ldc+t/5GCWaXRVU8TDJELmcxgyYtV6bXNqO2GhJUM17nuLSk+oLD9hN70UArQ0MwGvsQTjqJu2UoKoB+rPdlvB4JCRScHS3ict+dBCc1DLJPoM6dPH5hGcMwCkz02W9e/v3Y5nRHMLBl2SyE8UHRqLwKaT9BqpcRYixDGDctXtIAPDqd4hPmXQaGnsF87yf5+5RfZAKC/32E6FOlr+KcpsADvP2kErzB8sP8NfBLhOaSiHWoA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5119 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: DB5EUR03FT021.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 8b79d6ff-9022-442e-62bf-08d866e2b009 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: t6MX9oxkvP3hQ9jCy61hNmvIubSm9f9+RhFJNQS87lua9IYfBEXKOaG3xeg/nZS7Kn1gizwQ6sFCuWh5mpsB0WIKgOfO6aaOlCGf0+OxnpNUY4c8cKaKbTp8DmSA8AEC+4S4GtePYMuC1N0Y6A+eeAi33nia7r/VZehTyRWMXTOqUA42NCM7gI6cRiYsYQUiiFGyVsaDRXK+C+Y5OnODuuzyftJcdeqlJY3VHNAOKrNH0+aEOHdVW7LT0w2hcW7urFTziPG6AdXr1k4HxKyzWbDQABeB5jEjESRk8Icf1JmmRyYeWO7JOXTeakhigXoHL0AGIxrqL2cOGTQkhIUozn4sUKHRVu+6+uFWF1qzoMuIEAl2hIoNCazx/d23yCXw5yAALW5pjN8MSNhys9GHG2RPebd6JJfazrTfOh0kWGU= 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)(346002)(39850400004)(376002)(396003)(136003)(46966005)(21480400003)(8936002)(44144004)(33964004)(7696005)(235185007)(81166007)(82310400003)(5660300002)(6666004)(356005)(478600001)(1076003)(316002)(2616005)(956004)(70586007)(336012)(47076004)(8676002)(86362001)(36756003)(66616009)(70206006)(4326008)(82740400003)(2906002)(26005)(6916009)(186003)(16526019)(44832011)(8886007)(55016002)(54906003)(2700100001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Oct 2020 14:51:55.8117 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4b6d73d6-19b2-4417-2722-08d866e2b4ff 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: DB5EUR03FT021.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5647 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 8. Testing: * Bootstrapped and regtested on arm-none-linux-gnueabihf. OK for GCC 8 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. * config/arm/driver-arm.c (arm_cpu_table): Add Neoverse N2. * 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 edfe5b378da..39a9e8b76ba 100644 --- a/gcc/config/arm/arm-cpus.in +++ b/gcc/config/arm/arm-cpus.in @@ -1588,6 +1588,17 @@ begin cpu neoverse-v1 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.4-a+fp16 + option crypto add FP_ARMv8 CRYPTO + costs cortex_a57 +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 36dba62003a..a0fb8323ee3 100644 --- a/gcc/config/arm/arm-tables.opt +++ b/gcc/config/arm/arm-tables.opt @@ -354,6 +354,9 @@ Enum(processor_type) String(cortex-a75.cortex-a55) Value( TARGET_CPU_cortexa75co 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 c972ce55576..ea3dbcda43f 100644 --- a/gcc/config/arm/arm-tune.md +++ b/gcc/config/arm/arm-tune.md @@ -57,6 +57,6 @@ cortexa73,exynosm1,xgene1, cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35, cortexa73cortexa53,cortexa55,cortexa75, - cortexa75cortexa55,neoversev1,cortexm23, - cortexm33,cortexr52" + cortexa75cortexa55,neoversev1,neoversen2, + cortexm23,cortexm33,cortexr52" (const (symbol_ref "((enum attr_tune) arm_tune)"))) diff --git a/gcc/config/arm/driver-arm.c b/gcc/config/arm/driver-arm.c index a53c2272864..45ad92ef0e0 100644 --- a/gcc/config/arm/driver-arm.c +++ b/gcc/config/arm/driver-arm.c @@ -56,6 +56,7 @@ static struct vendor_cpu arm_cpu_table[] = { {"0xd09", "armv8-a+crc", "cortex-a73"}, {"0xd05", "armv8.2-a+fp16+dotprod", "cortex-a55"}, {"0xd0a", "armv8.2-a+fp16+dotprod", "cortex-a75"}, + {"0xd49", "armv8.4-a+fp16", "neoverse-n2"}, {"0xc14", "armv7-r", "cortex-r4"}, {"0xc15", "armv7-r", "cortex-r5"}, {"0xc17", "armv7-r", "cortex-r7"}, diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index b91366daafd..78ca7738df2 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -16334,8 +16334,8 @@ Permissible names are: @samp{arm2}, @samp{arm250}, @samp{cortex-a9}, @samp{cortex-a12}, @samp{cortex-a15}, @samp{cortex-a17}, @samp{cortex-a32}, @samp{cortex-a35}, @samp{cortex-a53}, @samp{cortex-a55}, @samp{cortex-a57}, @samp{cortex-a72}, @samp{cortex-a73}, @samp{cortex-a75}, -@samp{neoverse-v1}, @samp{cortex-r4}, @samp{cortex-r4f}, @samp{cortex-r5}, -@samp{cortex-r7}, @samp{cortex-r8}, @samp{cortex-r52}, +@samp{neoverse-v1}, @samp{neoverse-n2}, @samp{cortex-r4}, @samp{cortex-r4f}, +@samp{cortex-r5}, @samp{cortex-r7}, @samp{cortex-r8}, @samp{cortex-r52}, @samp{cortex-m33}, @samp{cortex-m23}, @samp{cortex-m7},