From patchwork Fri Jan 10 17:22:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alice Carlotti X-Patchwork-Id: 104505 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id F365B385AC26 for ; Fri, 10 Jan 2025 17:23:05 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20624.outbound.protection.outlook.com [IPv6:2a01:111:f403:2612::624]) by sourceware.org (Postfix) with ESMTPS id 4B444385735B for ; Fri, 10 Jan 2025 17:22:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4B444385735B Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 4B444385735B Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2612::624 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1736529747; cv=pass; b=Buk/P9NI0Xw/5Z3xZw6YQ2SCiJ6Ns4KkSgjmDNBBnzUBwqoYmX0KutgiGCoohM51OI+5oaXNjzO5UeRqb0iyKHgBMIRbfC5iYQT6/bbTeEJ0oo0AhnWZUtGw7IFIb0hkhco9areXo2jvYpNDOURp+JNZtFC0N/dOPnkZ7pbmpuY= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1736529747; c=relaxed/simple; bh=Wyy5UM3QN+pWy99PKIc4/Nk40WPATvn6DmikUZKbExw=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=dKmJNlm/EMvWD+KAvXqoyH1HQ3MEmckcmu18Sq5+MZ004ZOpkRVZcci2LaLiNLUFWutF6yqxfAq3glvG1PZtu8W/4A6UKVx1CvPn8XJs1+pRSN6yu6KkNq5CLzyzVa7M5crQjlLGKaXwRGMtwpBxtCVel9QCNOV7wt2Q/T/2xvw= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=r2KPV+jTaiWg2QgWyDC6YrJG/R/YjBuF+J6LtwDLWkt/f7cJkBf4q12JhYMDHcg3H4/SDt3Gv7/eiTo0ikb0GnGgn4I7qmM3Rya2mAjBkjGAILOOc6n66HvHA6Hh5pqQ/n1vTJMUfzacBw3+IWohPRA9ljVtvZB4SyhwRTyC4bM6dN8it/B/QY8ld36smaJNHBqCeq9lMRsbykC6XFbjRtiI7zky9YFQAOBR2UIeV1VgDPWWer2/xle5Er5ghJ3XujMr0XgxuCW2y9VrvjT/dTCejpGTq/nel+yRQb1pr39yHR/PpNtxzuQvYzWvTEJlPj5xpC/JWjzCa7duTLJlhw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=NNKPTg3ipWobZrOqr+ly3qka4kqHvyaAJ8cYYv4iVVw=; b=FBWqNQpsPUVuxAVYx6wjeQJwbfYsCp/vWDWRZLAgSIkbp2fRg+De6PfLe5lyniQ2kKdYZARwtlPUeRq0HqVqb3cDf4UzN+E4JNhdViAhN+oojuwvDUIxy8Ck5rdXXOwTT7CjMU/xhRgYZdsjGbSCoOV33xDfvOKjzYKTcs9T98HDnz4wpvI3SM1zqgGsxfgfu7vXOdgX4CnhxfNJ9Akxaj4KA6vBssiXvy9PjeFvhs68Mv/Ijgh4A2u6eEMNyYiGPPqbcZ8B/Zcr2tMDWlQgBEJmJViwvGLgcbKH6Nd+HgPLFBbMHI85GdCBM8xXXnSCOczXDDAmyGaCvOqwgG/IVg== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NNKPTg3ipWobZrOqr+ly3qka4kqHvyaAJ8cYYv4iVVw=; b=eiuJyLfdXGZjQxDd81WjMlkoYiom1JAuUdcosL1yd0e9AAzZwwiDL3OSRdpB9jQJCS6A2zzuJcdVbIJcpAGuOEVkGMgRU7RzII+NbKotRZcQIy+kl7yOiJA5IgVt8WmBIZndayG9i2pFEYoFRqKbMYuxXebohcZkYk+8C/lp0Jw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DU0PR08MB8255.eurprd08.prod.outlook.com (2603:10a6:10:411::9) by PA4PR08MB7457.eurprd08.prod.outlook.com (2603:10a6:102:2a4::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8335.14; Fri, 10 Jan 2025 17:22:24 +0000 Received: from DU0PR08MB8255.eurprd08.prod.outlook.com ([fe80::cbc8:c020:6a1b:d27a]) by DU0PR08MB8255.eurprd08.prod.outlook.com ([fe80::cbc8:c020:6a1b:d27a%3]) with mapi id 15.20.8335.011; Fri, 10 Jan 2025 17:22:24 +0000 Date: Fri, 10 Jan 2025 17:22:16 +0000 From: Andrew Carlotti To: gcc-patches@gcc.gnu.org Cc: Richard Sandiford , Kyrylo Tkachov Subject: [PATCH 02/11] aarch64: Replace duplicate cpu enums Message-ID: <9fb04f51-72f9-4fd3-ed07-4fe73f1a27fb@e124511.cambridge.arm.com> References: Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: LO0P123CA0003.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:354::11) To DU0PR08MB8255.eurprd08.prod.outlook.com (2603:10a6:10:411::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0PR08MB8255:EE_|PA4PR08MB7457:EE_ X-MS-Office365-Filtering-Correlation-Id: ed2876af-9fbe-411c-9de4-08dd319b596b x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014; X-Microsoft-Antispam-Message-Info: WWAcIniKE7xALFtMi5wE/wXL6Z3cjYzrD1hKrPXrHowylp0NqoiL2alU0NBSNIST7Z0dx/QQ+FXnQhxLLgPsLyt8dWhgCTWJYL767BmEVhdIqoKPB0cOnONhuzAM99hBBx9nALUZnd+LQUYjRYp3f35Y2qEKNmyjSD1/16vt/jBaMqbJMG/RnXvbk9mJTEVZNW8sBJ3LN/GwL0lLt4RgvjZRKLORm12frzSCIH/Fct7G1sJM0lAJAsL49xwr91R9BnD8Eq5hJeojKC9qwMdTNDhEs2z7l4BN2NIUfK5L/eUMiHqniIaYnkifmlRJz9AVvPng6kJim3PjuXQV+0K7SCFLsjzEvVsmvT9BG3Yqo6QUWSDRvsZHEfgM0lQaewfX57JfoKTAulHmbP2QkaXphrAbWZdkJAXNVarjcvzIgqjPgawNEZ43nir63ZYWz9VkbTAiGQ3mSymRZIv3NFnBftxRsk16/KIiFWwJAsWV9mdDEWO5bcY42rr68eSo2POYm5GaIoYFMM5G+3Io3KAAiZq9yT1IHugaT2c7VXDOEOnUMKN7hKi5Vad/b6STCb55ITLu9dqMEfJQ4GaxyxMdj5P4F/jdMCh2+9RvurNB0xMur80qhHg2cHRDB2y7Vis+cERpQ6vBtsxJAvVWkKBVeN3OXOwueS64z8TvSGy95tDXFhPzANBTYcD44C4MH9MmEBwG3sr4++Wk6u4UrdByRe9eeMzIFxCywYn9QmIovTDBJiJzKDVLnhzAXRirxTCcfjhASZLtMPtW0kQsScDL7fzmd+B1qMZ4XxiTM3L/EfDUszYJzaEbrQEY95mPiJA7BIDSuJK4St6WNY5gRIL1odO4yVVOjYUqR3yCRDLcc/1Vt4BqwEb9Cig8PCejo+N186jp3zRXMnFKP7vzmQf/qPXYLbOe6QtSY0BnTYDDUyHAXx54I2epRHXVkjj+8mln+iFJi377Pjc80aGedUbsQy3TdQ9FSEEYyZv85hq2AtTW8tOfz4lJnSrPUtqXNNAdKjveqvic0ne7EGixMJy7SztfcVFsjz1p/LpzYkp1dXQwe5R7nh7S1jtsSdFmr29fgP2SJeO+Ycz4oZaTlhE0gPKisTzlNEaW3pPVC1yiIllQttM7Qb2KIXe5Ad3rFiAKIPSlmQcBoednThExElqKz5NpGIA7LE4P2XlDwfxJQxHhbwMIQKCF6rR/NuywtShsgq/exw7SDGqPa7bzyvxRe+3leCrg2htK+2JMAJJkTPyDYsA6q7QNQ7l7H8P7V+otsetlyBStLqA0MZ7+DgBZmi889y0mUpTRhgaVlgYoxkRiixyDABfLDOg7RmhELrxzWyhy/VqgegyfVte30Rbtli3Xon4IFM/DBdxtDHHe0XsABeLA7yi3AZueEyEsZTiK X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR08MB8255.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 0/tE5KNfiBV5LGPTybS9ahBkzYQq+N7RWUsw4C60AzfthzMMDbGP8/QnADZMryqr5uXGJBoZVGXhn5eBuIYMqhEK41fNE8mArGlzYm5z9DIvJa5xYeNVIZ1fx1SHYIJqUHJL7yxNLvVMQGJu+sz/zFFoG4uzpTlhfVVYIesmSxTIZAmsEcwu2mAQkTaxKi8zfW9dZ0vc1mPCVW0OhLpLh3vm6C8Bb+GCDJAWRtpmMgboecN7seAg4erqdF60zkyg03uGm/HvXwjMr2FqDEqVO+AqzVf6xnDxvtPRcZMkZWmqcvrISocmxQW0HWQatS4S+lCUfP6NdcF+8pR8piokSmO8CJXnsL2CYqHyh9FsDURoWkSDRmTbhfQAJqbCBaCJ+N/DhX3HnJzfPP4fBs2EW5aOZqnarTrD6hsiR3829Dg1CyBsYANFUzutaiJfCkeCScm+hL6txSpew92NI/7gSPmTPa+E3gqnw1bWLIOPNFn3mv3ox7anp8Ng6mUQ24X2t4xj8Vv4k7PmXIzNn4Knsy82OWNLSYo9X76wnv/BH2duSaQWOkCvO44mRv28X8eai9eMZ/sekKjPlnF1lz33Xw3898i/+KUi4plbln0w9OF153D5hiqtForKlb49y061YGB2O+MUlXXo1CvBO7aF1+7TasHf9rW641dpEToSqflXEv2twD/Uv2QfhufgiqUYV2kDVxiPHquLn49zos5pm0C8MOtNerbaSozZ9XZ5R+lHVxo8NlWNa8TOkEHhtcEvWwqo/GnyrtwYusw3cAZ27PKRx6Nrlmtt69eEK7DMDaFsBNsRhZiV2GGFtTIA0g4TN2N/zb7JwJZZF1bwr2wesLios2k+WgwvEtLjo5cxrsC4wW7gvoCkeAJYiku/RyvtLBuZ3wmK42URV7aAcQgDRiEwMYowsdxs6BvlXPs5/p3u6KAN3SbCJR57pC+B2kaHMFLVmi49UyaK/GplgAxcx8vFmrsH6jmPqT0/ojz/5JUaL5+j3V1JYc40QLiG29piNvpF4XWYQop+fna6PaoIWkrfoYEzHQIZ8U18cswefc2wkTPo0ruU3RX8huJDrGz9LW1IBEIndyKaeHz44nXYrOJblbR7Yx19nM9iJtDcozABT4fF2pfymWJig0bqFxvaymnNoRcJ8eTgNFZyKBVxVl4xwtPfkbQynk77tR23VBsAq/zUtGqqaJMNz+lCgc4ZvcK1lqB5+kGBBMqjgIrSLnDyc57b/KjmqrfTe2PHE6ATIEbgzZb10zguWLVfvzs48Mv+N0ig+AcX6YGLlXHk07AjC8C05DOLDCR0Ggvj61h6B+mPsAK/nhc1OEDBLuSqCjvq+6skiPJsHW2qohDvwXBoPqxFYIYK3c9irgq2lB/x2Wo1HDlNOYBZ1irHAqeAYEN76UcNh3gC/84p9Nh3KIi5mkDIIaQOQ/2oZUV3Q6arxFgxlYf2VaK2EdhSgf/0yLyOzzEcqSob0N01UAi9HVk3r2vUSmhVWNU+oAgNxfwSMnOQKQWtl9obKMmm+w9KDB5evDiWOSRmqS6GjLe5mGSw5zJ7HVKhziAHOSy9YjScS2GgHFALDqhUv0PVYbtzuvDLNVy/M3ieh/zGVnSlew== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: ed2876af-9fbe-411c-9de4-08dd319b596b X-MS-Exchange-CrossTenant-AuthSource: DU0PR08MB8255.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2025 17:22:24.7555 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f+z/bKJh5CN6+VtL2a6YO6gcGFrj/PVzEmY1j6SxlDJwwktDTi5Tel1kXVfYy2+Q23Tl+TvOkghQ2kxmq7RQpQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7457 X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, GIT_PATCH_0, KAM_LOTSOFHASH, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_NONE, TXREP 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: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org Replace `enum aarch64_processor` and `enum target_cpus` with `enum aarch64_cpu`, and prefix the entries with `AARCH64_CPU_`. Also rename aarch64_none to aarch64_no_cpu. gcc/ChangeLog: * config/aarch64/aarch64-opts.h (enum aarch64_processor): Rename to... (enum aarch64_cpu): ...this, and rename the entries. * config/aarch64/aarch64.cc (aarch64_type): Rename type and initial value. (struct processor): Rename member types. (all_architectures): Rename enum members. (all_cores): Ditto. (aarch64_get_tune_cpu): Rename type and enum member. * config/aarch64/aarch64.h (enum target_cpus): Remove. (TARGET_CPU_DEFAULT): Rename default value. (aarch64_tune): Rename type. * config/aarch64/aarch64.opt: (selected_tune): Rename type and default value. diff --git a/gcc/config/aarch64/aarch64-opts.h b/gcc/config/aarch64/aarch64-opts.h index 3f0b1e9414c32ce5cb0ae808b2bb38bee86b40d5..a6ca5cf016b05982572297a434b53a9f8fc1443b 100644 --- a/gcc/config/aarch64/aarch64-opts.h +++ b/gcc/config/aarch64/aarch64-opts.h @@ -38,13 +38,13 @@ typedef bbitmap<2> aarch64_feature_flags; #endif /* The various cores that implement AArch64. */ -enum aarch64_processor +enum aarch64_cpu { #define AARCH64_CORE(NAME, INTERNAL_IDENT, SCHED, ARCH, FLAGS, COSTS, IMP, PART, VARIANT) \ - INTERNAL_IDENT, + AARCH64_CPU_##INTERNAL_IDENT, #include "aarch64-cores.def" /* Used to mark the end of the processor table. */ - aarch64_none + aarch64_no_cpu }; enum aarch64_arch diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h index 1ab49e229b080d29187690abdb0c0767c12a157a..cee1c7f04cefc4789ca4b9f4e5b946ea642c5e47 100644 --- a/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h @@ -924,16 +924,9 @@ enum reg_class /* CPU/ARCH option handling. */ #include "config/aarch64/aarch64-opts.h" -enum target_cpus -{ -#define AARCH64_CORE(NAME, INTERNAL_IDENT, SCHED, ARCH, FLAGS, COSTS, IMP, PART, VARIANT) \ - TARGET_CPU_##INTERNAL_IDENT, -#include "aarch64-cores.def" -}; - /* If there is no CPU defined at configure, use generic as default. */ #ifndef TARGET_CPU_DEFAULT -# define TARGET_CPU_DEFAULT TARGET_CPU_generic_armv8_a +# define TARGET_CPU_DEFAULT AARCH64_CPU_generic_armv8_a #endif /* If inserting NOP before a mult-accumulate insn remember to adjust the @@ -949,7 +942,7 @@ enum target_cpus aarch64_final_prescan_insn (INSN); \ /* The processor for which instructions should be scheduled. */ -extern enum aarch64_processor aarch64_tune; +extern enum aarch64_cpu aarch64_tune; /* RTL generation support. */ #define INIT_EXPANDERS aarch64_init_expanders () diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc index 330a04c147a97bcd99d6819290d7f82ff5066a44..d8a2916d8230cc25122f21818b88fd347e72693a 100644 --- a/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc @@ -357,7 +357,7 @@ static bool aarch64_print_address_internal (FILE*, machine_mode, rtx, aarch64_addr_query_type); /* The processor for which instructions should be scheduled. */ -enum aarch64_processor aarch64_tune = cortexa53; +enum aarch64_cpu aarch64_tune = AARCH64_CPU_cortexa53; /* Global flag for PC relative loads. */ bool aarch64_pcrelative_literal_loads; @@ -451,8 +451,8 @@ aarch64_tuning_override_functions[] = struct processor { const char *name; - aarch64_processor ident; - aarch64_processor sched_core; + aarch64_cpu ident; + aarch64_cpu sched_core; aarch64_arch arch; aarch64_feature_flags flags; const tune_params *tune; @@ -462,20 +462,20 @@ struct processor static CONSTEXPR const processor all_architectures[] = { #define AARCH64_ARCH(NAME, CORE, ARCH_IDENT, D, E) \ - {NAME, CORE, CORE, AARCH64_ARCH_##ARCH_IDENT, \ + {NAME, AARCH64_CPU_##CORE, AARCH64_CPU_##CORE, AARCH64_ARCH_##ARCH_IDENT, \ feature_deps::ARCH_IDENT ().enable, NULL}, #include "aarch64-arches.def" - {NULL, aarch64_none, aarch64_none, aarch64_no_arch, 0, NULL} + {NULL, aarch64_no_cpu, aarch64_no_cpu, aarch64_no_arch, 0, NULL} }; /* Processor cores implementing AArch64. */ static const struct processor all_cores[] = { #define AARCH64_CORE(NAME, IDENT, SCHED, ARCH, E, COSTS, G, H, I) \ - {NAME, IDENT, SCHED, AARCH64_ARCH_##ARCH, \ + {NAME, AARCH64_CPU_##IDENT, AARCH64_CPU_##SCHED, AARCH64_ARCH_##ARCH, \ feature_deps::cpu_##IDENT, &COSTS##_tunings}, #include "aarch64-cores.def" - {NULL, aarch64_none, aarch64_none, aarch64_no_arch, 0, NULL} + {NULL, aarch64_no_cpu, aarch64_no_cpu, aarch64_no_arch, 0, NULL} }; /* Internal representation of system registers. */ typedef struct { @@ -18559,9 +18559,9 @@ initialize_aarch64_tls_size (struct gcc_options *opts) /* Return the CPU corresponding to the enum CPU. */ static const struct processor * -aarch64_get_tune_cpu (enum aarch64_processor cpu) +aarch64_get_tune_cpu (enum aarch64_cpu cpu) { - gcc_assert (cpu != aarch64_none); + gcc_assert (cpu != aarch64_no_cpu); return &all_cores[cpu]; } diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt index da9e0c18d47781dee1b954735cbc28da1e7f1846..db462035bd26013a784a8403e871298247e0b5bf 100644 --- a/gcc/config/aarch64/aarch64.opt +++ b/gcc/config/aarch64/aarch64.opt @@ -25,7 +25,7 @@ HeaderInclude config/arm/aarch-common.h TargetVariable -enum aarch64_processor selected_tune = aarch64_none +enum aarch64_cpu selected_tune = aarch64_no_cpu TargetVariable enum aarch64_arch selected_arch = aarch64_no_arch