From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2074.outbound.protection.outlook.com [40.107.13.74]) by sourceware.org (Postfix) with ESMTPS id EF725385773E for ; Tue, 9 May 2023 17:18:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org EF725385773E 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=Cx60uvHkTUtoMYljo75d4FXfY8+1NB5cd44zMxlAL0k=; b=Dx2lTQxKHSS0WWI3KJBXqg2W8/ndRWdhs5hCFC0xTQnE9iIm9yNumHB+5CLD9EXrkDnCAiYWcR2LGf4kUqubOozYiJJ6oGL0J1n/iJxnSJHordVO61Yyy+41wlpoteXRrkk2jlf7r01U9/x1OEGMBVIsV1Dq1W6303NXyFMT1q8= Received: from AS9PR06CA0420.eurprd06.prod.outlook.com (2603:10a6:20b:461::7) by GVXPR08MB7895.eurprd08.prod.outlook.com (2603:10a6:150:17::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.32; Tue, 9 May 2023 17:18:10 +0000 Received: from AM7EUR03FT042.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:461:cafe::de) by AS9PR06CA0420.outlook.office365.com (2603:10a6:20b:461::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33 via Frontend Transport; Tue, 9 May 2023 17:18:10 +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 AM7EUR03FT042.mail.protection.outlook.com (100.127.140.209) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6387.18 via Frontend Transport; Tue, 9 May 2023 17:18:10 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Tue, 09 May 2023 17:18:10 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: c4d3295fe198977e X-CR-MTA-TID: 64aa7808 Received: from ed1350e8e8e7.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9DFEAC3C-854C-47B7-93E4-8455581BD3EA.1; Tue, 09 May 2023 17:18:04 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ed1350e8e8e7.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 09 May 2023 17:18:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MqQFgyEM+4VHtCKcgRIKtwvtzpvfagfMP3csCzqdcIK6ywVDpkVF0yysphY6ARoTHemgZcttY4Ajhl66GIHGUyapOEIFIGxpibG5aXltVcpkbKbuvwffgJZv2kMJJZjjGohAW/HLTwpyrJtPftQtS9M5UubLJApSKzkGMoAc46WbmmMyumCLJ8nlHfemPND+PENs0k7yQKDeJ3422fr5Ok7RhZNc3LhcVW2WhXx20G8C/RQYpz9BsPr8QAApWI//qJ7bWq3YqpOrWsZ9eiCqtOOMlfpDtVJPc/zZ8d9MtBoIdGOIOgqllUulJ+TpR/+oQzLZURJrhkj66/A1JO1PHg== 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=Cx60uvHkTUtoMYljo75d4FXfY8+1NB5cd44zMxlAL0k=; b=lWY60/CEk94UjmXWdI10qmrCF0IZCfjLwEKWix4Z06y40mwUfy2jtLz5rXREpRCkN6Oz1KDxjEzz/eU338rNQbDSgHv56SQbCcKc6YHkV63WhWEDOGhREC+uYgA2z7qmi9CJTsQ3m1SWd05v9QDmyWFDhi0n3/H4b6DTDp5auieOuPr79orZWmGvqKnbdEV/jL7uUzgh8qtG7v6sGWFI7kuql62X3K0iD11WsrgNPcys95uiXYi4uWnh/ycj/RYRAJt7V55aV4ZN3RgbvB4hgdSp/JL+ADr5QJERsgYxQlzsd7DMSccPCqVHsDBEvuUvUVYHuwf01x6FtofJEkCLog== 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=Cx60uvHkTUtoMYljo75d4FXfY8+1NB5cd44zMxlAL0k=; b=Dx2lTQxKHSS0WWI3KJBXqg2W8/ndRWdhs5hCFC0xTQnE9iIm9yNumHB+5CLD9EXrkDnCAiYWcR2LGf4kUqubOozYiJJ6oGL0J1n/iJxnSJHordVO61Yyy+41wlpoteXRrkk2jlf7r01U9/x1OEGMBVIsV1Dq1W6303NXyFMT1q8= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI1PR08MB3390.eurprd08.prod.outlook.com (2603:10a6:803:7d::27) by AS1PR08MB7587.eurprd08.prod.outlook.com (2603:10a6:20b:473::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.33; Tue, 9 May 2023 17:18:02 +0000 Received: from VI1PR08MB3390.eurprd08.prod.outlook.com ([fe80::1a93:2d42:2bb5:eae9]) by VI1PR08MB3390.eurprd08.prod.outlook.com ([fe80::1a93:2d42:2bb5:eae9%2]) with mapi id 15.20.6363.033; Tue, 9 May 2023 17:18:01 +0000 Message-ID: <8af86811-54cf-f8e3-18a2-02ffb640dfc2@arm.com> Date: Tue, 9 May 2023 19:18:02 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [PATCH 06/16] arm: add smax/smin expanders for v*hf To: Kyrylo Tkachov , "gcc-patches@gcc.gnu.org" , Richard Earnshaw , Richard Sandiford References: <20230509121937.206183-1-christophe.lyon@arm.com> <20230509121937.206183-6-christophe.lyon@arm.com> Content-Language: en-US From: Christophe Lyon In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0202.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a5::9) To VI1PR08MB3390.eurprd08.prod.outlook.com (2603:10a6:803:7d::27) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI1PR08MB3390:EE_|AS1PR08MB7587:EE_|AM7EUR03FT042:EE_|GVXPR08MB7895:EE_ X-MS-Office365-Filtering-Correlation-Id: a7f8d2a3-07a3-4073-4d3a-08db50b15d05 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: z+/uxkUiYRTT/gp/d8MjGjq+Lt9F0HjCzr2OQQNLRU82KxKXG3OQ/ySx5M/vC/7uDPAZw/YqY3DMuSeWm6m+gyW07utmuakf1jdYcfpmFwAZ9w3vlf1mYBMLZikWvQQKCdbMNp/n1Oytp+H41xWxvnMWrHUkuVD/Ax0ZFmkF2Rpd6rJbx4mhInciSKDZ8PyfO80fYBAa/J8ssdN3I3/hQffSxXjwqDacBpSxcsJ14Xa8HxgRGaIxRRtMCfD8FvgFGBF4pHnf2ybQKpb7zv5pVBy14c22SQdzsvufiLqAPIjS+bbr1esWfUOS3zYGZfzQaaDJoim3viSFQRJmc8phqlgZEowb4TATX4Z4MxaoMwduFOCNJfFxHY+P49yYuR4J85T6Tmox+IchiaF0VDDhrOScX+NjsuKrzWxYddn+C4fjLcq9SxdULYq4yBSY372nx4cHT+s0gAcudVlhWTZt72yKyMdEJ3srxQMMo+Ht76dswjGo+jSS5p5tcCgFQz0Kqh/k26j+ATYeOVEKD8ab3AKQNzXNTcGLsxVfu2/m7CssidOaeq/ULRa9C/lOEIQxrc5NbddzwepdTj7iJjUGRlj8WrUmN0Qd7bYUBOimFJP/JAGqqi3nJa3+hdQe6YVw6sPZ/bzXo6u4W3XRm40r0g== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB3390.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(346002)(376002)(136003)(396003)(39860400002)(451199021)(66946007)(44832011)(66556008)(6636002)(66476007)(478600001)(8936002)(8676002)(5660300002)(26005)(110136005)(31686004)(316002)(41300700001)(6486002)(6506007)(6512007)(53546011)(2906002)(83380400001)(186003)(2616005)(31696002)(86362001)(38100700002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7587 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: AM7EUR03FT042.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: afff59de-82e6-472b-2a88-08db50b1579d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nNwUmhgRWkX3DlHe+tyVLP/p9SR3bDnSUMDsTHCrdrBjMMnqwMhl0bM8xF5GL0SxfSVqa43gn+XrT7Ciy17gGD79bK9LW71lhloSSzcyMK1FWKxQUI7Vb3iYQKNsyQyUCRsfKx+KCGp4n9yxh9rAYySp4cRE9YJ1FQDHOlUOASxRdmyr6ey79jm8/4wqO/3e+s8fAunzBJoufunjpgo89Dz5aosIHmo1t1aHqnBN401k92sarEoYek9wPziIall8Y09rxNoUh/0Wph2O72vFF6KtvcfS/C/Vmpkn04+ZKbk055j4c4se5++BGGj4doZFw0GK0wFhgswORoVUyB2m1b4cEjROJdrzyy0PYyYempJloCycYTQTlIyKbmnAU8VMeVesTg9viYTzmKc0R2OLQzm7VbDRKW8oz1k+0ykYh/9NtClm4TpXPvpONU0p0nWmqnMO3/Wthd0WpmCtARV8X71I4BcTS+azPg1CIjrIa9SuxfF5R5Wmyg+KpYbxF4GfGsoOtI4mFvp36WmdgHXP6NqJqH1rvpSIjS1XFMiQpoKfjLbknk9TgGBNpvWUysVqgO1PDHgd+6N31cVWFqbzQelimqjffJTlSIVw3QVCICPs0hoCgttwGSxB1cfmMCcqy7oMR3CTJwM1hdZN7ArJvLlNLeqsAv4TbRmvh7Wsp8Phyh7kPBf/2YuOd8a0nyvPTuVsfDjG+Lv/f2SK/N0mbSABkCXEJ6z4HGT2Cr3XjH8= 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)(376002)(136003)(346002)(396003)(451199021)(36840700001)(40470700004)(46966006)(31696002)(36756003)(86362001)(110136005)(478600001)(6636002)(70206006)(316002)(6486002)(70586007)(82310400005)(40480700001)(5660300002)(41300700001)(8936002)(8676002)(356005)(44832011)(81166007)(186003)(82740400003)(2906002)(26005)(2616005)(53546011)(36860700001)(6512007)(6506007)(83380400001)(47076005)(336012)(40460700003)(31686004)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 May 2023 17:18:10.2650 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a7f8d2a3-07a3-4073-4d3a-08db50b15d05 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: AM7EUR03FT042.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7895 X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,NICE_REPLY_A,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: On 5/9/23 15:48, Kyrylo Tkachov wrote: > > >> -----Original Message----- >> From: Christophe Lyon >> Sent: Tuesday, May 9, 2023 1:19 PM >> To: gcc-patches@gcc.gnu.org; Kyrylo Tkachov ; >> Richard Earnshaw ; Richard Sandiford >> >> Cc: Christophe Lyon >> Subject: [PATCH 06/16] arm: add smax/smin expanders for v*hf >> >> This patch adds the missing expanders for smax/smin for v*hf modes. >> >> 2022-09-08 Christophe Lyon >> >> gcc/ >> * config/arm/vec-common.md (smin3): New. >> (smax3): New. >> --- >> gcc/config/arm/vec-common.md | 14 ++++++++++++++ >> 1 file changed, 14 insertions(+) >> >> diff --git a/gcc/config/arm/vec-common.md b/gcc/config/arm/vec- >> common.md >> index b5fc86fdf28..1f9b7992da4 100644 >> --- a/gcc/config/arm/vec-common.md >> +++ b/gcc/config/arm/vec-common.md >> @@ -116,6 +116,13 @@ (define_expand "smin3" >> "ARM_HAVE__ARITH" >> ) >> >> +(define_expand "smin3" >> + [(set (match_operand:VH 0 "s_register_operand") >> + (smin:VH (match_operand:VH 1 "s_register_operand") >> + (match_operand:VH 2 "s_register_operand")))] >> + "ARM_HAVE__ARITH" >> +) >> + >> (define_expand "umin3" >> [(set (match_operand:VINTW 0 "s_register_operand") >> (umin:VINTW (match_operand:VINTW 1 "s_register_operand") >> @@ -130,6 +137,13 @@ (define_expand "smax3" >> "ARM_HAVE__ARITH" >> ) >> >> +(define_expand "smax3" >> + [(set (match_operand:VH 0 "s_register_operand") >> + (smax:VH (match_operand:VH 1 "s_register_operand") >> + (match_operand:VH 2 "s_register_operand")))] >> + "ARM_HAVE__ARITH" >> +) > > We already have expanders for smin and smax, can we just extend their mode iterators to include the VH modes? > The ARM_HAVE__ARITH checks should still gate them properly and we could avoid adding more bloat in this file. I opted for the most localized changes, to avoid breaking Neon since there are already so many similar iterators ;-) It seems I can just use the existing VDQWH, which seems to be VALLW (as already used by smax) plus V8HF/V4HF which is just what we want. Also, ISTM that VALLW == VDQW, am I misreading? Thanks, Christophe > Thanks, > Kyrill > >> + >> (define_expand "umax3" >> [(set (match_operand:VINTW 0 "s_register_operand") >> (umax:VINTW (match_operand:VINTW 1 "s_register_operand") >> -- >> 2.34.1 >