From patchwork Tue Apr 18 13:46:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christophe Lyon X-Patchwork-Id: 84863 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp2869267vqo; Tue, 18 Apr 2023 06:55:59 -0700 (PDT) X-Google-Smtp-Source: AKy350a8HaiJuUCq2vSzV9p/1M6fVXahNyrfs9IbKmDy/Blb5L9J1OUVf58/fsz9/g2PWOL1Y2vH X-Received: by 2002:a17:906:6888:b0:94e:7bde:3108 with SMTP id n8-20020a170906688800b0094e7bde3108mr11495997ejr.27.1681826159166; Tue, 18 Apr 2023 06:55:59 -0700 (PDT) Received: from sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id l17-20020a170907915100b0094f7b61c920si3766727ejs.468.2023.04.18.06.55.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Apr 2023 06:55:59 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@gcc.gnu.org header.s=default header.b=spz2SsT+; arc=fail (signature failed); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gnu.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 202653895FFD for ; Tue, 18 Apr 2023 13:51:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 202653895FFD DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1681825887; bh=jbajwnLGa4+iTwEzfPIMu0CWGJ+Phn61YEn8GteBrXI=; h=To:CC:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=spz2SsT+pVBB7532dnc7NdPFdeju6F/Nisg6TfQVeX0bV7k0UhgzMGr88BYe24T3X wbBoqzCQ1xIu03OqDejliOUM6oUNp1Sxoy64UgztTde/tXnHglsbuvsviMltkWRE87 qA36dPWNlFIGISht570RZhHgTPHeYFAc9A7321OE= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2041.outbound.protection.outlook.com [40.107.241.41]) by sourceware.org (Postfix) with ESMTPS id BBEE9385694D for ; Tue, 18 Apr 2023 13:47:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BBEE9385694D Received: from DUZPR01CA0123.eurprd01.prod.exchangelabs.com (2603:10a6:10:4bc::8) by AM9PR08MB6291.eurprd08.prod.outlook.com (2603:10a6:20b:284::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.45; Tue, 18 Apr 2023 13:47:40 +0000 Received: from DBAEUR03FT004.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:4bc:cafe::ae) by DUZPR01CA0123.outlook.office365.com (2603:10a6:10:4bc::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.47 via Frontend Transport; Tue, 18 Apr 2023 13:47:40 +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 DBAEUR03FT004.mail.protection.outlook.com (100.127.142.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.20 via Frontend Transport; Tue, 18 Apr 2023 13:47:40 +0000 Received: ("Tessian outbound e13c2446394c:v136"); Tue, 18 Apr 2023 13:47:40 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 487b5eb9ef82771c X-CR-MTA-TID: 64aa7808 Received: from c1b3ce766f8d.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3D55E071-34DA-4A51-A930-6242DF97A919.1; Tue, 18 Apr 2023 13:47:29 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c1b3ce766f8d.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 18 Apr 2023 13:47:29 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WRpeqSqbtF6cznxU7tlKkxlWp+UTMvCk1Lvoac4Ap2ki8oU2eG/PDonJzSX7zVjSfkIJ00paBrCqRQoVdMnGbkyOfWCd6vfmEZOzcyV6KoEfGzqCcJXCRKTrPRp1PuEbpGr5+mDTk7sXL4p9kx3og063rZfP+D1LMU9cn8mojXuCUyn/NZV8Ix602CZYofFHJcTxQR2A4lKfg3exsuW7+JPFzCJxdf137zdLrgZ9rkjdDHP5BkGIv8Q0/WzwpoxuKe3N4Ero52i9BS+6xLWAL1avLhOUBDMTjBU1Y6B/GYvSgeUR9OBlfss6jDKtqXGhf8wD1B+h/V4AHBYwfChp6A== 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=jbajwnLGa4+iTwEzfPIMu0CWGJ+Phn61YEn8GteBrXI=; b=VZuWzpjcOKPIpdzDnRqIYJIHEC/oljUluIKwjhFI9owHvc4Nh1XPKb0MJHl2VWkJfyg40sYqDbBrRdRjf78pulp5/YZRuu2pxzm02/XIAcOmFCxzptornnb/XQWwPH0Yv0MmU/xlLdUrIi/ld0NIS2VkX5cIdOFn59yD9Zxmm/4iSSbUWSXec3VcBQa5Jz46SRvhk0vrxEXHSspboMFzBYsIGxvaqF8VZHMEFFyQWZi2YV2Y44EqzbUDOZA8VlwOuoi1c9Xb2ccJrY4nu2YmKAWCV/F9DcO+zoID4EMOpgYbLsrbrkkWTJ5qaPn1mmNe+AfC9JS/80EpbXTwZhkUbA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none Received: from AS8PR04CA0144.eurprd04.prod.outlook.com (2603:10a6:20b:127::29) by AS8PR08MB9042.eurprd08.prod.outlook.com (2603:10a6:20b:5b0::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.45; Tue, 18 Apr 2023 13:47:25 +0000 Received: from AM7EUR03FT060.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:127:cafe::e8) by AS8PR04CA0144.outlook.office365.com (2603:10a6:20b:127::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.47 via Frontend Transport; Tue, 18 Apr 2023 13:47:25 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Received: from nebula.arm.com (40.67.248.234) by AM7EUR03FT060.mail.protection.outlook.com (100.127.140.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6319.20 via Frontend Transport; Tue, 18 Apr 2023 13:47:25 +0000 Received: from AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 18 Apr 2023 13:47:24 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Tue, 18 Apr 2023 13:47:23 +0000 Received: from e129018.arm.com (10.57.54.117) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server id 15.1.2507.23 via Frontend Transport; Tue, 18 Apr 2023 13:47:23 +0000 To: , , , CC: Christophe Lyon Subject: [PATCH 16/22] arm: [MVE intrinsics] factorize vcreateq Date: Tue, 18 Apr 2023 15:46:02 +0200 Message-ID: <20230418134608.244751-17-christophe.lyon@arm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230418134608.244751-1-christophe.lyon@arm.com> References: <20230418134608.244751-1-christophe.lyon@arm.com> MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AM7EUR03FT060:EE_|AS8PR08MB9042:EE_|DBAEUR03FT004:EE_|AM9PR08MB6291:EE_ X-MS-Office365-Filtering-Correlation-Id: 1e4913c9-58ac-4fec-5ee6-08db40137a63 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: hB5NIjDyqoCjfmGnDfOx+3MkCs8rkdkLUMSoyRWsNu4THt96xv4mlegeWiehakOYK6MSzTM2ZJt0TRK5YWt90lLMbXQRaHqa3gEJ0Di+iqqrQ/pHvIYwD3IFf9I1yzs6vr2UkGEi6LsOx+GXtxc8Jxv9Xi1kDqslzrI4i77pyebI+7XqA3ziZa6PBb6J5eiyf0cgf0YFPacA7FX+rD2T0vNsU5OQOki6ZdAxK/1m3vn/RrgDdzM6wTS9zUN3i/vddj1GtkIYPmtBeOcB5bHgveQygqUyAHr/NddxUywO98KH0P9GYAn6yJz9haNUnBXO9K/K4MSqjnvTiScSSfGibg+c9Bkuz/GIBEOcRLEcZmj15+K3I+2cBHnB/sMsm8wcbFROUKOJMzfSPEoTRr1/xvVWX02ixoEPRn2LpjsxT7xKZQ2/lcepTYENvjce8qe7xlrZ7QILT7WNxfw/gZgTz0IC3ntwFwSYerDkX4+8BXFPy9e9ho3WA3gxfYU/9dB2HzLVIP4KUGLSr5iETvwR4ItU+v77r1PmzA6ETjDHyOWsyRL2r1UJ9GyJcCZbC8j/FpWLZM8uNAdeIZ86fRHa85hYq81ZgALi4XhkCXSysTdpRAgxZydMOQK5An71O+Aq6XDk8PS4QR0hxXHE/WgpgNut5UZ7LBfM36GiHs3sUKfRNXycIpOypQvkK9n8SmOC3khpezaDGyQIZ/kDRr9qzw== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:nebula.arm.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230028)(4636009)(39860400002)(376002)(136003)(346002)(396003)(451199021)(36840700001)(46966006)(44832011)(8936002)(5660300002)(2906002)(8676002)(36756003)(82310400005)(86362001)(40480700001)(7696005)(6666004)(316002)(110136005)(6636002)(36860700001)(478600001)(2616005)(83380400001)(47076005)(426003)(336012)(186003)(26005)(1076003)(82740400003)(4326008)(70586007)(70206006)(356005)(81166007)(41300700001)(36900700001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9042 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT004.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9a58ffad-7763-421e-71e9-08db40137185 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mUh++GkkE12mevC2Cj/rJG26wsU7XdTQ5ohHJYe5E/HIaA6DihFWwccEuUcdFzu1FbDUyKaDxnFpQmxGUCVUMlwJUOWhgsXQcPV75u+5fl+4YxLVnr2T9qeAbEUzjlohw9v39+iPt0C2sy+xQlrC3iq4rRk0mSVabq3Sig3QNqUB7IH+Va/rG0hHOzqKtFr4IAQfrCSVVNKhMO60M+40HfdggU56TEbjK736Grm2hhnXm7gjbxt5kKU/JtVwUKfT65UP4F81/TGWTBWflMwDRmkKVNTqmJ2Zn66pWJ4tMlEex9JD8XEXJRGbtY+L8dgFWLb64om0zcP/wYZLQKu1ikx49Rsinqf92Rs37eSPMktpwSAqxUf8Dq7bFWiskEzLaDm5nh6wHtpH71MMZ3YxPlhnTQA0nAyZkmNP+Qp6wEslMzu5JGWhf1fOWk1HA03P9G5jXznSlO4xK2sahGm4iRo14D6mY+oFPP7sbBXO96hgKrJyz90JpW4CLsCjEGt8pinU7wIP4Ti28apmQbJTEE+iiAtctrcoOfjYnb4KrXuj5WIQjer1iXqmwG+CFYboja/Vvtb8nSjjRjwAxGUBh9JuAZjGAtX1HxyunY1b3jeAibZcbmqIn8aqRSkq/TaAo+lUJ9pJIsgvVA9Of46hydRIYnK5uZT1BeQo2jcKnqk4UKF05n3BYknm1EI999YLjRZHoae1bY/+2ObZ05zj6A== 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)(39860400002)(396003)(346002)(136003)(376002)(451199021)(36840700001)(40470700004)(46966006)(8676002)(5660300002)(8936002)(41300700001)(44832011)(70586007)(4326008)(82310400005)(316002)(81166007)(70206006)(2906002)(6636002)(110136005)(478600001)(86362001)(6666004)(7696005)(82740400003)(1076003)(186003)(40460700003)(83380400001)(36860700001)(26005)(40480700001)(336012)(36756003)(426003)(47076005)(2616005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Apr 2023 13:47:40.4789 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1e4913c9-58ac-4fec-5ee6-08db40137a63 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: DBAEUR03FT004.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6291 X-Spam-Status: No, score=-12.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 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: Christophe Lyon via Gcc-patches From: Christophe Lyon Reply-To: Christophe Lyon Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org Sender: "Gcc-patches" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1763522546996437066?= X-GMAIL-MSGID: =?utf-8?q?1763522546996437066?= We need a 'fake' iterator to be able to use mve_insn for vcreateq_f. 2022-09-08 Christophe Lyon gcc/ * config/arm/iterators.md (MVE_FP_CREATE): New. (mve_insn): Add VCREATEQ_S, VCREATEQ_U, VCREATEQ_F. * config/arm/mve.md (mve_vcreateq_f): Rename into ... (@mve_q_f): ... this. (mve_vcreateq_): Rename into ... (@mve_q_): ... this. --- gcc/config/arm/iterators.md | 5 +++++ gcc/config/arm/mve.md | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/config/arm/iterators.md b/gcc/config/arm/iterators.md index b0ea1af77d2..5a531d77a33 100644 --- a/gcc/config/arm/iterators.md +++ b/gcc/config/arm/iterators.md @@ -393,6 +393,10 @@ (define_int_iterator MVE_FP_N_BINARY [ VSUBQ_N_F ]) +(define_int_iterator MVE_FP_CREATE [ + VCREATEQ_F + ]) + (define_code_attr mve_addsubmul [ (minus "vsub") (mult "vmul") @@ -407,6 +411,7 @@ (define_int_attr mve_insn [ (VBICQ_M_N_S "vbic") (VBICQ_M_N_U "vbic") (VBICQ_M_S "vbic") (VBICQ_M_U "vbic") (VBICQ_M_F "vbic") (VBICQ_N_S "vbic") (VBICQ_N_U "vbic") + (VCREATEQ_S "vcreate") (VCREATEQ_U "vcreate") (VCREATEQ_F "vcreate") (VEORQ_M_S "veor") (VEORQ_M_U "veor") (VEORQ_M_F "veor") (VMULQ_M_N_S "vmul") (VMULQ_M_N_U "vmul") (VMULQ_M_N_F "vmul") (VMULQ_M_S "vmul") (VMULQ_M_U "vmul") (VMULQ_M_F "vmul") diff --git a/gcc/config/arm/mve.md b/gcc/config/arm/mve.md index fbae1d3791f..f7f0ba65251 100644 --- a/gcc/config/arm/mve.md +++ b/gcc/config/arm/mve.md @@ -700,12 +700,12 @@ (define_insn "mve_vcvtq_n_to_f_" ;; [vcreateq_f]) ;; -(define_insn "mve_vcreateq_f" +(define_insn "@mve_q_f" [ (set (match_operand:MVE_0 0 "s_register_operand" "=w") (unspec:MVE_0 [(match_operand:DI 1 "s_register_operand" "r") (match_operand:DI 2 "s_register_operand" "r")] - VCREATEQ_F)) + MVE_FP_CREATE)) ] "TARGET_HAVE_MVE && TARGET_HAVE_MVE_FLOAT" "vmov %q0[2], %q0[0], %Q1, %Q2\;vmov %q0[3], %q0[1], %R1, %R2" @@ -715,7 +715,7 @@ (define_insn "mve_vcreateq_f" ;; ;; [vcreateq_u, vcreateq_s]) ;; -(define_insn "mve_vcreateq_" +(define_insn "@mve_q_" [ (set (match_operand:MVE_1 0 "s_register_operand" "=w") (unspec:MVE_1 [(match_operand:DI 1 "s_register_operand" "r")