From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2057.outbound.protection.outlook.com [40.107.22.57]) by sourceware.org (Postfix) with ESMTPS id 0AC1F3858D1E for ; Tue, 2 May 2023 16:31:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0AC1F3858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com 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=WoT1/7W6XnApzGDU7i6YayvCcrdj4CKfOrBzZPM0oLg=; b=7nNbVM0n+i7QFIbAucjxPq0wxkCYD1KjPxdED6FXCDtU2GxsIO45CwDfWUothAWnwA/HrVbkl+QKomr1huvJdpk6uIifeCc0sbEOz/DDuWvrxaEyVMr5eiy3B7FQ6DaJS9pMIARKSVEw1I8r6m77lVgslGym4j4hjKC31GxdHBk= Received: from AS9PR01CA0041.eurprd01.prod.exchangelabs.com (2603:10a6:20b:542::15) by GV1PR08MB9938.eurprd08.prod.outlook.com (2603:10a6:150:87::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.31; Tue, 2 May 2023 16:31:23 +0000 Received: from AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:542:cafe::a7) by AS9PR01CA0041.outlook.office365.com (2603:10a6:20b:542::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.31 via Frontend Transport; Tue, 2 May 2023 16:31:23 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;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; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT013.mail.protection.outlook.com (100.127.140.191) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.21 via Frontend Transport; Tue, 2 May 2023 16:31:23 +0000 Received: ("Tessian outbound 99a3040377ca:v136"); Tue, 02 May 2023 16:31:23 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 4305cb41150d9e28 X-CR-MTA-TID: 64aa7808 Received: from 357f16a5219d.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id F92A421D-5EEE-4C52-A4E1-8138CDEA2086.1; Tue, 02 May 2023 16:31:16 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 357f16a5219d.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 02 May 2023 16:31:16 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gp/2hFAgzcFPYkodIC22P9g/qS88kUAd+pRVDgbpGIoqm4aYwtIKF+SY1PaCcQ/4SGa+vwTgoM19h7VSug4G8gXHEiKMyQPut/rtlwVyOBZHb6LNt+EcOm8f7z/nmQYA/SWccVlWKxnafNsaKqP4aRM+eHi85tGUCItMcjVGa/IQvaezuwk8bvcdsvzKtoP5COunliKN1DO0o5ENfVFFgKOjAhPuBbMNdRHmTWKKgRzg0qYLS31GZjpk8YQwHPctDTqfzbRcVDoTlyl/r/1aWJ4BYxVjNUHuYLfCsRnMxMeGVvsVQPJ18elLNXJjIw04uRcl6neppmb+XGMUM6yd8Q== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=WoT1/7W6XnApzGDU7i6YayvCcrdj4CKfOrBzZPM0oLg=; b=OYFaeiv1PvrU4IVO5GRII3N+0FggCo+9S0SeK6a8CPG1S9L/M3ZT4FUle6JcvgH7ZmXIbofNdzyshuwjptCNICxxCQLQmahd6T3PoyfyqJa3jrGC+eYqjWl0YwgdWaAY8s15MRIWFPWm0KvnnyZjUZKuf/rciw+BmlhLnUuv+xdiAP2O6+J6JjfhFrZMZkL6FiXbIQ7f3MUxu1NWyWmQVTQ46phO3TVMcFKp37zCvikkQz579WClWA+ESxCnqJm5O2lzjH9sTAyGfk5+GcIzhBMrGw5aufN1s72KuQQ187FhFprg5wiT+viSLsNv0eGvAfXyRE+JD8okajKoRwN+UA== 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=WoT1/7W6XnApzGDU7i6YayvCcrdj4CKfOrBzZPM0oLg=; b=7nNbVM0n+i7QFIbAucjxPq0wxkCYD1KjPxdED6FXCDtU2GxsIO45CwDfWUothAWnwA/HrVbkl+QKomr1huvJdpk6uIifeCc0sbEOz/DDuWvrxaEyVMr5eiy3B7FQ6DaJS9pMIARKSVEw1I8r6m77lVgslGym4j4hjKC31GxdHBk= Received: from PAXPR08MB6926.eurprd08.prod.outlook.com (2603:10a6:102:138::24) by AS2PR08MB9762.eurprd08.prod.outlook.com (2603:10a6:20b:605::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.31; Tue, 2 May 2023 16:31:15 +0000 Received: from PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::db73:66ba:ae70:1ff1]) by PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::db73:66ba:ae70:1ff1%3]) with mapi id 15.20.6340.031; Tue, 2 May 2023 16:31:14 +0000 From: Kyrylo Tkachov To: Christophe Lyon , "gcc-patches@gcc.gnu.org" , Richard Earnshaw , Richard Sandiford CC: Christophe Lyon Subject: RE: [PATCH 08/22] arm: [MVE intrinsics] rework vaddq vmulq vsubq Thread-Topic: [PATCH 08/22] arm: [MVE intrinsics] rework vaddq vmulq vsubq Thread-Index: AQHZcfxQ9W9CMK8NLE2BLLMirnYWqK9HQo/w Date: Tue, 2 May 2023 16:31:14 +0000 Message-ID: References: <20230418134608.244751-1-christophe.lyon@arm.com> <20230418134608.244751-9-christophe.lyon@arm.com> In-Reply-To: <20230418134608.244751-9-christophe.lyon@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAXPR08MB6926:EE_|AS2PR08MB9762:EE_|AM7EUR03FT013:EE_|GV1PR08MB9938:EE_ X-MS-Office365-Filtering-Correlation-Id: 2f0df387-3816-4068-6463-08db4b2aab22 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: ItacP0jSh6wY4cs0bOypOg0YkQ+AjeXqvcYTQ7bR7DEL19Db2Y50NyaoSsTSLR0xultZynPAkPjT40ezEwBvhVJvaLObTRAd/kmgBwixzVS/OlqVFINTxkxUw218PO4cqU6KzVvkw9BmKm463eU98aheHCpnEOfyMLVVhO9pAmEbotpQDeadVoqO0FYEhNUpIP6wQxfC77Uu4HdeGSGGlGWE1Bs9ceotIisQy+vEb/HcugCGpDkZKMAtQWp2mbDSzNCqXIXRiOsxrlyljdSfr9TYuXiCsmWANLTarsrV7Ba9BTMpYm47S6aejlcDUXM3BogLjigXaQXANtlVs18S0p0Xwv8kAd+ap6WPGcg9pqDLQQOpquMkd2Unc8HvhRypxLDwEEUix464joUCy7L44ASirezwvo5iQDo4BQJOZjpDckNex66e1cKyMuo1sQpxF1TGm75B/dYTgnrb4eTHeUbsEYHoX3FqPZfyHDyk0JYh02KfD7Pye4VNSCVP9N/smn4GeqqT8tk9aWTTtLbiSdNAe5uSUDxNV5ey3Wh7gNq6nxf6k/i2eEo6fpxU6NFI8VzxixGlGa6ADocUFI6Bj1ltWuSvoTQJ1T5knEpuRpDSCQecSF/1mdVo+W2/dlI2 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB6926.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(366004)(39860400002)(376002)(136003)(396003)(451199021)(8676002)(8936002)(122000001)(55016003)(41300700001)(38070700005)(71200400001)(316002)(4326008)(66556008)(66946007)(33656002)(76116006)(64756008)(66446008)(86362001)(66476007)(6636002)(110136005)(38100700002)(478600001)(7696005)(30864003)(2906002)(52536014)(5660300002)(26005)(53546011)(9686003)(6506007)(186003)(83380400001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9762 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4406aaf2-3d0d-4808-7449-08db4b2aa5ef X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CeuDaHgKc93B5TtB5TRqdYBqK4ImJR6aqVbUg14cyVaYINPwrHHvXxWB2ocfiid1whKZ78I1hdQT8+DBQ+7Kv8dIxbP4QmsQ0RyKFWE//hN+Qv/Z/gkuqEB4AmsPAv8fkJTZpKFFwqrBy3romfQZ+3n9mgH+OE5qb1y3rHqhzlhvAWGknQTxbOnVkQPwZRPYR1qB4T+VYGgu+u39bLL4mblj37PaUHFP25Nw0O3vs2Wn+8MPa/sgs2avvZYGSpv0p9bIUGVd8Jr/LQgRzG404uvhYfAWJGRs82Ifcp14/Nhb8i5/WHm9CK0Nm5FQdAzKZa197qRD03e/y8QrHAmMQ41Tp2vEUQdfg+3xc/Kuq9B7VjMjGqD6zvyI/R/fZnmDTPVk4mWa9UX4yJV0W8J1X7cwf2shqaImUSbAFBzP3kOjwy2LJCK3+d9E9x8+CAyHpzd5RqR96fIQOGi/WT0/BWnSqvMezrrWBDCnufxqERSMjjkjkgSlw7Xy2ZPfJoBqkRdwwyxeW7Be+3vh6b2GgDiGoipDkTSz+AkLz3O/LlG3OOkfEatLWEegSn+QWGSugyoeI7he3xlGLbXpjBhftiT9YIxy4XFuUwEJnT6hiODMDunWzAoTi8+xVD8a4A+XJRo8vkTzUfL52XNYgc8xASFmHmGuLZcFb/Gt3DX7SxtbnLQ9VZr4L07r70yfYgS//JljCOuYNaOe6jrVww4kL3fh1h7YS0KuYJ2G1ncxjkc= 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:(13230028)(4636009)(136003)(396003)(346002)(376002)(39860400002)(451199021)(36840700001)(40470700004)(46966006)(186003)(40460700003)(2906002)(30864003)(26005)(53546011)(6506007)(9686003)(36860700001)(82310400005)(86362001)(33656002)(34020700004)(81166007)(82740400003)(356005)(55016003)(336012)(40480700001)(47076005)(83380400001)(4326008)(478600001)(5660300002)(316002)(41300700001)(7696005)(6636002)(70586007)(8936002)(8676002)(70206006)(110136005)(52536014);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 May 2023 16:31:23.4143 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2f0df387-3816-4068-6463-08db4b2aab22 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: AM7EUR03FT013.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB9938 X-Spam-Status: No, score=-11.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: > -----Original Message----- > From: Christophe Lyon > Sent: Tuesday, April 18, 2023 2:46 PM > To: gcc-patches@gcc.gnu.org; Kyrylo Tkachov ; > Richard Earnshaw ; Richard Sandiford > > Cc: Christophe Lyon > Subject: [PATCH 08/22] arm: [MVE intrinsics] rework vaddq vmulq vsubq >=20 > Implement vaddq, vmulq, vsubq using the new MVE builtins framework. >=20 > 2022-09-08 Christophe Lyon >=20 > gcc/ >=20 > * config/arm/arm-mve-builtins-base.cc > (FUNCTION_WITH_RTX_M_N): > New. > (vaddq, vmulq, vsubq): New. > * config/arm/arm-mve-builtins-base.def (vaddq, vmulq, vsubq): New. > * config/arm/arm-mve-builtins-base.h (vaddq, vmulq, vsubq): New. > * config/arm/arm_mve.h (vaddq): Remove. > (vaddq_m): Remove. > (vaddq_x): Remove. > (vaddq_n_u8): Remove. > (vaddq_n_s8): Remove. > (vaddq_n_u16): Remove. > (vaddq_n_s16): Remove. > (vaddq_n_u32): Remove. > (vaddq_n_s32): Remove. > (vaddq_n_f16): Remove. > (vaddq_n_f32): Remove. > (vaddq_m_n_s8): Remove. > (vaddq_m_n_s32): Remove. > (vaddq_m_n_s16): Remove. > (vaddq_m_n_u8): Remove. > (vaddq_m_n_u32): Remove. > (vaddq_m_n_u16): Remove. > (vaddq_m_s8): Remove. > (vaddq_m_s32): Remove. > (vaddq_m_s16): Remove. > (vaddq_m_u8): Remove. > (vaddq_m_u32): Remove. > (vaddq_m_u16): Remove. > (vaddq_m_f32): Remove. > (vaddq_m_f16): Remove. > (vaddq_m_n_f32): Remove. > (vaddq_m_n_f16): Remove. > (vaddq_s8): Remove. > (vaddq_s16): Remove. > (vaddq_s32): Remove. > (vaddq_u8): Remove. > (vaddq_u16): Remove. > (vaddq_u32): Remove. > (vaddq_f16): Remove. > (vaddq_f32): Remove. > (vaddq_x_s8): Remove. > (vaddq_x_s16): Remove. > (vaddq_x_s32): Remove. > (vaddq_x_n_s8): Remove. > (vaddq_x_n_s16): Remove. > (vaddq_x_n_s32): Remove. > (vaddq_x_u8): Remove. > (vaddq_x_u16): Remove. > (vaddq_x_u32): Remove. > (vaddq_x_n_u8): Remove. > (vaddq_x_n_u16): Remove. > (vaddq_x_n_u32): Remove. > (vaddq_x_f16): Remove. > (vaddq_x_f32): Remove. > (vaddq_x_n_f16): Remove. > (vaddq_x_n_f32): Remove. > (__arm_vaddq_n_u8): Remove. > (__arm_vaddq_n_s8): Remove. > (__arm_vaddq_n_u16): Remove. > (__arm_vaddq_n_s16): Remove. > (__arm_vaddq_n_u32): Remove. > (__arm_vaddq_n_s32): Remove. > (__arm_vaddq_m_n_s8): Remove. > (__arm_vaddq_m_n_s32): Remove. > (__arm_vaddq_m_n_s16): Remove. > (__arm_vaddq_m_n_u8): Remove. > (__arm_vaddq_m_n_u32): Remove. > (__arm_vaddq_m_n_u16): Remove. > (__arm_vaddq_m_s8): Remove. > (__arm_vaddq_m_s32): Remove. > (__arm_vaddq_m_s16): Remove. > (__arm_vaddq_m_u8): Remove. > (__arm_vaddq_m_u32): Remove. > (__arm_vaddq_m_u16): Remove. > (__arm_vaddq_s8): Remove. > (__arm_vaddq_s16): Remove. > (__arm_vaddq_s32): Remove. > (__arm_vaddq_u8): Remove. > (__arm_vaddq_u16): Remove. > (__arm_vaddq_u32): Remove. > (__arm_vaddq_x_s8): Remove. > (__arm_vaddq_x_s16): Remove. > (__arm_vaddq_x_s32): Remove. > (__arm_vaddq_x_n_s8): Remove. > (__arm_vaddq_x_n_s16): Remove. > (__arm_vaddq_x_n_s32): Remove. > (__arm_vaddq_x_u8): Remove. > (__arm_vaddq_x_u16): Remove. > (__arm_vaddq_x_u32): Remove. > (__arm_vaddq_x_n_u8): Remove. > (__arm_vaddq_x_n_u16): Remove. > (__arm_vaddq_x_n_u32): Remove. > (__arm_vaddq_n_f16): Remove. > (__arm_vaddq_n_f32): Remove. > (__arm_vaddq_m_f32): Remove. > (__arm_vaddq_m_f16): Remove. > (__arm_vaddq_m_n_f32): Remove. > (__arm_vaddq_m_n_f16): Remove. > (__arm_vaddq_f16): Remove. > (__arm_vaddq_f32): Remove. > (__arm_vaddq_x_f16): Remove. > (__arm_vaddq_x_f32): Remove. > (__arm_vaddq_x_n_f16): Remove. > (__arm_vaddq_x_n_f32): Remove. > (__arm_vaddq): Remove. > (__arm_vaddq_m): Remove. > (__arm_vaddq_x): Remove. > (vmulq): Remove. > (vmulq_m): Remove. > (vmulq_x): Remove. > (vmulq_u8): Remove. > (vmulq_n_u8): Remove. > (vmulq_s8): Remove. > (vmulq_n_s8): Remove. > (vmulq_u16): Remove. > (vmulq_n_u16): Remove. > (vmulq_s16): Remove. > (vmulq_n_s16): Remove. > (vmulq_u32): Remove. > (vmulq_n_u32): Remove. > (vmulq_s32): Remove. > (vmulq_n_s32): Remove. > (vmulq_n_f16): Remove. > (vmulq_f16): Remove. > (vmulq_n_f32): Remove. > (vmulq_f32): Remove. > (vmulq_m_n_s8): Remove. > (vmulq_m_n_s32): Remove. > (vmulq_m_n_s16): Remove. > (vmulq_m_n_u8): Remove. > (vmulq_m_n_u32): Remove. > (vmulq_m_n_u16): Remove. > (vmulq_m_s8): Remove. > (vmulq_m_s32): Remove. > (vmulq_m_s16): Remove. > (vmulq_m_u8): Remove. > (vmulq_m_u32): Remove. > (vmulq_m_u16): Remove. > (vmulq_m_f32): Remove. > (vmulq_m_f16): Remove. > (vmulq_m_n_f32): Remove. > (vmulq_m_n_f16): Remove. > (vmulq_x_s8): Remove. > (vmulq_x_s16): Remove. > (vmulq_x_s32): Remove. > (vmulq_x_n_s8): Remove. > (vmulq_x_n_s16): Remove. > (vmulq_x_n_s32): Remove. > (vmulq_x_u8): Remove. > (vmulq_x_u16): Remove. > (vmulq_x_u32): Remove. > (vmulq_x_n_u8): Remove. > (vmulq_x_n_u16): Remove. > (vmulq_x_n_u32): Remove. > (vmulq_x_f16): Remove. > (vmulq_x_f32): Remove. > (vmulq_x_n_f16): Remove. > (vmulq_x_n_f32): Remove. > (__arm_vmulq_u8): Remove. > (__arm_vmulq_n_u8): Remove. > (__arm_vmulq_s8): Remove. > (__arm_vmulq_n_s8): Remove. > (__arm_vmulq_u16): Remove. > (__arm_vmulq_n_u16): Remove. > (__arm_vmulq_s16): Remove. > (__arm_vmulq_n_s16): Remove. > (__arm_vmulq_u32): Remove. > (__arm_vmulq_n_u32): Remove. > (__arm_vmulq_s32): Remove. > (__arm_vmulq_n_s32): Remove. > (__arm_vmulq_m_n_s8): Remove. > (__arm_vmulq_m_n_s32): Remove. > (__arm_vmulq_m_n_s16): Remove. > (__arm_vmulq_m_n_u8): Remove. > (__arm_vmulq_m_n_u32): Remove. > (__arm_vmulq_m_n_u16): Remove. > (__arm_vmulq_m_s8): Remove. > (__arm_vmulq_m_s32): Remove. > (__arm_vmulq_m_s16): Remove. > (__arm_vmulq_m_u8): Remove. > (__arm_vmulq_m_u32): Remove. > (__arm_vmulq_m_u16): Remove. > (__arm_vmulq_x_s8): Remove. > (__arm_vmulq_x_s16): Remove. > (__arm_vmulq_x_s32): Remove. > (__arm_vmulq_x_n_s8): Remove. > (__arm_vmulq_x_n_s16): Remove. > (__arm_vmulq_x_n_s32): Remove. > (__arm_vmulq_x_u8): Remove. > (__arm_vmulq_x_u16): Remove. > (__arm_vmulq_x_u32): Remove. > (__arm_vmulq_x_n_u8): Remove. > (__arm_vmulq_x_n_u16): Remove. > (__arm_vmulq_x_n_u32): Remove. > (__arm_vmulq_n_f16): Remove. > (__arm_vmulq_f16): Remove. > (__arm_vmulq_n_f32): Remove. > (__arm_vmulq_f32): Remove. > (__arm_vmulq_m_f32): Remove. > (__arm_vmulq_m_f16): Remove. > (__arm_vmulq_m_n_f32): Remove. > (__arm_vmulq_m_n_f16): Remove. > (__arm_vmulq_x_f16): Remove. > (__arm_vmulq_x_f32): Remove. > (__arm_vmulq_x_n_f16): Remove. > (__arm_vmulq_x_n_f32): Remove. > (__arm_vmulq): Remove. > (__arm_vmulq_m): Remove. > (__arm_vmulq_x): Remove. > (vsubq): Remove. > (vsubq_m): Remove. > (vsubq_x): Remove. > (vsubq_n_f16): Remove. > (vsubq_n_f32): Remove. > (vsubq_u8): Remove. > (vsubq_n_u8): Remove. > (vsubq_s8): Remove. > (vsubq_n_s8): Remove. > (vsubq_u16): Remove. > (vsubq_n_u16): Remove. > (vsubq_s16): Remove. > (vsubq_n_s16): Remove. > (vsubq_u32): Remove. > (vsubq_n_u32): Remove. > (vsubq_s32): Remove. > (vsubq_n_s32): Remove. > (vsubq_f16): Remove. > (vsubq_f32): Remove. > (vsubq_m_s8): Remove. > (vsubq_m_u8): Remove. > (vsubq_m_s16): Remove. > (vsubq_m_u16): Remove. > (vsubq_m_s32): Remove. > (vsubq_m_u32): Remove. > (vsubq_m_n_s8): Remove. > (vsubq_m_n_s32): Remove. > (vsubq_m_n_s16): Remove. > (vsubq_m_n_u8): Remove. > (vsubq_m_n_u32): Remove. > (vsubq_m_n_u16): Remove. > (vsubq_m_f32): Remove. > (vsubq_m_f16): Remove. > (vsubq_m_n_f32): Remove. > (vsubq_m_n_f16): Remove. > (vsubq_x_s8): Remove. > (vsubq_x_s16): Remove. > (vsubq_x_s32): Remove. > (vsubq_x_n_s8): Remove. > (vsubq_x_n_s16): Remove. > (vsubq_x_n_s32): Remove. > (vsubq_x_u8): Remove. > (vsubq_x_u16): Remove. > (vsubq_x_u32): Remove. > (vsubq_x_n_u8): Remove. > (vsubq_x_n_u16): Remove. > (vsubq_x_n_u32): Remove. > (vsubq_x_f16): Remove. > (vsubq_x_f32): Remove. > (vsubq_x_n_f16): Remove. > (vsubq_x_n_f32): Remove. > (__arm_vsubq_u8): Remove. > (__arm_vsubq_n_u8): Remove. > (__arm_vsubq_s8): Remove. > (__arm_vsubq_n_s8): Remove. > (__arm_vsubq_u16): Remove. > (__arm_vsubq_n_u16): Remove. > (__arm_vsubq_s16): Remove. > (__arm_vsubq_n_s16): Remove. > (__arm_vsubq_u32): Remove. > (__arm_vsubq_n_u32): Remove. > (__arm_vsubq_s32): Remove. > (__arm_vsubq_n_s32): Remove. > (__arm_vsubq_m_s8): Remove. > (__arm_vsubq_m_u8): Remove. > (__arm_vsubq_m_s16): Remove. > (__arm_vsubq_m_u16): Remove. > (__arm_vsubq_m_s32): Remove. > (__arm_vsubq_m_u32): Remove. > (__arm_vsubq_m_n_s8): Remove. > (__arm_vsubq_m_n_s32): Remove. > (__arm_vsubq_m_n_s16): Remove. > (__arm_vsubq_m_n_u8): Remove. > (__arm_vsubq_m_n_u32): Remove. > (__arm_vsubq_m_n_u16): Remove. > (__arm_vsubq_x_s8): Remove. > (__arm_vsubq_x_s16): Remove. > (__arm_vsubq_x_s32): Remove. > (__arm_vsubq_x_n_s8): Remove. > (__arm_vsubq_x_n_s16): Remove. > (__arm_vsubq_x_n_s32): Remove. > (__arm_vsubq_x_u8): Remove. > (__arm_vsubq_x_u16): Remove. > (__arm_vsubq_x_u32): Remove. > (__arm_vsubq_x_n_u8): Remove. > (__arm_vsubq_x_n_u16): Remove. > (__arm_vsubq_x_n_u32): Remove. > (__arm_vsubq_n_f16): Remove. > (__arm_vsubq_n_f32): Remove. > (__arm_vsubq_f16): Remove. > (__arm_vsubq_f32): Remove. > (__arm_vsubq_m_f32): Remove. > (__arm_vsubq_m_f16): Remove. > (__arm_vsubq_m_n_f32): Remove. > (__arm_vsubq_m_n_f16): Remove. > (__arm_vsubq_x_f16): Remove. > (__arm_vsubq_x_f32): Remove. > (__arm_vsubq_x_n_f16): Remove. > (__arm_vsubq_x_n_f32): Remove. > (__arm_vsubq): Remove. > (__arm_vsubq_m): Remove. > (__arm_vsubq_x): Remove. > * config/arm/arm_mve_builtins.def (vsubq_u, vsubq_s, vsubq_f): > Remove. > (vmulq_u, vmulq_s, vmulq_f): Remove. > * config/arm/mve.md (mve_vsubq_): Remove. > (mve_vmulq_): Remove. [snip] > diff --git a/gcc/config/arm/mve.md b/gcc/config/arm/mve.md > index 5167fbc6add..ccb3cf23304 100644 > --- a/gcc/config/arm/mve.md > +++ b/gcc/config/arm/mve.md > @@ -1353,18 +1353,6 @@ (define_insn "mve_vmulltq_int_" > ;; [vmulq_u, vmulq_s]) > ;; [vsubq_s, vsubq_u]) > ;; > -(define_insn "mve_vmulq_" > - [ > - (set (match_operand:MVE_2 0 "s_register_operand" "=3Dw") > - (unspec:MVE_2 [(match_operand:MVE_2 1 "s_register_operand" > "w") > - (match_operand:MVE_2 2 "s_register_operand" "w")] > - VMULQ)) > - ] > - "TARGET_HAVE_MVE" > - "vmul.i%#\t%q0, %q1, %q2" > - [(set_attr "type" "mve_move") > -]) > - > (define_insn "mve_q" > [ > (set (match_operand:MVE_2 0 "s_register_operand" "=3Dw") > @@ -1742,21 +1730,6 @@ (define_insn "mve_vshlq_r_" > [(set_attr "type" "mve_move") > ]) >=20 > -;; > -;; [vsubq_s, vsubq_u]) > -;; > -(define_insn "mve_vsubq_" > - [ > - (set (match_operand:MVE_2 0 "s_register_operand" "=3Dw") > - (unspec:MVE_2 [(match_operand:MVE_2 1 "s_register_operand" > "w") > - (match_operand:MVE_2 2 "s_register_operand" "w")] > - VSUBQ)) > - ] > - "TARGET_HAVE_MVE" > - "vsub.i%#\t%q0, %q1, %q2" > - [(set_attr "type" "mve_move") > -]) > - Just to make sure I understand correctly, are these patterns being removed = because the new builtins are wired through the factored patterns in patch [= 07/22]? If so, ok. Thanks, Kyrill > ;; > ;; [vabdq_f]) > ;; > -- > 2.34.1