From patchwork Fri Aug 23 12:21:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wilco Dijkstra X-Patchwork-Id: 1152144 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-507600-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="TV+m06Y3"; dkim=pass (1024-bit key; unprotected) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="4FfJOaiY"; dkim=pass (1024-bit key) header.d=armh.onmicrosoft.com header.i=@armh.onmicrosoft.com header.b="4FfJOaiY"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46FL9g4lp8z9s3Z for ; Fri, 23 Aug 2019 22:21:41 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:content-type :content-transfer-encoding:mime-version; q=dns; s=default; b=nYI lgqbrSsLj2C7d7EwgfvC9+O/2iVd2lTXHlFr5h6dFwdqvPtdkPDHyq//UWbIhGbO Lekshj4+Nr35PDk80OJSeeUm35T1qTcqMeiW7ZEKi9J631aKZ5XiOvyE9alib3uj lOjmI1zslCEQsxEb0EQpfm24/fkOevbm6vC1oOrs= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:content-type :content-transfer-encoding:mime-version; s=default; bh=bjxoDEvmr Sk9zm09OkG9L7ZVmSE=; b=TV+m06Y3EPbmLkK15GhAjm92dpitbHU5Qk+Kmi4lz IrXOw4n9kxqQvzd/pb5WiZv8jhVO6shfnX9AvO1YaWyJ9Vm+MjDe09xMGgWaU93N jukBt7sK0kBalVah4hWQuyg5zpwCxE6a8Nc3b8saQVAvsNjNwLYdwFMyL1U3iJ76 io= Received: (qmail 40129 invoked by alias); 23 Aug 2019 12:21:32 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 40110 invoked by uid 89); 23 Aug 2019 12:21:32 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-19.3 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_LOTSOFHASH, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.1 spammy=pcs X-HELO: EUR04-VI1-obe.outbound.protection.outlook.com Received: from mail-eopbgr80041.outbound.protection.outlook.com (HELO EUR04-VI1-obe.outbound.protection.outlook.com) (40.107.8.41) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 23 Aug 2019 12:21:29 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k8OQ/xvdpZtNHXu9hC1pzJ55V7EjAjMj3AL3mzIIsBQ=; b=4FfJOaiY/Q8uoOTDAXioTQGbh5IhK4qDz5m2yo5aGGJtIqxdLBPEPV7s8UR8riBAxhda/EKl9efzXDgqjoqdvKDuZKvnz1yivRJGaqYrOCsnWp9PF9a9MixaK4h9+2o0IWyooiIbhrO1MN6QpKapwohFwY89rfO7Eiot0yh+zBk= Received: from VI1PR08CA0102.eurprd08.prod.outlook.com (2603:10a6:800:d3::28) by HE1PR0801MB1849.eurprd08.prod.outlook.com (2603:10a6:3:89::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2178.18; Fri, 23 Aug 2019 12:21:23 +0000 Received: from AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com (2a01:111:f400:7e08::204) by VI1PR08CA0102.outlook.office365.com (2603:10a6:800:d3::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.2199.15 via Frontend Transport; Fri, 23 Aug 2019 12:21:22 +0000 Authentication-Results: spf=temperror (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=temperror action=none header.from=arm.com; Received-SPF: TempError (protection.outlook.com: error in processing during lookup of arm.com: DNS Timeout) Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT035.mail.protection.outlook.com (10.152.16.119) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.2199.13 via Frontend Transport; Fri, 23 Aug 2019 12:21:21 +0000 Received: ("Tessian outbound 4ee777a495a5:v27"); Fri, 23 Aug 2019 12:21:20 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 532134082679325b X-CR-MTA-TID: 64aa7808 Received: from eb7b1778065b.1 (ip-172-16-0-2.eu-west-1.compute.internal [104.47.4.57]) by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1E441CAB-C03C-4B49-8FA7-3AE59AD5B7B0.1; Fri, 23 Aug 2019 12:21:15 +0000 Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-am5eur02lp2057.outbound.protection.outlook.com [104.47.4.57]) by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id eb7b1778065b.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 23 Aug 2019 12:21:15 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GLn3n1+QNhD5eHKyDg2fuPj4herdERQZuXsBxA/G9Lt3lU6igCb7rPaeSgntVukDgRRLn5fo9SgwpWAudp3+nmLnoWXzknPl3zUjZ0HhkVRUUQagZI87hjQunhBvMckNdBHbKmM4uR/mMjRfblT/9byFRb2jf5GkZfdIuZt60XAwPbo396p0kZxzofPb3hnnv64m0VX4m1LoZYsAMycEK3as+b4oJDKwVxbqqS702idanFJBH7bcx5dHSHwJqNnJGuF4LhAShA8+Z5gX+IYJ6LDkl6Tc8S5VZPkNA0N2AgEA80gxOpyMCtw7oT60V6L2SrgZiknmrwl8AecyHIqqpw== 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=k8OQ/xvdpZtNHXu9hC1pzJ55V7EjAjMj3AL3mzIIsBQ=; b=CQ9/sxicjOTqhSKgQHyHx8glnzz46tXwaJsDAomRg3JgZyh83lsYKJVxi//1Rbqcf61LzwsbrYKS7pQDkIwxAPku+RzSj3pO7NhYeISq4qjZz3GtH09YN/cSAHkOOjrAFf5Mx1d7JEkKe7scvgmMHkyChZcCGIfx+gzqZ5H6cZMYR6Es3aNTnfi1HdTLMzXpkSsfCo3JFEh4It+9Sb3zrfPozWnyRoL5CEiOhmwokh84NXy56ykI3xx5uT+fQLE88ke0zYOhCLjTYneRUSpOJtXf61GQNvj7Jkg7YUGg6dYLsJgMztC4nfl5nI48XDjlSjjNJEzkeGgURo61PQcJQw== 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=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k8OQ/xvdpZtNHXu9hC1pzJ55V7EjAjMj3AL3mzIIsBQ=; b=4FfJOaiY/Q8uoOTDAXioTQGbh5IhK4qDz5m2yo5aGGJtIqxdLBPEPV7s8UR8riBAxhda/EKl9efzXDgqjoqdvKDuZKvnz1yivRJGaqYrOCsnWp9PF9a9MixaK4h9+2o0IWyooiIbhrO1MN6QpKapwohFwY89rfO7Eiot0yh+zBk= Received: from VI1PR0801MB2127.eurprd08.prod.outlook.com (10.168.62.22) by VI1PR0801MB1773.eurprd08.prod.outlook.com (10.168.68.13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2178.16; Fri, 23 Aug 2019 12:21:13 +0000 Received: from VI1PR0801MB2127.eurprd08.prod.outlook.com ([fe80::99c:c41d:df0:551e]) by VI1PR0801MB2127.eurprd08.prod.outlook.com ([fe80::99c:c41d:df0:551e%8]) with mapi id 15.20.2178.020; Fri, 23 Aug 2019 12:21:12 +0000 From: Wilco Dijkstra To: GCC Patches , Kyrylo Tkachov CC: nd Subject: [PATCH][ARM] Deprecate -mneon-for-64bits Date: Fri, 23 Aug 2019 12:21:12 +0000 Message-ID: Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Wilco.Dijkstra@arm.com; X-Microsoft-Antispam-Untrusted: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600166)(711020)(4605104)(1401327)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:VI1PR0801MB1773; X-MS-Exchange-PUrlCount: 1 x-ms-exchange-transport-forked: True x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:249;OLM:249; X-Forefront-Antispam-Report-Untrusted: SFV:NSPM; SFS:(10009020)(4636009)(136003)(366004)(376002)(396003)(346002)(39860400002)(199004)(54534003)(189003)(64756008)(476003)(5660300002)(66476007)(6506007)(7696005)(186003)(25786009)(26005)(3846002)(316002)(102836004)(6116002)(6636002)(99286004)(8936002)(81166006)(33656002)(4326008)(486006)(2906002)(53936002)(52536014)(86362001)(66946007)(9686003)(110136005)(81156014)(30864003)(8676002)(966005)(71190400001)(71200400001)(14444005)(478600001)(305945005)(7736002)(14454004)(74316002)(55016002)(256004)(66556008)(6306002)(6436002)(76116006)(66446008)(66066001); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0801MB1773; H:VI1PR0801MB2127.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info-Original: PPQm096X7tSU/tmF8IZgoo+u30qChqNTVag3EVkg1qvtHm7W1zmgSE2OvONroCWGhTU/0COd3ssrTiSk9Xrsr8gPzEfvu8lXOWSxoBfCUdBYS2RMR7GYy+n109N5NcP0TlTVQ8h6jiWX6/mxDRcndkZK+JO+fxjNFkV/JirdK9uWCpRICuYu9yL85G4tuaUOMdVhHf2FgtOmocIXBoI0EoU/LaE9KDB6heqGTzfRc6g/+UlaqX1umKbiLJPyfrlYWdz7YD1NSBQ46HmPxA1bkZytibmtkFOIVvqEebd8/qN+EUfXIkwCuvcrg36lkY5otp0wW31H7gSkEkRji8z9btozm9sV+WuwlFCKwH9+/mg/KUnQXwh/3RJWeJyDCMFwvsxY5BNa8zfnnXJZ0zpr0WSkY3m5xuNm2mHpb+CJD9c= MIME-Version: 1.0 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Wilco.Dijkstra@arm.com; X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 4c093154-6a5d-476b-ec0f-08d727c46352 Hi, As Kyrill suggested in https://gcc.gnu.org/ml/gcc-patches/2019-08/msg01551.html -mneon-for-64bits has no effect anymore so we should deprecate it in GCC10: Deprecate -mneon-for-64bits since it no longer has any effect after the DImode codegen improvements. OK for commit? ChangeLog: 2019-08-22 Wilco Dijkstra * gcc/config/arm/arm.opt (mneon-for-64bits): Deprecate. * gcc/config/arm/arm.h (TARGET_PREFER_NEON_64BITS): Remove. (prefer_neon_for_64bits): Remove. * gcc/config/arm/arm.c (prefer_neon_for_64bits): Remove. (tune_params): Remove PREF_NEON_64_FALSE uses. (arm_option_override): Remove prefer_neon selection code. (arm_print_tune_info): Remove prefer_neon_for_64bits. * gcc/config/arm/arm-protos.h (tune_params): Remove prefer_neon_for_64bits. (prefer_neon_for_64bits): Remove. diff --git a/gcc/config/arm/arm-protos.h b/gcc/config/arm/arm-protos.h index bf2bf1c3b050365449b422976d7c0b39245f1490..8386d89fc0b955e85692f87fedd8710010ad2a35 100644 --- a/gcc/config/arm/arm-protos.h +++ b/gcc/config/arm/arm-protos.h @@ -327,7 +327,6 @@ struct tune_params /* Prefer 32-bit encoding instead of flag-setting 16-bit encoding. */ enum {DISPARAGE_FLAGS_NEITHER, DISPARAGE_FLAGS_PARTIAL, DISPARAGE_FLAGS_ALL} disparage_flag_setting_t16_encodings: 2; - enum {PREF_NEON_64_FALSE, PREF_NEON_64_TRUE} prefer_neon_for_64bits: 1; /* Prefer to inline string operations like memset by using Neon. */ enum {PREF_NEON_STRINGOPS_FALSE, PREF_NEON_STRINGOPS_TRUE} string_ops_prefer_neon: 1; @@ -472,10 +471,6 @@ extern int arm_arch_thumb_hwdiv; /* Nonzero if chip disallows volatile memory access in IT block. */ extern int arm_arch_no_volatile_ce; -/* Nonzero if we should use Neon to handle 64-bits operations rather - than core registers. */ -extern int prefer_neon_for_64bits; - /* Structure defining the current overall architectural target and tuning. */ struct arm_build_target { diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index 50cb2c92e2c89562407fb89008b69f35b2a61fbe..8d023389eec469ad9c8a4e88edebdad5f3c23769 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -313,9 +313,6 @@ emission of floating point pcs attributes. */ /* Nonzero if disallow volatile memory access in IT block. */ #define TARGET_NO_VOLATILE_CE (arm_arch_no_volatile_ce) -/* Should NEON be used for 64-bits bitops. */ -#define TARGET_PREFER_NEON_64BITS (prefer_neon_for_64bits) - /* Should constant I be slplit for OP. */ #define DONT_EARLY_SPLIT_CONSTANT(i, op) \ ((optimize >= 2) \ @@ -509,10 +506,6 @@ extern int arm_arch_thumb_hwdiv; /* Nonzero if chip disallows volatile memory access in IT block. */ extern int arm_arch_no_volatile_ce; -/* Nonzero if we should use Neon to handle 64-bits operations rather - than core registers. */ -extern int prefer_neon_for_64bits; - /* Nonzero if we shouldn't use literal pools. */ #ifndef USED_FOR_TARGET extern bool arm_disable_literal_pool; diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 38ac16ad1def91ca78ccfa98fd1679b2b5114851..5ea3409c8fa632b1a9959181de27f1dfa286a4d8 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -950,10 +950,6 @@ int arm_arch_thumb_hwdiv; /* Nonzero if chip disallows volatile memory access in IT block. */ int arm_arch_no_volatile_ce; -/* Nonzero if we should use Neon to handle 64-bits operations rather - than core registers. */ -int prefer_neon_for_64bits = 0; - /* Nonzero if we shouldn't use literal pools. */ bool arm_disable_literal_pool = false; @@ -1811,7 +1807,6 @@ const struct tune_params arm_slowmul_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1834,7 +1829,6 @@ const struct tune_params arm_fastmul_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1860,7 +1854,6 @@ const struct tune_params arm_strongarm_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1883,7 +1876,6 @@ const struct tune_params arm_xscale_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1906,7 +1898,6 @@ const struct tune_params arm_9e_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1929,7 +1920,6 @@ const struct tune_params arm_marvell_pj4_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1952,7 +1942,6 @@ const struct tune_params arm_v6t2_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -1977,7 +1966,6 @@ const struct tune_params arm_cortex_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2000,7 +1988,6 @@ const struct tune_params arm_cortex_a8_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2023,7 +2010,6 @@ const struct tune_params arm_cortex_a7_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2046,7 +2032,6 @@ const struct tune_params arm_cortex_a15_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_ALL, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_FULL @@ -2069,7 +2054,6 @@ const struct tune_params arm_cortex_a35_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, FUSE_OPS (tune_params::FUSE_MOVW_MOVT), tune_params::SCHED_AUTOPREF_OFF @@ -2092,7 +2076,6 @@ const struct tune_params arm_cortex_a53_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, FUSE_OPS (tune_params::FUSE_MOVW_MOVT | tune_params::FUSE_AES_AESMC), tune_params::SCHED_AUTOPREF_OFF @@ -2115,7 +2098,6 @@ const struct tune_params arm_cortex_a57_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_ALL, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, FUSE_OPS (tune_params::FUSE_MOVW_MOVT | tune_params::FUSE_AES_AESMC), tune_params::SCHED_AUTOPREF_FULL @@ -2138,7 +2120,6 @@ const struct tune_params arm_exynosm1_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* ARM. */ tune_params::DISPARAGE_FLAGS_ALL, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2161,7 +2142,6 @@ const struct tune_params arm_xgene1_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_ALL, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2184,7 +2164,6 @@ const struct tune_params arm_cortex_a5_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2207,7 +2186,6 @@ const struct tune_params arm_cortex_a9_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2230,7 +2208,6 @@ const struct tune_params arm_cortex_a12_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_ALL, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, FUSE_OPS (tune_params::FUSE_MOVW_MOVT), tune_params::SCHED_AUTOPREF_OFF @@ -2253,7 +2230,6 @@ const struct tune_params arm_cortex_a73_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_ALL, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_TRUE, FUSE_OPS (tune_params::FUSE_AES_AESMC | tune_params::FUSE_MOVW_MOVT), tune_params::SCHED_AUTOPREF_FULL @@ -2283,7 +2259,6 @@ const struct tune_params arm_v7m_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2308,7 +2283,6 @@ const struct tune_params arm_cortex_m7_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2334,7 +2308,6 @@ const struct tune_params arm_v6m_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_FALSE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -2357,7 +2330,6 @@ const struct tune_params arm_fa726te_tune = tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* Thumb. */ tune_params::LOG_OP_NON_SHORT_CIRCUIT_TRUE, /* ARM. */ tune_params::DISPARAGE_FLAGS_NEITHER, - tune_params::PREF_NEON_64_FALSE, tune_params::PREF_NEON_STRINGOPS_FALSE, tune_params::FUSE_NOTHING, tune_params::SCHED_AUTOPREF_OFF @@ -3571,12 +3543,6 @@ arm_option_override (void) global_options.x_param_values, global_options_set.x_param_values); - /* Use Neon to perform 64-bits operations rather than core - registers. */ - prefer_neon_for_64bits = current_tune->prefer_neon_for_64bits; - if (use_neon_for_64bits == 1) - prefer_neon_for_64bits = true; - /* Look through ready list and all of queue for instructions relevant for L2 auto-prefetcher. */ int param_sched_autopref_queue_depth; @@ -26524,9 +26490,6 @@ arm_print_tune_info (void) (int) current_tune->logical_op_non_short_circuit_thumb, (int) current_tune->logical_op_non_short_circuit_arm); asm_fprintf (asm_out_file, "\t\t" ASM_COMMENT_START - "prefer_neon_for_64bits:\t%d\n", - (int) current_tune->prefer_neon_for_64bits); - asm_fprintf (asm_out_file, "\t\t" ASM_COMMENT_START "disparage_flag_setting_t16_encodings:\t%d\n", (int) current_tune->disparage_flag_setting_t16_encodings); asm_fprintf (asm_out_file, "\t\t" ASM_COMMENT_START diff --git a/gcc/config/arm/arm.opt b/gcc/config/arm/arm.opt index 9067d491b9c5fd9e1552a912e57d127b7770b858..1dc901499adbc276a26dd0e7f936913f489a148c 100644 --- a/gcc/config/arm/arm.opt +++ b/gcc/config/arm/arm.opt @@ -277,7 +277,7 @@ Enable unaligned word and halfword accesses to packed data. mneon-for-64bits Target Report RejectNegative Var(use_neon_for_64bits) Init(0) -Use Neon to perform 64-bits operations rather than core registers. +(Deprecated) mslow-flash-data Target Report Var(target_slow_flash_data) Init(0)