From patchwork Thu Aug 3 08:09:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816327 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=VUJ8b0TO; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhNc4R3yz1yZl for ; Thu, 3 Aug 2023 18:10:24 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 99CE03857C41 for ; Thu, 3 Aug 2023 08:10:22 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 99CE03857C41 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050222; bh=/TM2maCFZy4enYaeMft2JW//xjNwCi1wrX4/FI7pxo0=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=VUJ8b0TOa+ptUNkwj7UC2W54MQtfzOd1MLB57MiU2QFwde02eYp+A8BghgHap3Kfv Xm+IavS3Y2kpGYUwoJXx93leyOrxznXEKPyb7xoLhgTTJ0hVd87YPJIB4V8QNqCkIi KLCVUiBFCApvCshTSycrsmAmVfBwuP7jfwrvuExk= 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-am6eur05on2052.outbound.protection.outlook.com [40.107.22.52]) by sourceware.org (Postfix) with ESMTPS id 5928E3858421 for ; Thu, 3 Aug 2023 08:10:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5928E3858421 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F8zDUBZA3LuMcJn8V0r/mD8e+CMcsD6qdr1fY2VVnVfFK9q0YRUhMuE4txO8kvnmfs4SN3j2SC/BWGx1LdnFtSJEnLS/EBYPvxRTEhXEiP/Q8zx3WjPTHoNNedN6WAUAsBmbVHbzWlZU7Up/U9utxrbqnh/if9MVu4DqNc3n0uEqu15nP4CxSpvkW2GraEOtDjxH9VjUSC3l+XumisybjdOBvtprnMy3iwzooQwjUt1UHXYX1ruz4OZIQwYzq3gNnnZcxxqGXJBDinCCb/FYXIlHd3K68WdUVEHc5oz+UYs2b2w8JydqYKxBsC9cIf2oUPWNQjBKE7dzpvtnJVGKCA== 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=/TM2maCFZy4enYaeMft2JW//xjNwCi1wrX4/FI7pxo0=; b=gGDeOxzS8Df1KFvV/sgvPJJIijQgUVk3xj6yU0kyN7pvPEMlYE/iHNTmQGSRuZC02BXJjDJ5SpHhgSFcTigugowJjFjCtAftLVXoQqbswpbtjYaR+ohSy09TNBJkQvdcpV0dR74g6T3yaXI0FiCUMvR5qNFlzMCzDviiJoDy0b910CVk/FDns8PUT3iHMdZYD59ebfMWPZLA1XY+8bJsBzneV7WgZTkIYT5ZYpiG29AW51JdNVkirZuWvD3yiXlSHL62/TdU6WFYXjY2QaCsyzf5eBCnXUzrJnqy7EoW5+2mzj/l5HWQMJAMBOf/pj61PgpoF+G32fl6nSl90qpg2w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by AS4PR04MB9265.eurprd04.prod.outlook.com (2603:10a6:20b:4e0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:09:58 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:09:58 +0000 Message-ID: <7e28ba70-d18d-13ad-78bc-6e97ea6796a3@suse.com> Date: Thu, 3 Aug 2023 10:09:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 01/10] x86: "prefix_extra" tidying Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR0P281CA0202.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::17) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9265:EE_ X-MS-Office365-Filtering-Correlation-Id: 50a03e97-ffa2-4320-a308-08db93f90786 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tFDnkl9qxN5l5Qp6f7hAPrrDRC8IxM4kC7jM0lQulE6gGhZkl0g0Y4UfwNG/WfI6OJwW6yJqHzNcqah0R/OiwLD0J8as56Mw9mFa2h/onuHM752PaLBKq8kBKN0ItDYaKsoAAuyr9oum6QxCkNPw76f9w8JHSx93bYP1H0p5XJH8ZOa3uH+EY6PUcRvMqO7HCZqTxq3vn5Jr97jbjI9RIJfGYTjz2isDZ5Y6YcEQACZXkgCqWYdOuF7OhKLHuqfE2nGUxSLT2IaAaknXd6SchUKWZ3AMo/aeU2pleVgTcwvvf3ZQwMawagOpyytd6ohvVXFVJTZr9Qzl7PeyQ9YK/wi7XhXoFWwURdKhUUm8Ql2slQvT/IrhwD6HDCKuazracyxDxNJDVxoOKrb848t4GyxqlOJ1f0d3el6aqFeZp4hqbwgcjA0wCXDOHefGMIxlTerQFP3cqCI5T9SMWCQcxPSQVBKJLSAPeXgfA4J8fE3ee6h7Ymc1yCMKcZOLKpJIexN8aJ/BgTQNauzqjNP4+/MvDAM7vcGNct5sHDJaerLdvmBd9bvB6IOHssi20tUiC3XutVn3T3MDcx2NZ/rF/d3T3XejGBktjNLIrBXYkECjYK1vK9zLGM5So8GFWGJVQsiBKMqy+njOEaZjxWkYEA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(136003)(396003)(346002)(39860400002)(366004)(376002)(451199021)(2616005)(6506007)(26005)(186003)(316002)(2906002)(66946007)(4326008)(66476007)(66556008)(5660300002)(6916009)(41300700001)(8676002)(8936002)(6486002)(6512007)(54906003)(478600001)(38100700002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?sMW5paqCxcCBeOZ2EW5AxO3T+KlN?= =?utf-8?q?KQZrh3g53NEZC57hIEIXU9o7X2iXrlAt6EAGc7gjw+S/ByWAZUBty6WMxUs4oYF/u?= =?utf-8?q?xdVgHnYJp6fNskiVychJQv0ne2lYHwHrgmCeo72jlus2bEBKpaE+4l7cz7QHg6dUU?= =?utf-8?q?MYC2q190MWwlHzgTdKxkui6sdKGc/w//WtmXbCv0hf5Z7x6jiNSkS0StgpOC3C8dQ?= =?utf-8?q?pe25gikHaM9Fx4YZpdBwx0A38NmUhQqR/vcyHWATuPGiS/AlC+rdXliALs7Q6+A3/?= =?utf-8?q?v0MUQMSQfvcX5GnkTxL4WCusXQG4PCOYBJ/xXVgqDJ8ChCVA2xpaYry8eeHxNwJAf?= =?utf-8?q?Ud9wJvOSv8hiUx731JFwNxUyBTENthHDjAAM/T4UMKoOwJdvA+lIUKtKlNCRFsxZt?= =?utf-8?q?YMOkop/9abf4cnv8Nvaa8XZrbM5poTYRhVyy/pzxWflTw24mWDBnjB2NzP8IUMu0Q?= =?utf-8?q?6m9aP2yxXdghqPJcqM/PXa4jaqOfO1vmrOh1v2/rS0rgmGT87tccKuRZxpsDAq67e?= =?utf-8?q?5GBeyDG6FjkyPqmo+N8RxbAgN033H+uqLrPkKS+mKOEy4cQ14J5bl6MCvS9kDYaem?= =?utf-8?q?vy6YIy68n5XAvDFzzl9t2eHWO4Q6pyQmxUmA4XZqLJ5cEGtinx/5+PbzcZdA6/byy?= =?utf-8?q?/VlyDDJEb94cMSqbv/nw6L8SVkU7RDIKrBYDBaTEDNLyed0CZUNa45EtZWNp8NEBF?= =?utf-8?q?Oe/37TdP7WNNkjBcD/Gw9B8dsrWsk9n+f0jkZEnB17ik4+vbY5YGpeQFBztp47Qbi?= =?utf-8?q?MiMCgLGFC1Z28zOX8kgDPUHO9aw5LcRoEzaW06GmezyF9YzBIbyo8mn7kEGaSI1qE?= =?utf-8?q?aCV/NnKYU5kf5+ayymbGT5gB8Zj7LdhS0YS27dmsbbKXSmMg7lttLbgTNdf3g6hNu?= =?utf-8?q?gpvVRq4qz7St36u4vAIHJKD9oFi9gFa9qhbqeDlXNvW3P6X2ziSj2qftMzOfcMRot?= =?utf-8?q?2WyLv/P5iLM/I8oZA/fx2t8Hg2xfaCJx9VapH8NO0tvGIb6GzA5zGR/q8BwEBBPQN?= =?utf-8?q?N2UJYUBbWtf3xbNZd3CBIb6UW/tgF41jAMbQhNdfGpyb85Uxv0ce9JwytLRZ07Frw?= =?utf-8?q?OKc/SXXlPPU7WsEjLx0m2eCwc2ZKFdaYfjdy81UfAmk0q7m2UZyfbj2xMp46cppaB?= =?utf-8?q?89BO/2FKRUUBqAr1L+VEQR1LjJvNtWxUbmzATOwyjjDJq4GUvusPePcsgKBrYM3VJ?= =?utf-8?q?Sgll7QgbxjLvOSipWHiETlm0LicI8LQ3pv42CWnh8NKy4gYQr/c1ZvnU+CQpsYQyb?= =?utf-8?q?clCJdkH/gLI0S3OvLr+x3gzjQbBmY8H1i0sgWBmOzug/jKihQdk5KF3mISTKq4IOq?= =?utf-8?q?7mmOZC77vUb/uQtb7p1skzFJUyV+0XyJv5Vs+fP7BVXrZoZYxFmIs2+NAW9ccpAoX?= =?utf-8?q?mkDeVWHS23eHsXUPXLQh1XBwoZZEe5drLSGibL+++56nJyE94VfareYhu4dKEDyC4?= =?utf-8?q?cxkG8sVwgfDjP09hW4vdttnVJjUbU+LrE3SKo0KnmuaqFH5P24mOY0Q0UL+mOjlJ+?= =?utf-8?q?vLEd+hfhN6yx?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 50a03e97-ffa2-4320-a308-08db93f90786 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:09:58.7037 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: WCWrlLkIgs2RN8srlxgrVdfKr88ztSKlNfNBFimBe9V9oB1wfaDCK8YuhlQ6TxfeLUGQCogCpoPw1z4dFvZ5+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9265 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" Drop SSE5 leftovers from both its comment and its default calculation. A value of 2 simply cannot occur anymore. Instead extend the comment to mention the use of the attribute in "length_vex", clarifying why "prefix_extra" can actually be meaningful on VEX-encoded insns despite those not having any real prefixes except possibly segment overrides. gcc/ * config/i386/i386.md (prefix_extra): Correct comment. Fold cases yielding 2 into ones yielding 1. --- I question the 3DNow! aspect here: There's no extra prefix there. It's an immediate instead which "sub-divides" major opcode 0f0f. --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -620,13 +620,11 @@ (const_int 0))) ;; There are also additional prefixes in 3DNOW, SSSE3. -;; ssemuladd,sse4arg default to 0f24/0f25 and DREX byte, -;; sseiadd1,ssecvt1 to 0f7a with no DREX byte. ;; 3DNOW has 0f0f prefix, SSSE3 and SSE4_{1,2} 0f38/0f3a. +;; While generally inapplicable to VEX/XOP/EVEX encodings, "length_vex" uses +;; the attribute evaluating to zero to know that VEX2 encoding may be usable. (define_attr "prefix_extra" "" - (cond [(eq_attr "type" "ssemuladd,sse4arg") - (const_int 2) - (eq_attr "type" "sseiadd1,ssecvt1") + (cond [(eq_attr "type" "ssemuladd,sse4arg,sseiadd1,ssecvt1") (const_int 1) ] (const_int 0))) From patchwork Thu Aug 3 08:10:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816328 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=Ot+WsBke; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhPK23Vbz1yZl for ; Thu, 3 Aug 2023 18:11:01 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 72F473857730 for ; Thu, 3 Aug 2023 08:10:55 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 72F473857730 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050255; bh=wfT8Us3t7ZVSidfugZuux0fI287AtW35Z6eAkWlwgbw=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=Ot+WsBkevbViZ+1AR7DPrdL+j0U4g0XHJs1rV5WXIq5zNRBd+7EXgbBA00pmyb4gh mwE1t1S4XYveVlWqu+LLSifZDNEj50eGs6IW/GLgpN1LY1MpIQaegbZBYtIfrqacta 4JMqmKfQwWv1VcWVTgNCS0IXE6ccDvP9UFQDO+m8= 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-am6eur05on2089.outbound.protection.outlook.com [40.107.22.89]) by sourceware.org (Postfix) with ESMTPS id 1865E3857835 for ; Thu, 3 Aug 2023 08:10:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1865E3857835 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KhoyxxreC0e4+wXoypRmdqf51bpR6uAmS107XZo9vqTV4kQfXjRhgcx4pgnsSF8QuKWQsg2w0p+gtJrEKDKYzDrt2042Q7z7Ov3ol9ktgLT8DoPvBs9sRaDkGExWyEE2sBXBzsJp4y5oD7RV+GlHMscfugcnFPaDLeE9qi+g+wHqNyzh2qzyqO6XazHwFRPBfraAZrkpqM1Mk2HPybLPdkcanf5C5YLXIvFlu/f0/IQYMxQYnAS0zw3JusPuua97tFfj9Fbts1Ag600QR45+vq/oMsmM33XgW/oI1uRtoMuCXXLJ2GXjmmerZg8rOG4a8Ng8/3GdeuUUtM3TArDHEw== 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=wfT8Us3t7ZVSidfugZuux0fI287AtW35Z6eAkWlwgbw=; b=cqjSUhADnxOFleoU3AAg109m860DsaKEe0W6+OwOf5gCNOso8VN/pJUSxY/xK0Yql1qP7WRNmpqqtOnedgB83SvTaiv0dgh6QksUtw4O02hzfOUj/0G68LpZTbBNRkX1h7LE0JCltCPG67gwqjP+07Kv01+pr3KrLel2S96tP1tU5eZ3ynzD2LyyntrK1Wclu67SVlEWileNWsmxfzRgmkDddNxbXWM+Gcf/GEzeRdE8jJtTvsrPKybSO6cQZuI6VvVwlmFF5dbw66JoGRS2jfAL6K2SxrW6jy1HXfLKixWvh0f/wOQpxY2EbBEhNbNMsRkTy5DL8/jVweAHCTzc/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by AS4PR04MB9265.eurprd04.prod.outlook.com (2603:10a6:20b:4e0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:10:27 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:10:27 +0000 Message-ID: <2c74b105-09aa-2db4-d0be-4d8a6609b851@suse.com> Date: Thu, 3 Aug 2023 10:10:25 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 02/10] x86: "sse4arg" adjustments Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR0P281CA0210.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::14) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9265:EE_ X-MS-Office365-Filtering-Correlation-Id: 6a104b62-ad96-48b7-7f55-08db93f918cc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JxW0dC8I8kS3h+am+UxayCBJQzRxUKDGIgDR5quBxarSxq5ChbUPASFr8ntsFjVC3UCM8r9DbhtVmN+Fiy5Zyjcwnmf0q4KdUcoSHMy+jHXWEorsFWY0CI0obhq0L9gtVgv4tmGI4IbjZTbjW0BI3yNM9ASCTeel54O2/xC54mqx+r8bB8O+maifgBg15z3V/fil1SeKiw4R8RqlzmdWxgxwtmgAV8R/gjIFL/aKndQ8jfmMjk3BDfFyet0+k7M1tjCMN9k1oxO+8rUtD9RWAOdsgqxw0YNu2uNOmstZyUzNQe7I4AAytrHGJNpHvBh0fLGufyBrPhuDN0bnUqZZ0VoOJZG7Du7nl0NYtNKdrCCLQ8dlbMSxqyDS5yfpkRhQ4osp27Q+2PUWNtQWKszSTMQaTCGaDgLRs9L9OBD9ETOVWGNjgfukKjsK235/gnAS5M+dWU9vxTaBGmPNjdi4Q0RJryM3qPFztMxUZI+M3dvLFJ3oU9BedYoePTwJpfK36HabQ7VcxEdSr3XlWaZm4edklZyr3+zm+A38oUaPL43WM+JRrN9EzozoIcTHAaaI8ztRh/TiZ4xbguufVmS0AV27Hfj32ihLSHKFe4bD1n9F8ZL1RkQcc5MfeFNg3N+n2XSVf7FvJtqmSez66us+Hg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(136003)(396003)(346002)(39860400002)(366004)(376002)(451199021)(2616005)(6506007)(26005)(186003)(316002)(2906002)(66946007)(4326008)(66476007)(66556008)(5660300002)(6916009)(41300700001)(8676002)(8936002)(6486002)(6512007)(54906003)(478600001)(38100700002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?plNgAw8c2pxVw+IU+n8tOhPXMxia?= =?utf-8?q?kCifvpdaecNdUa8PNeqJorB9KIUwWAYsOEiA1I7RWI/NJe1BB0SftTUDL7KOE1oc3?= =?utf-8?q?2UfDkrqwyKrOomjklwwGkVKUntmgLhYaaOWNxIwo+82FP8NVNDAtwCxTHcA6HMCo2?= =?utf-8?q?5+sgyrg/JDWWsm1IVXZE/ZKu/CSXdzvWMFMXtxEOnvFX7p+TEH/jDC90znMuVWMRZ?= =?utf-8?q?WUxRT1kyS4Fg2mMeQt6tGPdK6sinjnZl80OkmMFtZG/MFS9lQRrEtXO4YDmmikisV?= =?utf-8?q?OyxHD0bQS4u7GPmaSnvjMRziF6YiWYr2tndUVfQ75GPOuwf5H30smQdlo2btvydhh?= =?utf-8?q?s5j0KOKM0bvRsU7OhS6IkEuXy7A8rO+u5VVzUM7nBpsIy4i/NQAP8IeVU/oKCVGiY?= =?utf-8?q?4nJXG59YopVeCZ8ov+aD3qGIo01Tf+ZOieeyiI/oltG6ptu7jJujHi5jzb3Npyfp7?= =?utf-8?q?a0Ggf9gkZDEWTCEiRtSdzXVpGkWy0mOfJT1CL9CPo6mmkG9Qr4G5IwqHnggmJF3Q/?= =?utf-8?q?mHu5Fo1S1phdPd/0In8gKQn5LF5LGp6+N0IZv0KxGs9BIGzBOnm1Q0MoryAh7HLEu?= =?utf-8?q?01gVunpArWo5cpevOlAJO2xrZOzLjqo/Wno+q2oQUXYq6fYlwDwlHWMKXJ76w3Myh?= =?utf-8?q?KloeczlsyKG9tyzoZOeS3E8b/3/IciLe6MbhNMRSgxhMJvUqToBIQJrbZb89RpnOi?= =?utf-8?q?7Y1aXPxJQLlobxP9EYEg4s/2JBuyZCXpZSdLWIFlrArSAcnZhiDqQ1cw0ZF3RJ21T?= =?utf-8?q?yT+nC8Ew7+Ip5kXgx7pEqOf/g/6uQOsNbtGdGETuYNGC7yWpyYx3Avo6RkQjA95wr?= =?utf-8?q?2udRpgmpgyUooOVZU8TEFHiiaAngr5+ue7FEFPcFbpVMzt9j9KrPysAQhghHR8aua?= =?utf-8?q?XS5K6VE/iKCRIyTs7PJbzzn7ETLfuSbdr0gBY1IYFDYNlYrvmfH7tKfOzzswn3/j7?= =?utf-8?q?m31GiGR25fkpl38OHpIuBnvDF/UYSE7jf4sKl283dph7xdkXZuipq+a5Fr0exrwzs?= =?utf-8?q?icjrXx0hsuQBBjaXsuVwEJsE+iD96OTX3sxsNBDeKpULtDyOsbR2CmPMdH7AGnJU0?= =?utf-8?q?su4N2xuQUowimssbNUtPFs1Tyeyg6ff1GfH01P0cYxPrupIKT6kmFxv/Xq0+5w+Pp?= =?utf-8?q?tlK8obCNFUi0NPaaMvbsWDlHPIOMzckOIEeLtK//8rQIAdy0vEhI1iPE0H7OMvlgC?= =?utf-8?q?c5VpQoIwiv3ga41G1hEns5MBXySxDlGFFrU8Dq2dteC9I/d51gnJKVea1JND5aTkb?= =?utf-8?q?NBkcIRe3iFcyMaonmfBkCBvXauQt31zIaiTZt3ZqNE7NmcdFWezGwFgzhDfIWtp9V?= =?utf-8?q?I1JpkbZ+CN3wPUek+OuB/oRN5EMor0D28K2nwng2G1DE3pl2RToza1D6k83mWo7TG?= =?utf-8?q?+O43d1aLrY51zW8zW3laoojBZQMigJ1TMNLM8iHmB2QRE2ovEilP0QbrdelNFcrT8?= =?utf-8?q?s2uCklykez5wdeNB8MfBzz3xb5U3X8vw+lr512O9viOvdfJkCkIrhNnO4FSIrE5Y9?= =?utf-8?q?Z1YungJw9vaU?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6a104b62-ad96-48b7-7f55-08db93f918cc X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:10:27.7647 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: th78NczG+OaM3TQL/rQfb2h2g0Oai/02/iW+c11A660W6yCwz2POxwHOXoZyN3nw3zcdccGrR/FZnxX5R/rP3w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9265 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" Record common properties in other attributes' default calculations: There's always a 1-byte immediate, and they're always encoded in a VEX3- like manner (note that "prefix_extra" already evaluates to 1 in this case). The drop now (or already previously) redundant explicit attributes, adding "mode" ones where they were missing. Furthermore use "sse4arg" consistently for all VPCOM* insns; so far signed comparisons did use it, while unsigned ones used "ssecmp". Note that while they have (not counting the explicit or implicit immediate operand) they really only have 3 operands, the operator is also counted in those patterns. That's relevant for establishing the "memory" attribute's value, and at the same time benign when there are only register operands. Note that despite also having 4 operands, multiply-add insns aren't affected by this change, as they use "ssemuladd" for "type". gcc/ * config/i386/i386.md (length_immediate): Handle "sse4arg". (prefix): Likewise. (*xop_pcmov_): Add "mode" attribute. * config/i386/mmx.md (*xop_maskcmp3): Drop "prefix_data16", "prefix_rep", "prefix_extra", and "length_immediate" attributes. (*xop_maskcmp_uns3): Likewise. Switch "type" to "sse4arg". (*xop_pcmov_): Add "mode" attribute. * config/i386/sse.md (xop_pcmov_): Add "mode" attribute. (xop_maskcmp3): Drop "prefix_data16", "prefix_rep", "prefix_extra", and "length_immediate" attributes. (xop_maskcmp_uns3): Likewise. Switch "type" to "sse4arg". (xop_maskcmp_uns23): Drop "prefix_data16", "prefix_extra", and "length_immediate" attributes. Switch "type" to "sse4arg". (xop_pcom_tf3): Likewise. (xop_vpermil23): Drop "length_immediate" attribute. --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -536,6 +536,8 @@ (cond [(eq_attr "type" "incdec,setcc,icmov,str,lea,other,multi,idiv,leave, bitmanip,imulx,msklog,mskmov") (const_int 0) + (eq_attr "type" "sse4arg") + (const_int 1) (eq_attr "unit" "i387,sse,mmx") (const_int 0) (eq_attr "type" "alu,alu1,negnot,imovx,ishift,ishiftx,ishift1, @@ -635,6 +637,8 @@ (const_string "vex") (eq_attr "mode" "XI,V16SF,V8DF") (const_string "evex") + (eq_attr "type" "sse4arg") + (const_string "vex") ] (const_string "orig"))) @@ -23286,7 +23290,8 @@ (match_operand:MODEF 3 "register_operand" "x")))] "TARGET_XOP" "vpcmov\t{%1, %3, %2, %0|%0, %2, %3, %1}" - [(set_attr "type" "sse4arg")]) + [(set_attr "type" "sse4arg") + (set_attr "mode" "TI")]) ;; These versions of the min/max patterns are intentionally ignorant of ;; their behavior wrt -0.0 and NaN (via the commutative operand mark). --- a/gcc/config/i386/mmx.md +++ b/gcc/config/i386/mmx.md @@ -2909,10 +2909,6 @@ "TARGET_XOP" "vpcom%Y1\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "sse4arg") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") (set_attr "mode" "TI")]) (define_insn "*xop_maskcmp3" @@ -2923,10 +2919,6 @@ "TARGET_XOP" "vpcom%Y1\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "sse4arg") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") (set_attr "mode" "TI")]) (define_insn "*xop_maskcmp_uns3" @@ -2936,11 +2928,7 @@ (match_operand:MMXMODEI 3 "register_operand" "x")]))] "TARGET_XOP" "vpcom%Y1u\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) (define_insn "*xop_maskcmp_uns3" @@ -2950,11 +2938,7 @@ (match_operand:VI_16_32 3 "register_operand" "x")]))] "TARGET_XOP" "vpcom%Y1u\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) (define_expand "vec_cmp" @@ -3144,7 +3128,8 @@ (match_operand:MMXMODE124 2 "register_operand" "x")))] "TARGET_XOP && TARGET_MMX_WITH_SSE" "vpcmov\t{%3, %2, %1, %0|%0, %1, %2, %3}" - [(set_attr "type" "sse4arg")]) + [(set_attr "type" "sse4arg") + (set_attr "mode" "TI")]) (define_insn "*xop_pcmov_" [(set (match_operand:VI_16_32 0 "register_operand" "=x") @@ -3154,7 +3139,8 @@ (match_operand:VI_16_32 2 "register_operand" "x")))] "TARGET_XOP" "vpcmov\t{%3, %2, %1, %0|%0, %1, %2, %3}" - [(set_attr "type" "sse4arg")]) + [(set_attr "type" "sse4arg") + (set_attr "mode" "TI")]) ;; XOP permute instructions (define_insn "mmx_ppermv64" --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -24821,7 +24821,8 @@ (match_operand:V_128_256 2 "nonimmediate_operand" "xm,x")))] "TARGET_XOP" "vpcmov\t{%3, %2, %1, %0|%0, %1, %2, %3}" - [(set_attr "type" "sse4arg")]) + [(set_attr "type" "sse4arg") + (set_attr "mode" "")]) ;; Recognize XOP's vpcmov from canonical (xor (and (xor t f) c) f) (define_split @@ -25739,10 +25740,6 @@ "TARGET_XOP" "vpcom%Y1\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "sse4arg") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") (set_attr "mode" "TI")]) (define_insn "xop_maskcmp_uns3" @@ -25752,11 +25749,7 @@ (match_operand:VI_128 3 "nonimmediate_operand" "xm")]))] "TARGET_XOP" "vpcom%Y1u\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_rep" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) ;; Version of pcom*u* that is called from the intrinsics that allows pcomequ* @@ -25771,10 +25764,7 @@ UNSPEC_XOP_UNSIGNED_CMP))] "TARGET_XOP" "vpcom%Y1u\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) ;; Pcomtrue and pcomfalse support. These are useless instructions, but are @@ -25792,10 +25782,7 @@ ? "vpcomtrue\t{%2, %1, %0|%0, %1, %2}" : "vpcomfalse\t{%2, %1, %0|%0, %1, %2}"); } - [(set_attr "type" "ssecmp") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") - (set_attr "length_immediate" "1") + [(set_attr "type" "sse4arg") (set_attr "mode" "TI")]) (define_insn "xop_vpermil23" @@ -25809,7 +25796,6 @@ "TARGET_XOP" "vpermil2\t{%4, %3, %2, %1, %0|%0, %1, %2, %3, %4}" [(set_attr "type" "sse4arg") - (set_attr "length_immediate" "1") (set_attr "mode" "")]) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; From patchwork Thu Aug 3 08:10:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816330 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=oMAhkVvt; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhQQ2ny0z1yds for ; Thu, 3 Aug 2023 18:11:58 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 517073857342 for ; Thu, 3 Aug 2023 08:11:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 517073857342 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050316; bh=AMzD3GJnpe/nNGWZUobyEHwqzi1A7TLBY3i8cu5eZNM=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=oMAhkVvttc3RNwBpzxj/sgNfLMXp5QcP0do3XFILAL9kLLrcl/3q53qbdzxxZ+53o yOf8XMDTnO9XfcFohW2WyYR3vABQ17FDOd6J47eG8Sha5Ynf1HZtWcMVxIHqE1by82 ctx7B5zi7Z278sGYDYk654Py6x1lV6nIUdlvBHxQ= 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-am6eur05on2047.outbound.protection.outlook.com [40.107.22.47]) by sourceware.org (Postfix) with ESMTPS id B42823858280 for ; Thu, 3 Aug 2023 08:10:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B42823858280 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bQWGWAROUUYYSnev3tGh6Gnux3iyayYtrjEMbU0jorh9DrMas00a9ZRFEdrWfUhEwJOL9T0YkYcYl07IdpaszsOf9JuWufkauQNVYcq3gdH/nwzOAIbSu26uXpBMzgwzo+2S+d7fZFdJMMd7wFmpCZtuLW8lJHrm86hzaSyT09miGguEsvwRs/5czVmvMIhu2UgpjNsDrDv0UeMTZvRmI92Le17T54CdXgxTlVQe6CsLgprjBbdDYc9NhNqLijOJZe61U4r1k5osUBUcLJYsBPTYMy1kJ4l8j2jmX17SzcwrtoF5zfgccAmSzk/nsSa11BS1LcpTpyz58VYt7tn9EA== 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=AMzD3GJnpe/nNGWZUobyEHwqzi1A7TLBY3i8cu5eZNM=; b=BplkVjGxNFMXzoR0RDAoepACZm/6XQW97JswMFdnZC3XaYbH7HgnWf7Rr9DVjEnn9gXLehgrdj5v7FVj9N9p3zrYXkpfNNUiWEGsMK/PT5ZoaI4JTi6aWtbYR3gOkOw7TdH5BmJAx23Yuz8ildYSHBPs8V6LBcvKVMHDiQPkhOSFZPMBevojWT5HKnQfIKKH0E4+NR2f/NclN2UgM9YutS/k7MXCS+McfUcN5KlOGAD89bjY+8A5L4kdfZYixQY1SHeQwZc3w8HiuenwFCAu4h+PWDV2N9CO7WCamS+GZie+yCjCdHdan4FIEaMLDfh+vUYaZh2WgWBmHFS3OkAWMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by AS4PR04MB9265.eurprd04.prod.outlook.com (2603:10a6:20b:4e0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:10:48 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:10:48 +0000 Message-ID: Date: Thu, 3 Aug 2023 10:10:46 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 03/10] x86: "ssemuladd" adjustments Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR0P281CA0203.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ad::9) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9265:EE_ X-MS-Office365-Filtering-Correlation-Id: a71b057a-c38d-4870-f671-08db93f92541 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4+vpJ16N9iryyrj3JWGr7iIoO1cHTKkKg5dRNbYgK3osAhDtyyxpD/VZVOkSZP9jsuf0/KCcb3TaZlwIHH9IISRwmb5mjtKpnNARWpaK4+gqLOsjbLMPgN2xJwpwo50NoSUy6SHKFqrvZkyzrjVx5EHn3iveXkOp4GgCZ4w4wwtc/MkO2bm6ScrjkVTzITxyOC+b5HwRmt/0BvSFV/QFVZ6G1N/TtzYKFSaI8c/H+UYdUa+96D4ro6HSpBN1BQoofwiCZ7eha9cqzsQP1XQaB6Z04tVN/jWPfIrbBo0dar7QqJIVxqPcjF0t2Re9WEkioxBUTp/2bRg04XvrH0MhTbthzHtxprRxqDhR5GYwsRjHEo4vKkDGGVbE5SvBGZ6/bTCXovM7YAyXqGnKaFi4hZq9uSdLSLpJpWu8QNGnoYVahNpJ+BCzPMl1yCxLjLu+V9i8ISf5lYGyAYQRlCwc/+ZCaeZ91Aekfx3noWWqWHljkbgH3dfFFtDluTp06s7wap6/PEsSywPT4yCU2/I9g35ip78rYl44dk4QBmIGF35RlFRgViB433JF8cRItuNOMTILNkLLpIazOYetLfx45Yba0BWfqhzY54pXH7a0cEMA69mApwrwr5kC15pOyW4XxcabnbV1UcXKWE566UQYeQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(136003)(396003)(346002)(39860400002)(366004)(376002)(451199021)(2616005)(6506007)(26005)(186003)(316002)(2906002)(66946007)(4326008)(66476007)(66556008)(5660300002)(6916009)(30864003)(41300700001)(8676002)(8936002)(6486002)(6512007)(54906003)(478600001)(38100700002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?v7BpMHT21oyWlnwbH3p3ponjC5yj?= =?utf-8?q?wB755IY2jQJabvcZcLiboOwT4VvZGfJhkoSxOrBuUva9wjtR0u6RQwaGSm10yh9eV?= =?utf-8?q?gRbUUzs+EA/VRq0ePXqqBslrW8bQcAykTWljJeHyj4GBN1y4UDqInelSLk5pYUi3R?= =?utf-8?q?ojz6n7LAH8KcdCwSCv9qDPbl25xcZicEMPpxkAE5asKWJwCUGVtVn0+S6XUrkTWON?= =?utf-8?q?kyi6+jWaP+RaJYcFNTPkAQxREdjIev5qa1f3QjJvYn58TiEZreOMVqUb6wuki46vh?= =?utf-8?q?jab2xVgXftJkr5/+Zeu2VexbjfbzFf+Z+z1OB+/+0EBNW2wUk2j2Vns5WwPCFQH5k?= =?utf-8?q?2RcnUYxDwrn9GA69OM25y9Q6Gg+BKhPnHgbYICqi+t23Oh5Quf7yL3sHsjFH847Zj?= =?utf-8?q?Acfmn+WGKw8lcts+eCNbe6R3o1l+WIyFDXYaN20N8OxM8zXRIo7SR4BR9aZZgXMO/?= =?utf-8?q?HzxiJrtwlHLt6ynqPSefkjZKFzmg/+XgSErv4tONjYfnlPojeXlm01gtRN3ZrhElW?= =?utf-8?q?kUyRZydgVFQ/DAYCMHzzwMh6cf475hCnPmHP28Q1zBqzFg49tfUUWatQZzn1qWyvu?= =?utf-8?q?mRAVokdKXwiMTTXw5ZDy5pLy4GwwRp29hC0jiELHHZsawyG4IlS4Q+5x2sZa/MZTJ?= =?utf-8?q?8XOn8G97ImzS70l3IljtNXtOyKKhQQHFbksaoNZoJcf9kAYpEMJnZaZkBBdB2YMf6?= =?utf-8?q?jVzEe4CGvMcG2hCw94pqoPM/Fg/2eAHXdiv/FKt+qt/3jAJXHQRhty/bed4Dn3AUP?= =?utf-8?q?SsPDoJ7CLkMmu8H6rU3P8d2WD3tccCmXfNyD7MMnVj4iPvKJWjMEHL/o9bJtiQXq9?= =?utf-8?q?An3BDSOWmK/GxqBwaFU/fHzluFZYcfIkUzc53INJLNKp41zQnqCMRGP6vy3yTOMrc?= =?utf-8?q?55OdHeAL5ZYXPVoF783W4v7fWSjt7VFPHe9kzl6K4/4OOZk0k4VakUUZtmHzxuKCC?= =?utf-8?q?+4LWaCwG1t2FUTvy3mDYvfEhFFuPWgzR4/RWUvr9kPdJnmiPCVD2uSOcLYsoUIUp+?= =?utf-8?q?RPuJpcRfHrJDHJxurLey36FdGIWtoeZrwEjdBdSYsjgGL3DBlwWxIDd+M3jd85aEA?= =?utf-8?q?GPSyT53im7UP/v57uBGEDFzSa3BnpM6pXxL0f1b6U8ngi2o/9xhZr9MCgBtxuDs7s?= =?utf-8?q?M8AQiX6AGBi9m7zsYBleTJH7AafI+37h7U9YzldyAB5kHeXqtJsTEAJimQAOabf1P?= =?utf-8?q?TZe+1Uo2Y8avR96iz/8xVFrGRk8MrKGlvbk3bZwNUPVPlbOH/rlfQN9urc/aMG/UI?= =?utf-8?q?3CcI4JCMqkI7C5/iDyv4f9q0TUQWnHH+HYsMjBf/qTWCEXnsG05K8+mritItewMfl?= =?utf-8?q?pNHfya/TiiAnUzHHsYfIJ0l5Bwx4hNV25X5uWu3RaL6lKtngM56Ptv68Yt90Es37b?= =?utf-8?q?tRQ8dOLGpesrZYAmVEThsb1kspMjIzMwNobzxnmrdWmCdsOZjbSHrcOA240O7zguK?= =?utf-8?q?rPAc9vRqBFHky3el4iHVEWh2sJDB5N1Qbg6HGDNoNDfgHkIZ/FSCoX2mLJp8/5VQN?= =?utf-8?q?cx4mMa0Q4lrV?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: a71b057a-c38d-4870-f671-08db93f92541 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:10:48.5739 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 5wgeqaW+HoqPX9bbgjn4sD/p1U0O20pcQWpQv2wA3YZ7wNVUgK8ArZpZIf5Sn0EmjhzVDDNJg9PJDuruQXTFSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9265 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" They're all VEX3- (also covering XOP) or EVEX-encoded. Express that in the default calculation of "prefix". FMA4 insns also all have a 1-byte immediate operand. Where the default calculation is not sufficient / applicable, add explicit "prefix" attributes. While there also add a "mode" attribute to fma___pair. gcc/ * config/i386/i386.md (isa): Move up. (length_immediate): Handle "fma4". (prefix): Handle "ssemuladd". * config/i386/sse.md (*fma_fmadd_): Add "prefix" attribute. (fma_fmadd_): Likewise. (_fmadd__mask): Likewise. (_fmadd__mask3): Likewise. (fma_fmsub_): Likewise. (_fmsub__mask): Likewise. (_fmsub__mask3): Likewise. (*fma_fnmadd_): Likewise. (fma_fnmadd_): Likewise. (_fnmadd__mask): Likewise. (_fnmadd__mask3): Likewise. (fma_fnmsub_): Likewise. (_fnmsub__mask): Likewise. (_fnmsub__mask3): Likewise. (fma_fmaddsub_): Likewise. (_fmaddsub__mask): Likewise. (_fmaddsub__mask3): Likewise. (fma_fmsubadd_): Likewise. (_fmsubadd__mask): Likewise. (_fmsubadd__mask3): Likewise. (*fmai_fmadd_): Likewise. (*fmai_fmsub_): Likewise. (*fmai_fnmadd_): Likewise. (*fmai_fnmsub_): Likewise. (avx512f_vmfmadd__mask): Likewise. (avx512f_vmfmadd__mask3): Likewise. (avx512f_vmfmadd__maskz_1): Likewise. (*avx512f_vmfmsub__mask): Likewise. (avx512f_vmfmsub__mask3): Likewise. (*avx512f_vmfmsub__maskz_1): Likewise. (avx512f_vmfnmadd__mask): Likewise. (avx512f_vmfnmadd__mask3): Likewise. (avx512f_vmfnmadd__maskz_1): Likewise. (*avx512f_vmfnmsub__mask): Likewise. (*avx512f_vmfnmsub__mask3): Likewise. (*avx512f_vmfnmsub__maskz_1): Likewise. (*fma4i_vmfmadd_): Likewise. (*fma4i_vmfmsub_): Likewise. (*fma4i_vmfnmadd_): Likewise. (*fma4i_vmfnmsub_): Likewise. (fma__): Likewise. (___mask): Likewise. (avx512fp16_fma_sh_v8hf): Likewise. (avx512fp16_sh_v8hf_mask): Likewise. (xop_p): Likewise. (xop_pdql): Likewise. (xop_pdqh): Likewise. (xop_pwd): Likewise. (xop_pwd): Likewise. (fma___pair): Likewise. Add "mode" attribute. --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -531,12 +531,23 @@ (const_string "unknown")] (const_string "integer"))) +;; Used to control the "enabled" attribute on a per-instruction basis. +(define_attr "isa" "base,x64,nox64,x64_sse2,x64_sse4,x64_sse4_noavx, + x64_avx,x64_avx512bw,x64_avx512dq,aes, + sse_noavx,sse2,sse2_noavx,sse3,sse3_noavx,sse4,sse4_noavx, + avx,noavx,avx2,noavx2,bmi,bmi2,fma4,fma,avx512f,noavx512f, + avx512bw,noavx512bw,avx512dq,noavx512dq,fma_or_avx512vl, + avx512vl,noavx512vl,avxvnni,avx512vnnivl,avx512fp16,avxifma, + avx512ifmavl,avxneconvert,avx512bf16vl,vpclmulqdqvl" + (const_string "base")) + ;; The (bounding maximum) length of an instruction immediate. (define_attr "length_immediate" "" (cond [(eq_attr "type" "incdec,setcc,icmov,str,lea,other,multi,idiv,leave, bitmanip,imulx,msklog,mskmov") (const_int 0) - (eq_attr "type" "sse4arg") + (ior (eq_attr "type" "sse4arg") + (eq_attr "isa" "fma4")) (const_int 1) (eq_attr "unit" "i387,sse,mmx") (const_int 0) @@ -637,6 +648,10 @@ (const_string "vex") (eq_attr "mode" "XI,V16SF,V8DF") (const_string "evex") + (eq_attr "type" "ssemuladd") + (if_then_else (eq_attr "isa" "fma4") + (const_string "vex") + (const_string "maybe_evex")) (eq_attr "type" "sse4arg") (const_string "vex") ] @@ -842,16 +857,6 @@ ;; Define attribute to indicate unaligned ssemov insns (define_attr "movu" "0,1" (const_string "0")) -;; Used to control the "enabled" attribute on a per-instruction basis. -(define_attr "isa" "base,x64,nox64,x64_sse2,x64_sse4,x64_sse4_noavx, - x64_avx,x64_avx512bw,x64_avx512dq,aes, - sse_noavx,sse2,sse2_noavx,sse3,sse3_noavx,sse4,sse4_noavx, - avx,noavx,avx2,noavx2,bmi,bmi2,fma4,fma,avx512f,noavx512f, - avx512bw,noavx512bw,avx512dq,noavx512dq,fma_or_avx512vl, - avx512vl,noavx512vl,avxvnni,avx512vnnivl,avx512fp16,avxifma, - avx512ifmavl,avxneconvert,avx512bf16vl,vpclmulqdqvl" - (const_string "base")) - ;; Define instruction set of MMX instructions (define_attr "mmx_isa" "base,native,sse,sse_noavx,avx" (const_string "base")) --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -5422,6 +5422,7 @@ vfmadd213\t{%3, %2, %0|%0, %2, %3} vfmadd231\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "cond_fma" @@ -5461,6 +5462,7 @@ vfmadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fmadd__mask3" @@ -5475,6 +5477,7 @@ "TARGET_AVX512F" "vfmadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*fma_fmsub_" @@ -5522,6 +5525,7 @@ vfmsub213\t{%3, %2, %0|%0, %2, %3} vfmsub231\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "cond_fms" @@ -5563,6 +5567,7 @@ vfmsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fmsub__mask3" @@ -5578,6 +5583,7 @@ "TARGET_AVX512F && " "vfmsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*fma_fnmadd_" @@ -5625,6 +5631,7 @@ vfnmadd213\t{%3, %2, %0|%0, %2, %3} vfnmadd231\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "cond_fnma" @@ -5666,6 +5673,7 @@ vfnmadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfnmadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fnmadd__mask3" @@ -5681,6 +5689,7 @@ "TARGET_AVX512F && " "vfnmadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*fma_fnmsub_" @@ -5730,6 +5739,7 @@ vfnmsub213\t{%3, %2, %0|%0, %2, %3} vfnmsub231\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "cond_fnms" @@ -5773,6 +5783,7 @@ vfnmsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfnmsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fnmsub__mask3" @@ -5789,6 +5800,7 @@ "TARGET_AVX512F" "vfnmsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) ;; FMA parallel floating point multiply addsub and subadd operations. @@ -5889,6 +5901,7 @@ vfmaddsub213\t{%3, %2, %0|%0, %2, %3} vfmaddsub231\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fmaddsub__mask" @@ -5906,6 +5919,7 @@ vfmaddsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmaddsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fmaddsub__mask3" @@ -5921,6 +5935,7 @@ "TARGET_AVX512F" "vfmaddsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*fma_fmsubadd_" @@ -5956,6 +5971,7 @@ vfmsubadd213\t{%3, %2, %0|%0, %2, %3} vfmsubadd231\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fmsubadd__mask" @@ -5974,6 +5990,7 @@ vfmsubadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmsubadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "_fmsubadd__mask3" @@ -5990,6 +6007,7 @@ "TARGET_AVX512F" "vfmsubadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) ;; FMA3 floating point scalar intrinsics. These merge result with @@ -6057,6 +6075,7 @@ vfmadd132\t{%2, %3, %0|%0, %3, %2} vfmadd213\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "maybe_evex") (set_attr "mode" "")]) (define_insn "*fmai_fmsub_" @@ -6074,6 +6093,7 @@ vfmsub132\t{%2, %3, %0|%0, %3, %2} vfmsub213\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "maybe_evex") (set_attr "mode" "")]) (define_insn "*fmai_fnmadd_" @@ -6091,6 +6111,7 @@ vfnmadd132\t{%2, %3, %0|%0, %3, %2} vfnmadd213\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "maybe_evex") (set_attr "mode" "")]) (define_insn "*fmai_fnmsub_" @@ -6109,6 +6130,7 @@ vfnmsub132\t{%2, %3, %0|%0, %3, %2} vfnmsub213\t{%3, %2, %0|%0, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "maybe_evex") (set_attr "mode" "")]) (define_insn "avx512f_vmfmadd__mask" @@ -6128,6 +6150,7 @@ vfmadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "avx512f_vmfmadd__mask3" @@ -6145,6 +6168,7 @@ "TARGET_AVX512F" "vfmadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %3, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "avx512f_vmfmadd__maskz" @@ -6178,6 +6202,7 @@ vfmadd132\t{%2, %3, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %3, %2} vfmadd213\t{%3, %2, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*avx512f_vmfmsub__mask" @@ -6198,6 +6223,7 @@ vfmsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfmsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "avx512f_vmfmsub__mask3" @@ -6216,6 +6242,7 @@ "TARGET_AVX512F" "vfmsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %3, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*avx512f_vmfmsub__maskz_1" @@ -6236,6 +6263,7 @@ vfmsub132\t{%2, %3, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %3, %2} vfmsub213\t{%3, %2, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "avx512f_vmfnmadd__mask" @@ -6256,6 +6284,7 @@ vfnmadd132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfnmadd213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "avx512f_vmfnmadd__mask3" @@ -6274,6 +6303,7 @@ "TARGET_AVX512F" "vfnmadd231\t{%2, %1, %0%{%4%}|%0%{%4%}, %3, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "avx512f_vmfnmadd__maskz" @@ -6308,6 +6338,7 @@ vfnmadd132\t{%2, %3, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %3, %2} vfnmadd213\t{%3, %2, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*avx512f_vmfnmsub__mask" @@ -6329,6 +6360,7 @@ vfnmsub132\t{%2, %3, %0%{%4%}|%0%{%4%}, %3, %2} vfnmsub213\t{%3, %2, %0%{%4%}|%0%{%4%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*avx512f_vmfnmsub__mask3" @@ -6348,6 +6380,7 @@ "TARGET_AVX512F" "vfnmsub231\t{%2, %1, %0%{%4%}|%0%{%4%}, %3, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn "*avx512f_vmfnmsub__maskz_1" @@ -6369,6 +6402,7 @@ vfnmsub132\t{%2, %3, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %3, %2} vfnmsub213\t{%3, %2, %0%{%5%}%{z%}|%0%{%5%}%{z%}, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) ;; FMA4 floating point scalar intrinsics. These write the @@ -6398,6 +6432,7 @@ "TARGET_FMA4" "vfmadd\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "")]) (define_insn "*fma4i_vmfmsub_" @@ -6413,6 +6448,7 @@ "TARGET_FMA4" "vfmsub\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "")]) (define_insn "*fma4i_vmfnmadd_" @@ -6428,6 +6464,7 @@ "TARGET_FMA4" "vfnmadd\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "")]) (define_insn "*fma4i_vmfnmsub_" @@ -6444,6 +6481,7 @@ "TARGET_FMA4" "vfnmsub\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "")]) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -6591,6 +6629,7 @@ "TARGET_AVX512FP16 && && " "v\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_insn_and_split "fma__fadd_fmul" @@ -6654,7 +6693,9 @@ UNSPEC_COMPLEX_F_C_MA_PAIR))] "TARGET_AVX512FP16" "vph\t{%2, %1, %0|%0, %1, %2}" - [(set_attr "type" "ssemuladd")]) + [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") + (set_attr "mode" "")]) (define_insn_and_split "fma__fmaddc_bcst" [(set (match_operand:VF_AVX512FP16VL 0 "register_operand") @@ -6726,6 +6767,7 @@ "TARGET_AVX512FP16 && " "v\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "cmul3" @@ -6913,6 +6955,7 @@ "TARGET_AVX512FP16" "vsh\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "V8HF")]) (define_insn "avx512fp16_sh_v8hf_mask" @@ -6932,6 +6975,7 @@ "TARGET_AVX512FP16" "vsh\t{%2, %1, %0%{%4%}|%0%{%4%}, %1, %2}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "evex") (set_attr "mode" "V8HF")]) (define_insn "avx512fp16_sh_v8hf" @@ -24721,6 +24765,7 @@ "TARGET_XOP" "vp\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "TI")]) (define_insn "xop_pdql" @@ -24739,6 +24784,7 @@ "TARGET_XOP" "vpdql\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "TI")]) (define_insn "xop_pdqh" @@ -24757,6 +24803,7 @@ "TARGET_XOP" "vpdqh\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "TI")]) ;; XOP parallel integer multiply/add instructions for the intrinisics @@ -24778,6 +24825,7 @@ "TARGET_XOP" "vpwd\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "TI")]) (define_insn "xop_pwd" @@ -24810,6 +24858,7 @@ "TARGET_XOP" "vpwd\t{%3, %2, %1, %0|%0, %1, %2, %3}" [(set_attr "type" "ssemuladd") + (set_attr "prefix" "vex") (set_attr "mode" "TI")]) ;; XOP parallel XMM conditional moves From patchwork Thu Aug 3 08:11:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816329 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=LJvoPmtU; dkim-atps=neutral Received: from server2.sourceware.org (ip-8-43-85-97.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhQQ10kBz1yZl for ; Thu, 3 Aug 2023 18:11:58 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2AB5B385735A for ; Thu, 3 Aug 2023 08:11:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2AB5B385735A DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050316; bh=ewUPa3/OyXGSLr/ci50mAteuo3kxAGqDELRhkz+h5Dk=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=LJvoPmtUxpjnYI2IRYyHl69KoAOEbxyRevlsYeM1P8idbEIln/eSDUOrCDcfH/+g+ lT0iZmZJKwp5+fEVkRohfDFUg3FezQU2Vs/meC6kBmhDUiXH0/BMBSrhy1hwMNGbE+ n+P3qNB0AagxdcWFPu4Qut5wyQt5KOq8FUYGctGU= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on2051.outbound.protection.outlook.com [40.107.15.51]) by sourceware.org (Postfix) with ESMTPS id 1773E3857806 for ; Thu, 3 Aug 2023 08:11:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1773E3857806 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZLAsPMOcVtIHtfHr3oXuwdm7D6/bl2M1Y39alcY5//Ok7nvxdlrG3lZnwG5rGNWAllDBoBBXrsJXWCxyC3PHJ9p8BX1/MM1mwMUcIMFZxNgpfPn+OOLk2+gpO1dQzPE+GFAxgT6rKYTlPPaExKx9OmSE5kSXbjHsi88Ap3ZfO/8MgDiHv2Y7UPWBhhDdnOk022B2T2daCZPEx9rkBzUfZuQU1e8NrvJYhy+KIgC2hT0C5S0voiDXB3F3y6EmrYxOinrpIZGUc9BqILwVIuWcGCOD9FeZRyG+00RaQh2bIYxV94pxxR6gnK4MFXBRAjHs8qOcepaHS28vjjqPjLwvTQ== 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=ewUPa3/OyXGSLr/ci50mAteuo3kxAGqDELRhkz+h5Dk=; b=Qd3RVm0RfOJg1n8/jBshy92Bivez+a7sG20wFVRpfqAEw9pkWWbRQWBpzPam4uLMbLhn2rqN11jWjoyTa8Ww1AeOiOpWeGJZH1nPfaZDjYhONO2kSp6DXeCRBeHkhJiVxRJfCCD1dyPFTaasNgynsd09l/qlTL+cb6j5Yf0pdp0tvxGCCJXywocrZkIEfh39UJI2aJqiT84yl00rXIplerHTkejZhtC7MdVy5BBssf3s2cv4Hj8Uv0r8caE3aWERQUV6/pW6K+lCc800BrnHMyuJMv804eG0r7qoY2nDp6U+d7PH7K6IN9CKAZUMcn0GmDgk0xVGmgmgiCo2GexnpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by VE1PR04MB7359.eurprd04.prod.outlook.com (2603:10a6:800:1a0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:11:33 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:11:33 +0000 Message-ID: <4576e023-ac1e-7557-2cc0-ed33ccd35f59@suse.com> Date: Thu, 3 Aug 2023 10:11:30 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 04/10] x86: "prefix_extra" can't really be "2" Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR3P281CA0023.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::7) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 1748c6cd-3bff-41b1-5d47-08db93f93fbd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: i6zvMNxeMQFTdjTFZLSVUkyI+i31NjDEQMm0loecpEw4aSrFH0JTBqmGg9E4cSMxnX+nqc5+rYo4/QRGlu5QXLptnRYRcRS5h2Y78RsT8tCQwP/zIH1fway3CdO6NBcHfTFnUpDKoRHQuOQF0DIXFFxHhpzTk6YrfxIcJen6laqy8M4cHDmudsyZO4XaBn4pZTmYTy29+NPn+QyieiOoidgjD7IXXsGO+zmGMESDQSA2BQ4C4mJ4jRyRsHxT7eVKoYviIlRTG0a6blbAcsIIqo9j9K03nDeLUKSSzdtpolGlBwnQHYI87wqRYwa2KP8wmde0Jqyhun4F5VuzfwD0Fofq1nFXtEDo2MVhGtLRLjUb3NwE0VSnAs5HmZIJ6fqq0pfa6pGvULoFlw+5AiTm+vUsajdO2bx3rJ2XBDbULETTSi1dPqNYvVjlzI2cgCCTt0fBRxfO+tcYCR2ysWTg4Hpv10gbuvrtf5U6fyKRFMLPaOlGR13m2edeBJghGKppcbjAiT3HTSMSLtzMsahgICoLc8q19oOV0T0rPKtPWVvJiI79Z34Tch1OVJm/5vOT6ja4gmROwY83ouSBdOsKTu+5xIlxLkHxhxi77ToIoiAZlmyLTlEw/cYLJsbRApHW8PkKJK6nxlHGcTzXMzQ4hw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(376002)(346002)(136003)(366004)(39860400002)(451199021)(41300700001)(66556008)(316002)(2906002)(4326008)(6916009)(66946007)(66476007)(8936002)(8676002)(5660300002)(38100700002)(26005)(36756003)(186003)(6506007)(86362001)(2616005)(31696002)(6512007)(478600001)(54906003)(6486002)(31686004)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?DyXjPBX5pdsSJKYbSSwt8dGtztLD?= =?utf-8?q?IBbZSRXvvQIqNDUXFQdxVy59CjH99LFuXyoFPUjbH9AkjBQQypTb7oXrjRiw32Ncd?= =?utf-8?q?uuJ1uRKmCT8/KR8w3FjACiBTFdG0djytpUUfFT9LHSg5nWk2DY3GKuoHsk67FlBKH?= =?utf-8?q?sPHekcrlxiWFDfV6EQe4XLDbQmhj80KtXVS19BLBV4U70xQMa0oOPRBGFwHukOx79?= =?utf-8?q?QgWgbg5qGAzkWFRCEvCUJOLRrwz1abGRrn14ibbiYcGVHX0XrHzB7RW3hYEl7P/ny?= =?utf-8?q?FYO3WhaALMe736P4Ye/pvXfxxcJRUus3QZuJMou2amJQCot1FZizHj1HZeh01I07A?= =?utf-8?q?RTNVgcOxuC92Xwu7MH1DKq7QAvR8O8sAknQoaHS4FLpYAqFfZCiQa5BCRVrWVfgQw?= =?utf-8?q?GxKKb5oBwjbPCAOUR92Wpbbkz+K1kZ/XROz6WIUhpslJ+uj4WcQHt8OdnjV0+lM0f?= =?utf-8?q?IWIMmCgYZOQTZkWRCww98Lm3Gz+c88xGE0IHh2QMJTRSZQik4tY8ZWOa30XVaw7Xf?= =?utf-8?q?EBUNBzNTXyr1M1TgaSUKLZhNA6Nmy6UMPeh54nveC9F3QD6CLYQB0thS3b3yS4/m1?= =?utf-8?q?CYE7DHxdeoU3EereLC/E8A/jTwjjl0364SZLjtvIucGsIqN5PWNqGOFSscEFlcmgQ?= =?utf-8?q?0RcZzNk3QCT1f/d0Wr9CpBSfosxiTsjtuEuTWkrshJZr8t6A26zWMpcb89mTgkmiN?= =?utf-8?q?Wf0Rb58yOqXONq+UFmXFUe7og90VWjKzLeRltowTTq7p5z5nekVSPWigSPYY1RBts?= =?utf-8?q?wMhQduHg4YGnQAmeX6SbDedu/dPWVpat4J/nYaALfEAtrvnkPgFrwseCtY4006Gig?= =?utf-8?q?VXzX+NArU61Gei4n0N6bQ4LGHaX6fCKQPKpjGUqWSmG3n0N7gqe1D8/IzJixxacLi?= =?utf-8?q?t/GXDaApDtE/4ZmMLT9yZ3fYbWqPV81KmId+/Il3AIEgHznK81NifOGExNFU6sclM?= =?utf-8?q?4t0eKZKPpVDYAlQgTl5B3Eq2BsW2J+hh4iJdLse5nP43XAxqzYJepsEiyzgbvr22E?= =?utf-8?q?BCn9P232r20fcQikESdLaz80i5MYNHwOjpg6SX3rgJmtrhlGqHlvJ/RvdY0GzBM+a?= =?utf-8?q?gWhaYmj0vd5Dc09uhO56h0FOyv5cRKqLawRlCXlTOkVsIMMw4gVPgupYrP4ATlB4l?= =?utf-8?q?ml90R4WP5fhPm4h1j99hZeZiCEUdpj1LdX2xt0pbIZ7u0atnkbKvXZOtPQHtzwKBJ?= =?utf-8?q?Lrncjtcc23iHHq6CSrKr979Vx4P5w30kt/yRAxCjYBnhmurs9hwg97tlCWuS/9jrI?= =?utf-8?q?LlwscKgdM8pTs1hfhX8zsfPMNgTHIENlHmPmyu0RComf2ZQkQtNQXanyOwOFZ4Io8?= =?utf-8?q?Dp+ZqeVR+cYa35M+OeOW80QE/SA8QWnOhZgwRklrjClzBfi3T8YoVWQUaX1Wqdz2w?= =?utf-8?q?nEyV5XUPAGnuKOZ/xVX5wkNJ4I33oNhfNqh2LqijUTEiKwJrRVV/BFD09qGhGbaBp?= =?utf-8?q?OzFyg59gIIsUBlM0fn0tUSeySQk5YMry0amDmJYbqIqre5ZgrAOGgYTiexq+PC/vU?= =?utf-8?q?9tPw1RXKTttw?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1748c6cd-3bff-41b1-5d47-08db93f93fbd X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:11:32.9842 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: soLtK6+Zc9I2WOhetwb43V2Dovphwsl8pPIR+jJglsIr0qymXvmq9+J6xOdJZCMTvh1voyvnUqHWos7vZLhj2A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7359 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" In the three remaining instances separate "prefix_0f" and "prefix_rep" are what is wanted instead. gcc/ * config/i386/i386.md (rdbase): Add "prefix_0f" and "prefix_rep". Drop "prefix_extra". (wrbase): Likewise. (ptwrite): Likewise. --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -25914,7 +25914,8 @@ "TARGET_64BIT && TARGET_FSGSBASE" "rdbase\t%0" [(set_attr "type" "other") - (set_attr "prefix_extra" "2")]) + (set_attr "prefix_0f" "1") + (set_attr "prefix_rep" "1")]) (define_insn "wrbase" [(unspec_volatile [(match_operand:SWI48 0 "register_operand" "r")] @@ -25922,7 +25923,8 @@ "TARGET_64BIT && TARGET_FSGSBASE" "wrbase\t%0" [(set_attr "type" "other") - (set_attr "prefix_extra" "2")]) + (set_attr "prefix_0f" "1") + (set_attr "prefix_rep" "1")]) (define_insn "ptwrite" [(unspec_volatile [(match_operand:SWI48 0 "nonimmediate_operand" "rm")] @@ -25930,7 +25932,8 @@ "TARGET_PTWRITE" "ptwrite\t%0" [(set_attr "type" "other") - (set_attr "prefix_extra" "2")]) + (set_attr "prefix_0f" "1") + (set_attr "prefix_rep" "1")]) (define_insn "@rdrand" [(set (match_operand:SWI248 0 "register_operand" "=r") From patchwork Thu Aug 3 08:12:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816334 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=VaJXytAt; dkim-atps=neutral Received: from server2.sourceware.org (ip-8-43-85-97.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhT472Pvz1yZl for ; Thu, 3 Aug 2023 18:14:16 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id C0844385B516 for ; Thu, 3 Aug 2023 08:14:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C0844385B516 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050454; bh=q97dgJcKaznDaiT0AcgXdXUVvbNbn77jPctO9i1S91I=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=VaJXytAt6Y94Qt+H+G0b193ur0HeD6+D0UNzRoWmo21aLVs40GXVF5oR29DXyYWcV b3wTA342+hUZu99093nbR72UlyJowz6YJlrsGZGgNYuPGDu3pDkgZLUqQgym9iTlTg Wbd2Ra5eT4icDiXAZRqPFMf80E6IOxOgX3ZvxBa4= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on2050.outbound.protection.outlook.com [40.107.15.50]) by sourceware.org (Postfix) with ESMTPS id E53613857345 for ; Thu, 3 Aug 2023 08:12:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E53613857345 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rm8y3OOMEb8GE3ksQ2yAxYnYw8ye30Tb9Ba1sVnnH9DP4lN+uAYsdYi3OvpHVhouNTYPdxTTYtsT+5GZZO/jZenp2CCFB33U8a8lq7OqTzRQt7DPn8LkEAd8y1C5FXlTdeWxHzvxVRZ344G9cODORr8cqI2gyil++GdGLub4P/0XrH42qBdYDSWHPuuElKbepK/qXFqbFP+JVL9PKXlvWb1I80L3VmmJP9IIS//lRBSJUMFYIGTJqc99ksR2i8mUg3DPUiLKcfeLuU7mFpVNdh3t1dUVooRiSQ6o64Zsf77z8oa+TNWfg1rcFglxdgNQE3e1vyz6EqHsI5q2dZ3QFw== 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=q97dgJcKaznDaiT0AcgXdXUVvbNbn77jPctO9i1S91I=; b=eqeJzTaFoYzBAKzcGl+iRqn3NaMZfYIJltHvoC+3QvDLIkjIanQj0FSgifn7rxBBvZb0eaQSGRKXdf/llawVno3klMKHbattJ2bbpKJD2I6+SGzYydM3yDft7qOY49OQr3teDkkql/57a8ALIDS90Lji71YEDV9+RYh+7ezTgMnac3P1/NEai1jcedUaQdWKq64hkKGGav01oLqjGYN6PgFnRjV6h0PuKsd1mQh1i6KJwGH8ssXrBKT0aCYrxpavbPlniGUz6gUzP3sAPhttPebYrzdQMW+cxOl0EhU3aASIqWbTnr3SXDrdJZAMUGExT28NGHxR6js+l++Me8d1hQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by VE1PR04MB7359.eurprd04.prod.outlook.com (2603:10a6:800:1a0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:12:07 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:12:07 +0000 Message-ID: <5a5fae9d-e240-c808-702b-93871e39be47@suse.com> Date: Thu, 3 Aug 2023 10:12:04 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 05/10] x86: replace/correct bogus "prefix_extra" Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR0P281CA0236.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b2::8) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 1da7d35b-4ffc-4afa-f63b-08db93f953ea X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ShBe5If0N20gl5LKRds2ZodGBjAY8Hz4aLWncb11cr2MVt0NLeRBcJnkj7mxx10AMyt9jM0GrdrdjJQCPJCO1HehAG4qhlxfHB5ooUlXf0x6mg7AItJppx2bTiS64stMA5vYA6H2V+eThtuSQR7d+fxrHNDfBIlu6ADQOuLUO02b5cKVJG3RpsrSdBlgjUai+1E3KeLcWfeEIB8lQHadnQh/bD8q1KpGDF7TLLQE09jwgIUwbpNBQ1vHPsYRMkMiZmn7TUC6GD4GIZzv4W2/JMb+RO89mZA2moTeCV1QepVM65H+4czfid0Aa4FdcpQjEDItp44/fdaxpv3Oewf7mKkjF/Pyc2YFtFy2qZDRnU9c7Tae/QtaMCS6MtyNRTE4hnv3I3Gp2zyX4PRmepJ2V99lCHJHQBXbjSzpi/Z3NiKM63jYhr/b3ALzQqtcBPrB8u2DrJtCrznfQjp7zdrmc5wWexHCQYrKDz+J9BS2WcL/lgHWA9HauChpjcvL6N47iRA0vycQPGwQkd1LGwPhXQGG19tLRy1pDpPTwMAOKkOdPU+KEH8ZppRnVv0nasSz05vgKC9ZS/drFynWMUXNMm56GbqC+fWWydkNZ/Ngd0qGeaVHEbqJ3xGk18XjpJL4kmuCi30Q9XlcMrPc3+HTHg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(376002)(346002)(136003)(366004)(39860400002)(451199021)(41300700001)(66556008)(316002)(2906002)(4326008)(6916009)(66946007)(66476007)(8936002)(8676002)(5660300002)(38100700002)(26005)(36756003)(186003)(6506007)(86362001)(2616005)(31696002)(6512007)(478600001)(54906003)(6486002)(6666004)(31686004)(66899021)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?DzthuH9OoVUrNLO5v58tGa7LpF2B?= =?utf-8?q?yOnwAv3pidei5DNFZCK+S7EwYa4G1IbmYp5uN/gypARMr2ck6hRssTuiX1lXhFSck?= =?utf-8?q?RGLeVL6MSuoef0sT/Mxle59gblOYky3Yz/jdE3u4/Vh15Lgy7hGmLyVY1XoZ17gRG?= =?utf-8?q?ApszvpOhoIoTvU7IK5udzcWVaNK1iug03hd4GDrA6yLqNz9QgYtnItW0d/sE1LXMw?= =?utf-8?q?QF5gN76LZQdYbNvUuKeFw++67dgAO470xI5qmhXtv5bkHEmHjoWEwHCCSsMpZqAYZ?= =?utf-8?q?Fqk7z26Ww1ZI/7RUCVpXoDQ1EvBp0wOoa0X8NiLUgopzW4Kr9SltB31CHHYRIwKOq?= =?utf-8?q?v6s+lwLz+swkFHeHB9DgD+EssmUPjLtuDPzlHcCXXrVft2bH84D/Bfq0gf5yXETqu?= =?utf-8?q?Egp0RuB/0WIjlnN3Zyx+iZSco9dIYHPrNSe2+mN8ZpjW0oSpQlVfHyAWiuvGu1z0/?= =?utf-8?q?KsvVO9448HQ9jP32EtzJUUsh/h7NROHR4DTbYL2lFSOGKm1H0WDzvC2ZrafTFGtLv?= =?utf-8?q?0jtjD9ObgvW/BqVCN18hLp41xqm73gMl+Y+JF5WjhhZtE13nwwRcSSRcZvHst5/Kt?= =?utf-8?q?k9d+RSxBscQhAGHPVzu8BB3GHNeBlcurn7ERYeGX/M0UchNMWjQiOhs7NRnBmkAPf?= =?utf-8?q?0Ve5pv0Y3iQQF0UKVsTGzPhebCKFCaPKYwFBmQq3d07R6Kp1d6cZjCFEPRsUOsFWa?= =?utf-8?q?7PWHYFcqZazIk6dLHfwNgeR2kKA3HlX7Qv/tFe2lfOC5kIWUBJ25ip9l+vGLHlRxw?= =?utf-8?q?O651kX15lRYBGEx2I7PTmnOFWqVbsRzAnmaz2zCV9lTc/A40JRVeM64lnDH1GpxdN?= =?utf-8?q?IFezrm4MwnxeXK2xhNQ0w295L8MHB8LwhScmHw2AHZlrIAcyh26Wtsg8tKUjjHH+C?= =?utf-8?q?62W9ePjFK+1tCNxL0B0X4GTK9ifpgYYqt1vAh9Ld5Strz+rlGOjaRT4EQtQacPMyn?= =?utf-8?q?tgHX7nPSOEIo1dzOQ2vxCwWjQs6PnKF0iiW16u1zCkNYkkpqZLMM5IOlxMEtJkIUO?= =?utf-8?q?71ZaP1kq/5BVz0I77u9ua9VMdH0u0dOH5xILJneinmXRKRGG8ZzKhBgTSBXbtGWQ5?= =?utf-8?q?Picpjh9cgDGqNC9j09yJKjG/D3U+/S+pEyv2vstUDpfSKBB+z+0C5tgetqk2WBukv?= =?utf-8?q?3Al7RGbSLHdXWqXO1uUQ3w+3CnJxVvau/e2MJYF7B9DqMgh2HxCuAk4iga+paxVYU?= =?utf-8?q?kxx0OYjYjsBsFeA2wCBiNX3cjD5H3guEfs/AyRcJvFwN0E3eeq19VeCP2p8vWSn1B?= =?utf-8?q?CW26l2LoTFYVuoxTHb9kgf00h7qsZDZW7Y6wTzVCkAt+TLPVzaL1ZvwnxBdSkDFQ6?= =?utf-8?q?efFHEri2ywCtjIeWloyd56cdX6Ntyujh5g3tUX61XxPFi/khHTBmyF6/3+0uGwqAX?= =?utf-8?q?tBUFc3Zt/gm5ewCAnNtzYu2lVbQI6YvUCuddmPihUE/Zq1gz3zw666TTmmoQd9aSu?= =?utf-8?q?28QSEB8ieiEVbJACMv2Z63UeMLsOUaAn1SLsubL6J3IiMWnpp1UrOJyZh75k2Vyv4?= =?utf-8?q?E7mV90vH/g2A?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1da7d35b-4ffc-4afa-f63b-08db93f953ea X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:12:06.9391 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: S4mGbgv/WCRzZV8gI6ZTqIiEFbj+oMHjuMWzrQQRHSiavOfLiMtRSVaVzdQuB2sypfNtLvqNRYTwQP9D86pcyQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7359 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" In the rdrand and rdseed cases "prefix_0f" is meant instead. For mmx_floatv2siv2sf2 1 is correct only for the first alternative. For the integer min/max cases 1 uniformly applies to legacy and VEX encodings (the UB and SW variants are dealt with separately anyway). Same for {,V}MOVNTDQA. Unlike {,V}PEXTRW, which has two encoding forms, {,V}PINSRW only has a single form in 0f space. (In *vec_extract note that the dropped part if the condition also referenced non-existing alternative 2.) Of the integer compare insns, only the 64-bit element forms are encoded in 0f38 space. gcc/ * config/i386/i386.md (@rdrand): Add "prefix_0f". Drop "prefix_extra". (@rdseed): Likewise. * config/i386/mmx.md (3 [smaxmin and umaxmin cases]): Adjust "prefix_extra". * config/i386/sse.md (@vec_set_0): Likewise. (*sse4_1_3): Likewise. (*avx2_eq3): Likewise. (avx2_gt3): Likewise. (_pinsr): Likewise. (*vec_extract): Likewise. (_movntdqa): Likewise. --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -25943,7 +25943,7 @@ "TARGET_RDRND" "rdrand\t%0" [(set_attr "type" "other") - (set_attr "prefix_extra" "1")]) + (set_attr "prefix_0f" "1")]) (define_insn "@rdseed" [(set (match_operand:SWI248 0 "register_operand" "=r") @@ -25953,7 +25953,7 @@ "TARGET_RDSEED" "rdseed\t%0" [(set_attr "type" "other") - (set_attr "prefix_extra" "1")]) + (set_attr "prefix_0f" "1")]) (define_expand "pause" [(set (match_dup 0) --- a/gcc/config/i386/mmx.md +++ b/gcc/config/i386/mmx.md @@ -2483,7 +2483,7 @@ vp\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_extra" "1,1,*") + (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "mode" "TI")]) @@ -2532,7 +2532,7 @@ vpb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_extra" "1,1,*") + (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "mode" "TI")]) @@ -2561,7 +2561,7 @@ vp\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_extra" "1,1,*") + (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "mode" "TI")]) @@ -2623,7 +2623,7 @@ vpw\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_extra" "1,1,*") + (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "mode" "TI")]) --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -11064,7 +11064,7 @@ (const_string "1") (const_string "*"))) (set (attr "prefix_extra") - (if_then_else (eq_attr "alternative" "5,6,7,8,9") + (if_then_else (eq_attr "alternative" "5,6,9") (const_string "1") (const_string "*"))) (set (attr "length_immediate") @@ -16779,7 +16779,7 @@ vp\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_extra" "1,1,*") + (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "mode" "TI")]) @@ -16813,7 +16813,10 @@ "TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vpcmpeq\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssecmp") - (set_attr "prefix_extra" "1") + (set (attr "prefix_extra") + (if_then_else (eq (const_string "mode") (const_string "V4DImode")) + (const_string "1") + (const_string "*"))) (set_attr "prefix" "vex") (set_attr "mode" "OI")]) @@ -17048,7 +17051,10 @@ "TARGET_AVX2" "vpcmpgt\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "ssecmp") - (set_attr "prefix_extra" "1") + (set (attr "prefix_extra") + (if_then_else (eq (const_string "mode") (const_string "V4DImode")) + (const_string "1") + (const_string "*"))) (set_attr "prefix" "vex") (set_attr "mode" "OI")]) @@ -18843,7 +18849,7 @@ (const_string "*"))) (set (attr "prefix_extra") (if_then_else - (and (not (match_test "TARGET_AVX")) + (ior (eq_attr "prefix" "evex") (match_test "GET_MODE_NUNITS (mode) == 8")) (const_string "*") (const_string "1"))) @@ -20004,8 +20010,7 @@ (set_attr "prefix_data16" "1") (set (attr "prefix_extra") (if_then_else - (and (eq_attr "alternative" "0,2") - (eq (const_string "mode") (const_string "V8HImode"))) + (eq (const_string "mode") (const_string "V8HImode")) (const_string "*") (const_string "1"))) (set_attr "length_immediate" "1") @@ -22349,7 +22354,7 @@ "%vmovntdqa\t{%1, %0|%0, %1}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "ssemov") - (set_attr "prefix_extra" "1,1,*") + (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,maybe_evex") (set_attr "mode" "")]) From patchwork Thu Aug 3 08:12:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816335 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=GAlxgpAX; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhVM2W7Xz1ybS for ; Thu, 3 Aug 2023 18:15:23 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 51459385AF91 for ; Thu, 3 Aug 2023 08:15:21 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 51459385AF91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050521; bh=U3fZdxeI2kwGRiDep/w71EBPGeixkQEzb5i5f95nQTg=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=GAlxgpAXwtha89c/ZYNhCKsKVMthyYGyZ4OKsHsYsfAeGB6PL4CRqVKiMyspxLZ1r f9/J3uKNAp8qK8bMdlfbrcNxK7U3xaTLXciD8JFwp6EnAHBjFRHWEojIirvEt92N/1 sxBUaUJtZqqnQFlirPaLd1C1dNQyr9LVuf9jCHBU= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on2089.outbound.protection.outlook.com [40.107.15.89]) by sourceware.org (Postfix) with ESMTPS id 92509385AF96 for ; Thu, 3 Aug 2023 08:12:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 92509385AF96 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WwgrsXXbYSLfjch6Y7LbVFlMEGVrHHcQ2SovooU9ZaDRxe5a+Et+Flshg7KNIs5zu0yDt437NXK3D2er67MSFFf8NRwEg/1WUdwRlQrb5iXeXjryBLJGjAzsHh/VeYZ5Yp9nWUWfGLUrKd5umkHxFovRJutE4X0LP5Um9stquynVlSKCXCWKA31CoUiFYxaW+4vTg1qzxC7Tac6nPMRjIUrAqnwiOvbTapIZPKvLhL3H2fBcJe02LQfvtvGQuIG9LbeSibAox+nH/8/EvLw6htNO7b0f/TUTEc6j5k0cUOn/PA4SPeQWQRZ61A7glmAyVoD+nWmS6YUoJ2unZcXOIw== 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=U3fZdxeI2kwGRiDep/w71EBPGeixkQEzb5i5f95nQTg=; b=BqEkgnQsrdJWEmUkDEmc11XpXO99TQVwwJttMk0jH3Tbwnx3o8QacMbbZx3dCEtrxpao7oZq4pxXRSmXq6//6SM2niQErHOPgnHDEJz4rmfwdZX6skPl//cr0gBja5c+WiS5IKTwqLTq7uSx5m7IhPGVmlg2mGUvUYVObf0PhSJO52QTqEGY5LDnMxrx0WHrI7pkLFPO1hKsWOzTKXlrJpU1GdbScsY5W2mU+mCuqOfECkzBsZZa+1ihWO96yeZ5KrrzWigQaazc7PHItcfuNni3MNyInrwHuPayJ29kbMz7PaxMyNpQH88D17FVG3JyHDWfqkbmwROugetb8K8YAQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by VE1PR04MB7359.eurprd04.prod.outlook.com (2603:10a6:800:1a0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:12:27 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:12:27 +0000 Message-ID: Date: Thu, 3 Aug 2023 10:12:26 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 06/10] x86: drop stray "prefix_extra" Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR3P281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::23) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 3ddbce89-21f4-4fd4-a8ad-08db93f9605b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RKptP6hqwjzT+3tO4QRWtle/GGfG5FIbmzJEKOCUm5+YAJrLpUVSNSrR/evf94kbVREVemPo0xrHNtp4Na58aD2b4SIGUdsEB4jqrTPHgEpzwYFDZoHRS/VQ8POqALIfr6cGsqiaUBdBnVvHPWRz6gF11df4UM2Io6LBTlyPG2pHUajeebNVyQWUPgI8/o9IXe89RZhrU7yrJhJpt2IIqT1XPn6HMOP/ZLbYmWc2FBWaDiTln21ToaKrxA8ZPrqLre5pdsJSyz9rpELnvUHA0vuAmsACGArO4btiC40ISolHmAuzk3oSCju64XQjxm8O2cWVfvnU3zg7IaNPgS0lRWKUPOIA88fBfVQGq0/1eojc807up897VOzMYXxTonVSR6LgfyfDtXBiGweJ1H6tWxxaizGaPn7vcurs3NyrVi+HYiLraVT6lOW535syOG0VrP2Do+GciEXQOOczCbC9I8FpXQe/lJg1pqmHt7Vx0Y6RWirhMEqfSVCWqB5oUqEtOyTDmuOAT6PGFNpLhL4hWLFtz9TYQFiRS6VtMBhxCgVbbfTpmX6LvuCk1Bv87RrYhpsvSdjZGTTMbWxag0l4SvsUoi6DLl+riNkd+X7zd0LQchN322yIO7Vunesxc3ECG5FcSbiq050n2RwBVGZbMQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(376002)(346002)(136003)(366004)(39860400002)(451199021)(41300700001)(66556008)(316002)(2906002)(4326008)(6916009)(66946007)(66476007)(8936002)(8676002)(5660300002)(38100700002)(26005)(36756003)(186003)(6506007)(86362001)(2616005)(31696002)(6512007)(478600001)(54906003)(6486002)(31686004)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?UwY4cwqqKV2hQ9DPOK/L46TK1PNn?= =?utf-8?q?6K6XOqwGoOMpG2OYW3RR9rVxnIqmiC03V4Jmz5XYruwypu4Uyb7RMLpmy+h3L3q90?= =?utf-8?q?Z4YHOMUCxCfwO85JlSgZIrPoNEn1AANu9oHlvlSToWk7fb1U9iWysZgUYZrG3+zLx?= =?utf-8?q?Y44bnEvqVNq+UXHbKXYCacXEty//ANI8Uru5pi5KN31534Xb2tZkBn0mgNDlW131U?= =?utf-8?q?i1APHXu8JhIbAudMyv3SaZc614/0cj5bAAQABSscD0ZLtBSOuep2uGkDM+cz2e/s8?= =?utf-8?q?ENRblOGgdGp6ursvUm71qaAuu+pt83cn9IdFfU0DincqhZhQK2awtylb3355Xi+Y1?= =?utf-8?q?VlG/YFrZi28dmK1AErME/0Zznph2dPtj9pO9dK4DgrF9vHWaahmJZ1KDS3givfHup?= =?utf-8?q?IQOB9LwTrt6AOIAnoJ8O+EwV8sYmppfCyRHitWKVrBoN/YGqBjAhjyqRZ9U0txFhC?= =?utf-8?q?lGQk9gE5Mg6TYPrvBNY4sH47g52FMyHp7a6kGG0bcHdDwaHU9l73419AuoqAtobcv?= =?utf-8?q?iJlK6VVDcGALYhIFSygsrccoyfxikF9bnZs4noxJSfA3bFaySz1+vfqBNkcYEGOpG?= =?utf-8?q?+SOueoh8V0CkpF4MqOeN4I9QtAyKRnl6wV7RssrPWUBu8wTkzOrDTQ0aHrmw/RJZ9?= =?utf-8?q?UsD4A8gyB4go3LSt7GMzuBHg9xBMnPBLyPizVdEY+RogqM6DIrDrinzrQ8Uelnm8S?= =?utf-8?q?GtsPFjqGiUCxtL4eIzyZT/mD0g9bvYoYFehWZGa3CKVwbrlmHCd1ugYS2Z3OBFykO?= =?utf-8?q?bAiqcfnSDE3Ku0dnFgerh5/xubwIm/JqTiOCZRiMUsqJjNfiCE5YAMVBBSev8j2p+?= =?utf-8?q?WssFBL4Q1bwLUPYrEOgaTqiuTARav4fdLz8bEFWHB0TkVjniQqFAV9nQkGr4c9ZAx?= =?utf-8?q?W6AQC1m2lw8ZTWpB5+67JZ3gH+h3SURjTeGyjbcRXShGNFzr0enTOkOpsxJgfIZJX?= =?utf-8?q?rR8rF62t7AysejwRB05fxVMvY4OVAGa002hNL/+oD95RwqTR6vdqkj8AvJNwYVqxg?= =?utf-8?q?iudXQhQR1oIMu0w+aDmA3gi4snKV4YZNu0u2wUPDyX84OIJ0A4NcnrwY3eoYGAk2b?= =?utf-8?q?8+fTaXfagQxoshtYVuKPM18q0VlQPf0xbR0QVw0DNjljcKSLBdhuZHA3WKM79AIUO?= =?utf-8?q?Uc3EEfPc9TCF5RuzDL9GnszXD0mSl8iNh037yxXmglzwxHRnSyas8/mfI8ZBSfzXs?= =?utf-8?q?b7ME94ItbYCGPCcp0DCCpYgVXNzjA/muv29PMGb0HwQ2fAx3qPLs8Z5e+yqozIeYv?= =?utf-8?q?81vSyXMJPYHJ63QTHRaBqZ90MMwiB/goiLJZ5tJSWTzckDxEd5p+sPFS5iu1oClOR?= =?utf-8?q?6UZA/DugN1GwH4Hedws8IgSsHeD4CIsB1aQA6PbcAQq6xmobzEJiFdmfqLMVaPLjI?= =?utf-8?q?Ku8/zOS+dGhUK/BRDkkXiNhv/utruqTgO3Lzf8D+WLpu/TIzqfjfGjKFIysqi6hCW?= =?utf-8?q?r4Ry5tpewXERTmvhIW8YGrVNxuVm0KW8ZIRLgZ7Hf6jMK2GprWYHOmaj68A0jX3pF?= =?utf-8?q?Y2HP7qjBY8OK?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3ddbce89-21f4-4fd4-a8ad-08db93f9605b X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:12:27.7009 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: h9W0zrBbqzSfT7OqRa5zCirMScEvm2blJ6uwF5RAOSb1ZX+nPVqQYAOmwgeIK5LVIIcyrgv79lfiuiYPow2xQQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7359 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" While the attribute is relevant for legacy- and VEX-encoded insns, it is of no relevance for EVEX-encoded ones. While there in avx512dq_broadcast_1 add the missing "length_immediate". gcc/ * config/i386/sse.md (*_eq3_1): Drop "prefix_extra". (avx512dq_vextract64x2_1_mask): Likewise. (*avx512dq_vextract64x2_1): Likewise. (avx512f_vextract32x4_1_mask): Likewise. (*avx512f_vextract32x4_1): Likewise. (vec_extract_lo__mask [AVX512 forms]): Likewise. (vec_extract_lo_ [AVX512 forms]): Likewise. (vec_extract_hi__mask [AVX512 forms]): Likewise. (vec_extract_hi_ [AVX512 forms]): Likewise. (@vec_extract_lo_ [AVX512 forms]): Likewise. (@vec_extract_hi_ [AVX512 forms]): Likewise. (vec_extract_lo_v64qi): Likewise. (vec_extract_hi_v64qi): Likewise. (*vec_widen_umult_even_v16si): Likewise. (*vec_widen_smult_even_v16si): Likewise. (*avx512f_3): Likewise. (*vec_extractv4ti): Likewise. (avx512bw_v32qiv32hi2): Likewise. (avx512dq_broadcast_1): Likewise. Add "length_immediate". --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -4030,7 +4030,6 @@ vpcmpeq\t{%2, %1, %0|%0, %1, %2} vptestnm\t{%1, %1, %0|%0, %1, %1}" [(set_attr "type" "ssecmp") - (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -4128,7 +4127,6 @@ vpcmpeq\t{%2, %1, %0|%0, %1, %2} vptestnm\t{%1, %1, %0|%0, %1, %1}" [(set_attr "type" "ssecmp") - (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11487,7 +11485,6 @@ return "vextract64x2\t{%2, %1, %0%{%5%}%N4|%0%{%5%}%N4, %1, %2}"; } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11506,7 +11503,6 @@ return "vextract64x2\t{%2, %1, %0|%0, %1, %2}"; } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11554,7 +11550,6 @@ return "vextract32x4\t{%2, %1, %0%{%7%}%N6|%0%{%7%}%N6, %1, %2}"; } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11577,7 +11572,6 @@ return "vextract32x4\t{%2, %1, %0|%0, %1, %2}"; } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11671,7 +11665,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract64x4\t{$0x0, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x0}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,store") (set_attr "prefix" "evex") @@ -11691,7 +11684,6 @@ return "#"; } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,store,load") (set_attr "prefix" "evex") @@ -11710,7 +11702,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract64x4\t{$0x1, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11724,7 +11715,6 @@ "TARGET_AVX512F" "vextract64x4\t{$0x1, %1, %0|%0, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11744,7 +11734,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract32x8\t{$0x1, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -11762,7 +11751,6 @@ vextract32x8\t{$0x1, %1, %0|%0, %1, 0x1} vextracti64x4\t{$0x1, %1, %0|%0, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "isa" "avx512dq,noavx512dq") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") @@ -11850,7 +11838,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract32x8\t{$0x0, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x0}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,store") (set_attr "prefix" "evex") @@ -11880,7 +11867,6 @@ return "#"; } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load,store") (set_attr "prefix" "evex") @@ -11923,7 +11909,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract64x2\t{$0x0, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x0}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,store") (set_attr "prefix" "evex") @@ -11961,7 +11946,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract64x2\t{$0x1, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "vex") (set_attr "mode" "")]) @@ -12013,7 +11997,6 @@ && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))" "vextract32x4\t{$0x0, %1, %0%{%3%}%N2|%0%{%3%}%N2, %1, 0x0}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -12102,7 +12085,6 @@ operands[1] = gen_lowpart (mode, operands[1]); } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load,store") (set_attr "prefix" "evex") @@ -12123,7 +12105,6 @@ "TARGET_AVX512F" "vextracti64x4\t{$0x1, %1, %0|%0, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -12204,7 +12185,6 @@ operands[1] = gen_lowpart (V32QImode, operands[1]); } [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load,store") (set_attr "prefix" "evex") @@ -12233,7 +12213,6 @@ "TARGET_AVX512F" "vextracti64x4\t{$0x1, %1, %0|%0, %1, 0x1}" [(set_attr "type" "sselog1") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -15446,7 +15425,6 @@ "TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vpmuludq\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseimul") - (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -15562,7 +15540,6 @@ "TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vpmuldq\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseimul") - (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -16585,7 +16562,6 @@ "TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vp\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseiadd") - (set_attr "prefix_extra" "1") (set_attr "prefix" "maybe_evex") (set_attr "mode" "")]) @@ -20322,7 +20298,6 @@ "TARGET_AVX512F" "vextracti32x4\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sselog") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -21893,7 +21868,6 @@ } [(set_attr "type" "sseishft") (set_attr "atom_unit" "sishuf") - (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -22666,7 +22640,6 @@ "TARGET_AVX512BW" "vpmovbw\t{%1, %0|%0, %1}" [(set_attr "type" "ssemov") - (set_attr "prefix_extra" "1") (set_attr "prefix" "evex") (set_attr "mode" "XI")]) @@ -26796,7 +26769,7 @@ vshuf32x4\t{$0x44, %g1, %g1, %0|%0, %g1, %g1, 0x44} vbroadcast32x8\t{%1, %0|%0, %1}" [(set_attr "type" "ssemov") - (set_attr "prefix_extra" "1") + (set_attr "length_immediate" "1,*") (set_attr "prefix" "evex") (set_attr "mode" "")]) @@ -26813,7 +26786,7 @@ vshuf64x2\t{$0x0, %1, %1, %0|%0, %1, %1, 0x0} vbroadcast64x2\t{%1, %0|%0, %1}" [(set_attr "type" "ssemov") - (set_attr "prefix_extra" "1") + (set_attr "length_immediate" "1") (set_attr "prefix" "evex") (set_attr "mode" "")]) From patchwork Thu Aug 3 08:12:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816331 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=la6M4XJ2; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhSS5Kj6z1yZl for ; Thu, 3 Aug 2023 18:13:44 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A2E02385B515 for ; Thu, 3 Aug 2023 08:13:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A2E02385B515 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050422; bh=qMP/PFe9PHZa+F7ADRiB5AmrMcOs/9DmO8uWsa82LBM=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=la6M4XJ2ZHwPv7l9wVQ8VDlNYWM6XUym3tG/QGs5cD6MuXhGo9STrrdVqg9v8gVqG f4qEwsG/anr3l13Q+pkDewnE73ndDtjY4O4jNVhNJwNhAmFUiquPjTUenhjBnG88zV JCykfl9uQ6DVZBzthAe9+ZsEBqCBhKyDW1tNhbXI= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on2059.outbound.protection.outlook.com [40.107.15.59]) by sourceware.org (Postfix) with ESMTPS id 06C823857716 for ; Thu, 3 Aug 2023 08:12:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 06C823857716 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dtLfHMpUMyoVUjAyeE+b4ceL/sQxGtGs0q8d94G2p9y9lD8Ks/6NFdDfYiHYh6SdpAio/1mz97zvhQqfeLzCopRUGj6DB8IMeQzTYooQzr2xMg4GAm8+60UD5VTrRW3936XxfXFDV7X3TrX7mEM6MaLu50wr40BR+05B0aq4r+A7URz9rUzejWMz/4uwK0148NxnR/bHQOLkVj7P8J7kgqFWJbsizQIKyKgiFx18+pe8xmFhOitLW/YQvZcJ4HRTAC5RfTmnAaFEnTiqEYTpztmahl/EafSGLQoGaPqrFHtwU1pL3PNK6IQ0pBHY3qRnQHj0zO04WPKQ9bFBg7ReEQ== 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=qMP/PFe9PHZa+F7ADRiB5AmrMcOs/9DmO8uWsa82LBM=; b=RQMGOmFSN2KF24hXOW+djvYSrUMvb/Arrv9c8aCdJYBPtOInjaqbZSxxDM8acqO6EPmzp1LS+X+G0HtC2oocwz822fXjKYuUMx51gfAmVmK5Wp4D+sC2CE+iM58IVpERwv5D7RoQb3h2hY9RbfBtldQORXnSmYH5t3PmLG48MlQw3UFGinIgAt5bNgJDMMnKZIn8xw3TgpGGShnTMrcb4IlhswbNWWMlMz4WiXavkyChRD2EfkrPiISJjBdv4u7NmtfbBQIukcTQnrcEP82HZf9eM/y6PL6yOf7AOEITddAfGgUJccsarbJ/n0snEdNTTNfQVMd42puExfZxvt5r0g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by VE1PR04MB7359.eurprd04.prod.outlook.com (2603:10a6:800:1a0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:12:51 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:12:51 +0000 Message-ID: Date: Thu, 3 Aug 2023 10:12:49 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 07/10] x86: add (adjust) XOP insn attributes Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR0P281CA0255.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:af::18) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 249e5368-1c99-4ff0-e853-08db93f96e50 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dPykKzZDvAxJuH2DNy8JX4pm47nhkZ8x7xc3QBavKRIGjzy7C6dA+rZIt9hXxywNjdG5vztxugEbAybKVjDTzlTce1L/HZ2BgyR2mZuASZOFGrt73H9hbwaHxO4i+A94TSBJOHRZUrniCzmtIRzouw8CZmqBF4petR+DMw/vcva9V+6Rqtls+yRtTx+vbv3eCy3AJSFaPZRl7foK8XJja9BGgsQSrcw4ud7LA+P70rjRopV0itmw6aTRUVWPYhCXsGVAA7DOCxR2sA1LTIYZmRnlMEqwQQTkJVbXm/r0i104bnAUWF+27qK5fbXAemhgQBnHO2NZ5HAUzfilGlrOBfDAD8FeBn2FmJTauiSwiN8Oijh0TlGm/clbU357fmoEMKXJCGwlMKc+m3tETIp+XCY2vg6zthU6MnlMw4vAtdjldcjv8NjG0oPTCWUahOgstGWFjlWQRXFK6u+5dmVZuxrZTzV4Zfoql3yCZHLkMaJd6JxxWwnMn4VqlkzO5bTxvdje4gYUjmCltvAjjLpVXVsYEcXk1p7/Lm3Ya2IoX4bi3rYPaW87J8CBXKCYqwI0ZPFQODkdi8wr6hZ4AxqAldfcc5KGAbG/wcAQkD4JNRKAknBuWZymLA6W04g8+FptrAWipCJWM/+KzC12Lmh7zQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(376002)(346002)(136003)(366004)(39860400002)(451199021)(41300700001)(66556008)(316002)(2906002)(4326008)(6916009)(66946007)(66476007)(8936002)(8676002)(5660300002)(38100700002)(26005)(36756003)(186003)(6506007)(86362001)(2616005)(31696002)(6512007)(478600001)(54906003)(6486002)(31686004)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?AgbwBuYUuMJ8oudJ6jpY0pFMoRys?= =?utf-8?q?Jwpk4PIcnSkqClrNe8NRVS6nKG+uMRj2sjaZu4tIneM9v/L/3g4vDAyWGwT4VAw/0?= =?utf-8?q?oIpQT02V4/UipouZpYRri2+mXasl9sbBpeHXXKfn64RWeQECsd6+jFlLHZIHnTiRu?= =?utf-8?q?RMmg3CnuRcq/wKksunLHO37W+ttBYIxp90TMGqzkg0C2hIjmVJj24PcAO7qVe+Ck0?= =?utf-8?q?ZRERNqJizIL2Yad05YH//UjjomOs5zBriLD/g43AhWgj6O8FdxcByiA4dG8ODfodh?= =?utf-8?q?H/ptw4/iasxxEa42bRRhB1JlnT2VCUgI3qyupTlp96wL9EBLoD3+oUU8sLALfXsb/?= =?utf-8?q?IxxLVYUAsCIcFjMPvk7atXj9dcpOEAM6St0T/JP5Isyxb6AxgGAyBJenfTi8tnnz5?= =?utf-8?q?pskeBAT+sDIVVL1z0xaSjHYGHe/tb5YV/juB9qURl5gKUSbVOw3+JVQEB9tm+PVNY?= =?utf-8?q?MrOIs7gpb2tXLkzwmaCJQDJ9gLtYYL3qX1fgoMnJWV5Q9WHq60POS8JbyMwNDkumW?= =?utf-8?q?vVT94DNcOK5qUo5G46lfgqzhkH3XdOIn9rdV66TKWcr6Gz98W7DeWIgOCQjYFFse2?= =?utf-8?q?/vMr+G4+zgkCyeCyWwQEFRl9x5ZTjR/sRCMMmCW0epL26e9urW/41O7OvfC/SZQqo?= =?utf-8?q?kBcYnvi3hGrtPnYLkUkbOqcGbu5x3+Y5nvlZ7KAQZmHJw/YU5TUSnOaXqZoBO75oD?= =?utf-8?q?/EN4y2sFSrlLkShNePSanUGIlk3Swod6B+5pAOv8+vrMiYJ/zddStO5g6tSQHMuOm?= =?utf-8?q?REOi1bwwUGq7w51d+oo0J0VMh0fuLdHnKnAnl4RTDhh0S81XR3KB8ci2sQBm2EaXD?= =?utf-8?q?nYmIKEdfqUpum8weD7oLeI72JpGjxN8T6GvYcyy74D9ohCTkmrGEFkkMfN1N+qcQS?= =?utf-8?q?QodZXPomXc7zOJlkRS6eOGmQVaHvF0xCADuN0/zsSZO8soGrUmV7dGaA67+CA/uyY?= =?utf-8?q?WN2LaiDd9WtvqRVn4Ve1Y4j3Z0+ClBHj7ZkZSLNZ4771snGRwYdXZ+AhTxYj9lVgZ?= =?utf-8?q?Z+UlJVwyrzereBqLpy9dXIsKT+S/PpssrfuCaHlyX+zxc/rjQNb44Rwp+JVkIgBIf?= =?utf-8?q?QNp1o32sbvjH5ijCRYyBIx9POprPu0Yj6wV9RI2cxVv5RvyVUDEdSqfBMues1E4VN?= =?utf-8?q?KqgwM+rnHd9QdXJv69IioC/m4uQwnRwzHnKz8mTAPsfCuv/+FnGSCrR6u8F78eRgr?= =?utf-8?q?GYqM/vVr1s3/slPoGb3HpPwf2t1WFZaU6Bg+k9ZfYEFmi0G64gRxO554zBVqHI6Ou?= =?utf-8?q?1mWAJcA6HO/7rmgCVp0GjKeXllp2hkM9fEZDeZ9Q1w+pgolfFmDGEWmHHKU/gGUiE?= =?utf-8?q?JBz4qdsrcMCllnMlfy2gt1XfAGmJD67OqFTk/kqQxokvtWrqSyZgxcw8fU46KdSIP?= =?utf-8?q?aYxnJkU75jIvmF3IRiRSh3xbIChBhWZLqInUOjTge/x20eqXCoxWfJ7taYNDiCrGn?= =?utf-8?q?JhAbfwZATDZfT5PUi6UfmuXxHEe6EybqY2XDvtZLsr5GWJxdU6a5baFwfG8gNUaoL?= =?utf-8?q?Ixf1xwGlgVDK?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 249e5368-1c99-4ff0-e853-08db93f96e50 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:12:51.1573 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xLtngHxgxGZf4CTGtDZvQnAkA3ZPmgqHmX4Xg4yJTzHbmpEztOJSMsYGIlk8skC6hsTMaTYUvzn//DTjMfJOrA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7359 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" Many were lacking "prefix" and "prefix_extra", some had a bogus value of 2 for "prefix_extra" (presumably inherited from their SSE5 counterparts, which are long gone) and a meaningless "prefix_data16" one. Where missing, "mode" attributes are also added. (Note that "sse4arg" and "ssemuladd" ones don't need further adjustment in this regard.) gcc/ * config/i386/sse.md (xop_phaddbw): Add "prefix", "prefix_extra", and "mode" attributes. (xop_phaddbd): Likewise. (xop_phaddbq): Likewise. (xop_phaddwd): Likewise. (xop_phaddwq): Likewise. (xop_phadddq): Likewise. (xop_phsubbw): Likewise. (xop_phsubwd): Likewise. (xop_phsubdq): Likewise. (xop_rotl3): Add "prefix" and "prefix_extra" attributes. (xop_rotr3): Likewise. (xop_frcz2): Likewise. (*xop_vmfrcz2): Likewise. (xop_vrotl3): Add "prefix" attribute. Change "prefix_extra" to 1. (xop_sha3): Likewise. (xop_shl3): Likewise. --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -24897,7 +24897,10 @@ (const_int 13) (const_int 15)])))))] "TARGET_XOP" "vphaddbw\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phaddbd" [(set (match_operand:V4SI 0 "register_operand" "=x") @@ -24926,7 +24929,10 @@ (const_int 11) (const_int 15)]))))))] "TARGET_XOP" "vphaddbd\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phaddbq" [(set (match_operand:V2DI 0 "register_operand" "=x") @@ -24971,7 +24977,10 @@ (parallel [(const_int 7) (const_int 15)])))))))] "TARGET_XOP" "vphaddbq\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phaddwd" [(set (match_operand:V4SI 0 "register_operand" "=x") @@ -24988,7 +24997,10 @@ (const_int 5) (const_int 7)])))))] "TARGET_XOP" "vphaddwd\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phaddwq" [(set (match_operand:V2DI 0 "register_operand" "=x") @@ -25013,7 +25025,10 @@ (parallel [(const_int 3) (const_int 7)]))))))] "TARGET_XOP" "vphaddwq\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phadddq" [(set (match_operand:V2DI 0 "register_operand" "=x") @@ -25028,7 +25043,10 @@ (parallel [(const_int 1) (const_int 3)])))))] "TARGET_XOP" "vphadddq\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phsubbw" [(set (match_operand:V8HI 0 "register_operand" "=x") @@ -25049,7 +25067,10 @@ (const_int 13) (const_int 15)])))))] "TARGET_XOP" "vphsubbw\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phsubwd" [(set (match_operand:V4SI 0 "register_operand" "=x") @@ -25066,7 +25087,10 @@ (const_int 5) (const_int 7)])))))] "TARGET_XOP" "vphsubwd\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) (define_insn "xop_phsubdq" [(set (match_operand:V2DI 0 "register_operand" "=x") @@ -25081,7 +25105,10 @@ (parallel [(const_int 1) (const_int 3)])))))] "TARGET_XOP" "vphsubdq\t{%1, %0|%0, %1}" - [(set_attr "type" "sseiadd1")]) + [(set_attr "type" "sseiadd1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") + (set_attr "mode" "TI")]) ;; XOP permute instructions (define_insn "xop_pperm" @@ -25209,6 +25236,8 @@ "TARGET_XOP" "vprot\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseishft") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "mode" "TI")]) @@ -25224,6 +25253,8 @@ return \"vprot\t{%3, %1, %0|%0, %1, %3}\"; } [(set_attr "type" "sseishft") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "mode" "TI")]) @@ -25264,8 +25295,8 @@ "TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vprot\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseishft") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "mode" "TI")]) ;; XOP packed shift instructions. @@ -25501,8 +25532,8 @@ "TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vpsha\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseishft") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "mode" "TI")]) (define_insn "xop_shl3" @@ -25520,8 +25551,8 @@ "TARGET_XOP && !(MEM_P (operands[1]) && MEM_P (operands[2]))" "vpshl\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sseishft") - (set_attr "prefix_data16" "0") - (set_attr "prefix_extra" "2") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "mode" "TI")]) (define_expand "3" @@ -25733,6 +25764,8 @@ "TARGET_XOP" "vfrcz\t{%1, %0|%0, %1}" [(set_attr "type" "ssecvt1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "mode" "")]) (define_expand "xop_vmfrcz2" @@ -25757,6 +25790,8 @@ "TARGET_XOP" "vfrcz\t{%1, %0|%0, %1}" [(set_attr "type" "ssecvt1") + (set_attr "prefix" "vex") + (set_attr "prefix_extra" "1") (set_attr "mode" "")]) (define_insn "xop_maskcmp3" From patchwork Thu Aug 3 08:13:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816339 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=ESn9Mdev; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhWd4ZYrz1ybS for ; Thu, 3 Aug 2023 18:16:29 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 95E4F38582BD for ; Thu, 3 Aug 2023 08:16:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 95E4F38582BD DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050587; bh=p6edZeKlREtik6n3aWoPOX0zXs9Wa8jJ2tczDOmMl5s=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=ESn9MdevTHECqENgjZWgR3nSuelsil6olvNBCw81PC+2gty3x+kaoM7B54EbnlsKL ++v7il0h3VDxWh8GOhp4qRvvz1H++wc2Hy7BkABlgDPJ4iyi3RsU43viEDvSiO02BF 8dPEZaSJdR77dRh+R6J/Eoywhz5RuXD03F63s0Xk= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on2079.outbound.protection.outlook.com [40.107.15.79]) by sourceware.org (Postfix) with ESMTPS id 7CDC03857020 for ; Thu, 3 Aug 2023 08:13:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7CDC03857020 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fclcoO6TpSPHlRPTRXlNrzRwDLlxfSAv8Jy3UkI1TukeS4aEocfeWA30BlrAD0eoShozltegJJGVov1nwcR9rrVadG5yBIRSRWDjF11fPPB6tHMgOeYH8nizYNjk65j7VdiJnpNqRAKxHNkX9u4QQJO26M15klcuyNt31iKKBJOnCqP+Yk+9LY+yxkA2pt7Q2hh4j3ErEHanl0h9jLoimFeVblpZsaXjYGj5IWLE7w61duEhwnIcZ5JzJJobFU6konz8zHZEz1P/IaV+0ATGNPJckxDiODycmu1Skf9HTibEl99TSx56V1iUV9dO74DD0YB1FcJLVLkfMMpubaljZw== 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=p6edZeKlREtik6n3aWoPOX0zXs9Wa8jJ2tczDOmMl5s=; b=Rc7kYgB8b944x31RJGSTyO/wilI1kvQpkcGj43E6f3PLPNFEa37+sncAICPxe6EMEOjbi+KPyjzLA7KQxVuW3iAqLtb3qP0raD8+PLh7dWKH5e1FP3+Eti1H7knoMe8Na84EFzE7ugL5QJ6RtyeNZITFKdciAElAErYkCUAAn5VGfYvjp+BZAn0zmWfzGVH5lCQPhiDZuQPJN1Sy1A1huIdNaQ/avuei7Yc65NClnUT5guzQmbVxvsDDNSVWge+NqeLktLjG4y6OplHiF+2CEDxfebCws7pTEoQZShBg3RLYZMALtXgBoNTUCg5fNeI9HDP+zmEFBlb9SQE3oWED9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by VE1PR04MB7359.eurprd04.prod.outlook.com (2603:10a6:800:1a0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:13:19 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:13:19 +0000 Message-ID: <0e7fcac5-63aa-7e79-086d-b3ecbefbcaff@suse.com> Date: Thu, 3 Aug 2023 10:13:17 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 08/10] x86: add missing "prefix" attribute to VF{,C}MULC Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR3P281CA0112.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::15) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 40f00cef-7cdf-4ab4-b17c-08db93f97ef4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IiWeUHQA3bcgWrp57acC2xcsgSzRrCFrFs4ZiqxvMKxAnF7NIAYysoF9jzJuMmtHJjzMSZL9dbwrmnUAOD0ieXhbbeC5RMXiMO2U1sILFIjjnl31TMr0wPWtXtiab+uQWjOtaHr6Xc11NjJWM0t78VyUNKcYqTD7cSUGtzmIxqiYUDn5T8wnOqBCjD9TOwy9DExrMyfbb5ni8U28meWLXeVP2VtIe/HKfRFljjRHLLm8241DIrh16qnAgNqJVpK01VmrjBtT5N+8uEQLRj7ecThM9JGRreqdu/V1pq0BhN/8gcaTx892pu+X4UJNgWuhcztda+0j01WdSRdrauMdd7YIVd4e+mNLlRZGbqzxy0p1OTgnlazIgDga7x72yJlho0c5G7k9OAE5UAgPwp8mMyhPePDd2YukuXJlzFq2rhEXqBjhUrmaP6g5jvMOp5i4J//CKmfjGCuwwnzG7qVrEl78nK1Uw7esr3+P6STUR9zp6FxMKgJnR3861bttIAq+2/MrdnV2YtZzfL2nHdpmqplSesnzw1IAme7CXK74JbkR2mfSjj2s1blxN8iQuOlzztNdGnvL26Tb0h686wgto8kwrMm3kk7+xS3nKkUpuq+lvKQVsBzZo95Nj9gHz0XZVti8PrAN+/bfaIdmEbbEOQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(376002)(346002)(136003)(366004)(39860400002)(451199021)(41300700001)(66556008)(316002)(2906002)(4326008)(6916009)(66946007)(66476007)(8936002)(8676002)(5660300002)(38100700002)(26005)(36756003)(186003)(6506007)(86362001)(2616005)(31696002)(6512007)(478600001)(54906003)(6486002)(31686004)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?1491s2kjrPH7uOREExJDb+rElJt3?= =?utf-8?q?/i881sLT6B2F6A7KwcT2kPLCNBLmbLhXhbKXvhiO66qiozkSpQ4oHLsxabMkqv42I?= =?utf-8?q?SXWoxpozv16cPbQxP/o2lSTZYFn7M+tkwS65biR1CsBfQ1ftC/lmVOTEIXCWoHVR2?= =?utf-8?q?jkGYdMI/XWAZyHxp2t2CpMNuuWblPYm5UOmJYkr0+cDW1D5QOL6t1NgXBYuSElk7s?= =?utf-8?q?nnEyzeyzmqE+FlDTcE2WteAfbTLvAGMLDR89ASCBTrMDBfIkmMzE/IBfEuHRQiKWO?= =?utf-8?q?7PsYzmNKZ+ok/5E908X/KUC5Q+Klz7H/709qgtdgfW1LD1b4ni4t/TRvvZnIdDmsT?= =?utf-8?q?IynBp+6+xFHDX3KXIRGbwRzSkhmkzuPKr7nO9ApGK4nRYfWg3O9X5ybqIMzqUhZ2F?= =?utf-8?q?49HEKmZoauNbP6+PvcTDOlyNMHtRaOfVwHNseUMVaTZCpu2rCzaqDdRFCPC8mT67O?= =?utf-8?q?JvfgeBwLHyjoSFC9HraWk9b2imlzit0dgpC4jOKOUeK6IkLQYBKiX97xPV/tFHHIi?= =?utf-8?q?CAKQCokZziBE5RWffqMCEzWxqak961gF26pIYnsrK+MBgW7hNL2yTwFOc56zQhNBd?= =?utf-8?q?rcgkwWeWWAKp7K3cxmGbBBk2TfLHS+W5FhZm7dgyCCzOIF013GwhJxfqXZ/MiBu2u?= =?utf-8?q?sKZruO5o8FSftTHZw6Ksza6XPgr7YMjXottkmk+5bEdIRnpr8rKyTlaT2b6uMiGaI?= =?utf-8?q?5NmMImtxzFBF/j1uphhchp7U8i9t36WsEnWvPNbrm2cjr3gpw6FJrsD+A3+EbPGgt?= =?utf-8?q?D/29nP3sFPIpYlhB+HXzchjpnodPnnsKFRWpYi2IYpi4M3PJ54bAZvAWiwnkYGmdS?= =?utf-8?q?Oo2IGjbcqOICtvB3cgzY8o/ZI62vXzK1R8VrpxfC9HNJCj8kgFg7JysmXdgbihS9K?= =?utf-8?q?/EKkSvzmc1Fas+2d6Hzyg6zg/xbj7Xe9yeSaAs+eIjqnUnV5xlCvUgbbWfJh9lAj2?= =?utf-8?q?zozq3DYUHst0OVnQh1mKjAtD1inO/ElhmzNI1ReWhlx6rrWGMk31UQGoeRLx6jgt1?= =?utf-8?q?B7DLCFHOLk5WglGUkJ7ChwgonEFYG2oS6ffQzv287fzHKzyHXH1hCEnPFasLZCVko?= =?utf-8?q?pDq2kXFuouGrJnn0hNSEWDT0F6PiSmAQ4IguravJFNHL9d+SvycHUOxAQstwnLJWf?= =?utf-8?q?+HtPSWvwdQTyiTmqOzNmMzN9Nhts9Kjxkd7xjbxHKEQ2OnBpdP5fiCNyG4vYSCVxK?= =?utf-8?q?pJQ3Fve3VUxMI5ugi4iWl3mI3zwm03ARc/8yVKyzF7wEveUyETkWwBK0yWmQ8Fa85?= =?utf-8?q?+F4EjqG1rCQrA+vE6QaOEsXliVnWhkzu+Dbk2yj2KJADClIJiurBMa8OSUXA2muPQ?= =?utf-8?q?KguuDsECLpXemLql92OQZbpeeBuvMHZmTaJX7OoVaElu+x3PbOFBBIdP7g/zhTkk3?= =?utf-8?q?0oeM63K0egtGp74SzLHVpqdSSRIwXRCOXRLwPATLqluzcAQe/fw8iz4p4RSp1+ixx?= =?utf-8?q?Ra9RUD7LjYDabKpAsgm9axXkzr6W3tt6AKAVZfYecXaSqsrK9FXEJux9KA4uYKmDr?= =?utf-8?q?gLmLYKjpW2M3?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 40f00cef-7cdf-4ab4-b17c-08db93f97ef4 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:13:19.0542 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hbKKDUqWX2Jyd0ez1wIYDTeJBxDBlFmb1HM6xDsomF1XSw2F6vYLUMOm4K+wIAx+lz+d/XfRW4a9cmYlOT7j3A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7359 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" gcc/ * config/i386/sse.md (__): Add "prefix" attribute. (avx512fp16_sh_v8hf): Likewise. --- Talking of "prefix": Shouldn't at least V32HF and V32BF have it also default to "evex"? (It won't matter right here, but it may matter elsewhere.) --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -6790,6 +6790,7 @@ return "v\t{%2, %1, %0|%0, %1, %2}"; } [(set_attr "type" "ssemul") + (set_attr "prefix" "evex") (set_attr "mode" "")]) (define_expand "avx512fp16_fmaddcsh_v8hf_maskz" @@ -6993,6 +6994,7 @@ return "vsh\t{%2, %1, %0|%0, %1, %2}"; } [(set_attr "type" "ssemul") + (set_attr "prefix" "evex") (set_attr "mode" "V8HF")]) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; From patchwork Thu Aug 3 08:13:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816333 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=tIcRDt1u; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhT04vrWz1yZl for ; Thu, 3 Aug 2023 18:14:12 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7C579385701D for ; Thu, 3 Aug 2023 08:14:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7C579385701D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050450; bh=YsZQHjarKFkg4khN/O3RQXMvB+XTPGqlzvJlB2HxaPs=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=tIcRDt1uTrmqo572KFJ5O78GYMAz6HrMWJM1bpyb+SAf6dfD1kxtJ9SvBx9df911a AGrjBKNXLNBdubZBI9gwOhUTbLKuo1mc+VVrerXOn/VG8/WXHlyX7sdVLe0I6o9jZI atV9rYlGlzATQChu1Ja0k+JrRh+GkVL8csJxLDFk= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on2055.outbound.protection.outlook.com [40.107.6.55]) by sourceware.org (Postfix) with ESMTPS id EE759385703C for ; Thu, 3 Aug 2023 08:13:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org EE759385703C ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fx0smkZFeuQ9+1pmQ6QeOld9Ba7KgJHCRuikRhKYqqKrHgw43ul5tXLJLOinQXCK+NWjFCV6b2FSg/9CMvqM27G1xxulqQB9TZzNGHPxzZMzJxtATtJEqZji4jXxbWC0Xzj1SpOW7QRKYcwqo7xtSpiBZY2K08ceHrEce8UAOfL00W7kBdYFmGC0txUdfuhatmV061i0VEphiZ9Jp4leiekAvi/jCtFr9YO38Bcy+RBOicwon5bZt9o7AMUwpQyiZHxRsF211ioEByVMZ6+quQh+luqeuXdltFOaClk1w6dh6+ZPcYTB7Sw4SfBPyzHn4GxWlfvJZ1EMSS7/tTXMLQ== 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=YsZQHjarKFkg4khN/O3RQXMvB+XTPGqlzvJlB2HxaPs=; b=eqU1G+OS+ytBTc45PyouT/tDuw+DURUTQJ3p9wGTghMs0NMzbgw1Yl3gOSSZTpK56n6uuXWG1v2yyaCsK3fbwPk6/OtvPrBFqTUz0fwN2stBWjxXb/llJoK4KkRUSMKP52GPP7Xu98oEKZclFa9oQu4aAWIwen00qorBiPKDubqw0x+FUBgd1eTm8ILnI69e4voMn3ifX1lIAeXogGLxs8r6sRRECoZWDlmerHEMagHd5T3znlmV59Z7gPWzwSBV2kAzPpgV+Ruhw7iXAZrsVMxKoTnpArw8ZWUDZqseq5ACPCr3ovReQPNk0XhKUJ7VK2aFMfA6+s+pAstn4lwszw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by VE1PR04MB7359.eurprd04.prod.outlook.com (2603:10a6:800:1a0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:13:46 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:13:46 +0000 Message-ID: <8d0663ed-123e-1428-8aef-17d82c1b5f17@suse.com> Date: Thu, 3 Aug 2023 10:13:44 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 09/10] x86: correct "length_immediate" in a few cases Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR3P281CA0151.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::12) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7359:EE_ X-MS-Office365-Filtering-Correlation-Id: 3fe00833-c83b-4549-4259-08db93f98f21 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cxxs2A81P8jfVhW6C8zK1UJhnm1WdlbYFsZgp7bIjiLw/6DphhU9fhxnCQlvT2ylyXF6HE2ibwQOGsN74pZbV6sT8guJno9ydyQJMpFvCsYwNu2u322vmQaEZgyuytTgZV5oC+7FOYXbd5MEEXjaM9EeR92gSvOlkgEJdnoKh0kEtjk7jntTQQkRL5BlF/DobZXf2jyzNVoPcu2rhu5ONDACHDB/9RRjngEiFGTQ6LbTgT8Z7MN15qtVSNP0eDAPmAkQz9xNMOnAZracGfT2yt/D3zrAKQl6xKkftONSZL6e/QyO0LpIbCxSh9zwQ2sLXBcun84BMcLlf0zxRLcAo9hT/2LZDQpR71gCGTbYYg0evnz2I/Xx4zeEyxyWovvwogDWZhIJanrVXLZl1P5+Zrl3ULtZBU8lISaJEwIJD0ML2cq3eYPToNTxOlqaPzPUG46HdBhy60vAfKERWaU4zJL7DHXi1ZE1DPS/abahpTGFEFSpFIlPX3P7hmf9Lsqzo5pQ3Fo22nIfUeP6VJxrc4SjnVQP7EZaiWuzfYjxAukGb+yqJOOFAw00bcXVctWg+dtUMV/TnB/vTDFvczrMRl4vMxgryO8HyGi1D5/qCnHG0dXjdcoZFgzYAaJM7FSPUD0tIDl4GCcwAJ/wme8O5TEIIJP9E9qfsBgkU8670fE= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(376002)(346002)(136003)(366004)(39860400002)(451199021)(41300700001)(66556008)(316002)(2906002)(4326008)(6916009)(66946007)(66476007)(8936002)(8676002)(5660300002)(38100700002)(26005)(36756003)(186003)(6506007)(86362001)(83380400001)(2616005)(31696002)(6512007)(478600001)(54906003)(6486002)(31686004)(14773001)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?FtyiO0iUsSL3Nw1Y5xavNTBWjhzS?= =?utf-8?q?MGRn9DibtDLj+gmCUJBqwlHOrcaLPnzxNdHxfJhRexC2SSVEcH36XTvRTWTRwJvNc?= =?utf-8?q?6xq34v1gL2TKWdy+93srwt5lQr6UUT+dgnpccXML+yKnXYOOZi9uHqlLGhc8DktDU?= =?utf-8?q?5AStAbu7s/Tr+MvtmYszYrPZKnnkvEEquPPQaOV/zg1zZ266P6K5bghGbuoRXyIkq?= =?utf-8?q?SdKpCWS/MKu/O5C1mkxyZRzN+diZkyyEkGynudl/ygpEHb6Za0oJ48wt6pSod4Owb?= =?utf-8?q?II+9KhhrqbGZzXyZ9cehsFKC4DJCGoAtOAtkYZJjuBC8X8ev2xN2SuOgNgz5qyFAo?= =?utf-8?q?5Euv7qIFLB6YmygZ89sy05NvPox5oJ7Qde2Y1jRJnaIFembdli6m+EyjypVDsspbu?= =?utf-8?q?zYVgN50Y/Z93hU0Jgf+pDcs3xO6QQWkNecJ3AbvVo4X56gvCrDdLFCZAFa5W0oMvU?= =?utf-8?q?ZPDKDIHxcldxOtrjfJjTi6bM10XRx4ETqot/BSGczUn9mA8mNu+1ZHyq08y/X6D/c?= =?utf-8?q?sTmr/0Wgu1cSRiDV9NEX+Zrro/Nc7Vtuxyw6XzOWcnjprvZ9Eg22UIK8x1pB8hvr2?= =?utf-8?q?PXp10rWOr0jR9TOolSZR3uTj5vIlpbxE2cTS5lKtWVnD5FHeRnJh3xul1Og/lHH1m?= =?utf-8?q?d8rOMkz09lD1TJNpAYzYO+duQNgD5Rku32zY3iwsPYnJgGyR0Frfwy3hAjU+8peVz?= =?utf-8?q?G05fc0YBGaE/JbLB5zYJRbvh3PhET7o37ZMmRyLqs0SW+vwPaTYThj2KNH91yVjE7?= =?utf-8?q?ouJ0PiXB7qukJl6Fy6E/pKWDzCp868tFOrgo+PIUrGnPOYhRG38ZLUgHSmdaXSG9C?= =?utf-8?q?cTCQ/d4+2vaJwe3+tPbI3dp1rIcgT+868vX8avq5OOsanJS5a1v1xSYzzSnYw69Rz?= =?utf-8?q?44UsL1b8aF9wFVGpk1sXb4OagEvJ4WbFCWEniOROu78ALCYKKwaXLyYFIpChxh/1+?= =?utf-8?q?P5vfIpNMUb92i7Fl8Kr1zE0V+9jzJpGhuT0In8y+Bh1ipWUE9+n9jeDC8Gdhx6HyD?= =?utf-8?q?fvIxITIjOIIiFMhPWy2tmWIzWbH2p8K4TfqMS/T9HIyc/dB7/Js4Uf4V2D992R4GJ?= =?utf-8?q?ND/BE7RklP/BX+nh5+UdN+HGh2idN5xSrdrKIT1vxPXG1eP0ZM9zVTFUTxrw7kYpR?= =?utf-8?q?RkwiJx/DEgtgec20bK3S0y1xS7T8y4fdbhrArOVzKE7tCqPovbGUR4esSL995NLae?= =?utf-8?q?PURDemVazKQqMH+sTo5NnWaBGzTOLLQ/SnXzBiO4u3nPY7RpJVNiS7GvjCuQrFMnT?= =?utf-8?q?3m4kEfZmjWgI8wsCqulEAtxKgEQmmRD8x0k9/GmpzzkeUiDX9u1luAxw55HsIfLid?= =?utf-8?q?1HUXPg7R6nmB3jsrTcSR1PtE2QxMsMefmlyBQZ2OUS+lXkJ7mJkPvifgTDxiznQFA?= =?utf-8?q?wQeoLBhi7OVnr4ajxvCmzFII+HWNRfS8+nraf7us3u8Ok9wPLgtw0Ud+Nw0s0QAyM?= =?utf-8?q?zkyAHkl3Biuza22L9A0CIkTq5pwp/Ae3jhMvnE+Eu17oYFEDt5KkE9967mTX+TiUA?= =?utf-8?q?PQ6A9k5jp2z5?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3fe00833-c83b-4549-4259-08db93f98f21 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:13:46.1872 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: h2eXVvN3C9PMYY7D89y6GdxEqdb/RNwOiPvHl/foprnpQ1tr/wqt0z+RuCPQdSycRGEYYEcyf3DnN9TvteTBAQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7359 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" When first added explicitly in 3ddffba914b2 ("i386.md (sse4_1_round2): Add avx512f alternative"), "*" should not have been used for the pre-existing alternative. The attribute was plain missing. Subsequent changes adding more alternatives then generously extended the bogus pattern. Apparently something similar happened to the two mmx_pblendvb_* insns. gcc/ * config/i386/i386.md (sse4_1_round2): Make "length_immediate" uniformly 1. * config/i386/mmx.md (mmx_pblendvb_v8qi): Likewise. (mmx_pblendvb_): Likewise. --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -21594,7 +21594,7 @@ vrndscale\t{%2, %1, %d0|%d0, %1, %2}" [(set_attr "type" "ssecvt") (set_attr "prefix_extra" "1,1,1,*,*") - (set_attr "length_immediate" "*,*,*,1,1") + (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex,maybe_vex,maybe_vex,evex,evex") (set_attr "isa" "noavx512f,noavx512f,noavx512f,avx512f,avx512f") (set_attr "avx_partial_xmm_update" "false,false,true,false,true") --- a/gcc/config/i386/mmx.md +++ b/gcc/config/i386/mmx.md @@ -3094,7 +3094,7 @@ [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "ssemov") (set_attr "prefix_extra" "1") - (set_attr "length_immediate" "*,*,1") + (set_attr "length_immediate" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "btver2_decode" "vector") (set_attr "mode" "TI")]) @@ -3114,7 +3114,7 @@ [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "ssemov") (set_attr "prefix_extra" "1") - (set_attr "length_immediate" "*,*,1") + (set_attr "length_immediate" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "btver2_decode" "vector") (set_attr "mode" "TI")]) From patchwork Thu Aug 3 08:14:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 1816340 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=bBjmtCEE; dkim-atps=neutral Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RGhXp01Pmz1ybS for ; Thu, 3 Aug 2023 18:17:29 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 008FE3858C60 for ; Thu, 3 Aug 2023 08:17:28 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 008FE3858C60 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1691050648; bh=q13ItPUMl5NLhax6t8bRmdlfRgwV33YxK1uOpwSKMJg=; h=Date:Subject:To:Cc:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=bBjmtCEEut0X9eb3XvSd/MaHdhvFEXj7w0TWYla/4fUXP23IZ2TAvwFPC1u8VGaTF cfz6BPda7R5U+SaP75tNSqPlDCqQooYEQXB19B7qt2dm50y8zuEcQw5pL0t8s8rSuc n47ERM/QO1q7IGyafw2fsyTMOPpfXWemt0y3cCV8= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on2075.outbound.protection.outlook.com [40.107.8.75]) by sourceware.org (Postfix) with ESMTPS id 47A3B3857714 for ; Thu, 3 Aug 2023 08:14:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 47A3B3857714 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=brSFVWy4bQSs3uldQ4yU6uvBrH+JBRkj2sV99GTvq5t3B4pJPE0gu3PhuTZWpHQ+XlrfXWWkAgwgplRxrqO7KLLE32Mhsc3hNwcyIG7RdpEoTp0BXek8joHnt6XCiPvCMzThRSD23w81CD3wbeNsUoTY9ug4/fRTNu0rLSGNffCb7r/Gj1EkM4tBqluCWaFV8dT71RsU1a/kL8j87dlr8GjaeA+kbCsVbPio6NOluqDT4at34R+elbD8JkTdvMEI6YZvAHj/QE/Nt6tmgX+89CjMLUZNCMlxLydRbd1zGOPZdYwLy1esn2SlMP6DZV5beFH82X+g7i6QTWdt0r4fyQ== 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=q13ItPUMl5NLhax6t8bRmdlfRgwV33YxK1uOpwSKMJg=; b=ZWvYROdjEt/1Ej++qye1myD3llQunrLjPQNpEefCxUlCKPRmLvsQkUhgdec6wBqjB1l8AglGocSo7n4xHFnvptbMfZGfNZnfT3QrLmge8B/8009lS5bHx3K6/yFVMNW4D3UOG0EPc52LdxfuheDEgLSbUyrKQzIBPRPpYC75a8ofrZrhnB8WyjMBRmIUnF0sgSxT4rvzEwErcG8TN7e0atuWi73ghl9oFDb7puxiEN9UWBFrSsgkMu2zL6OfFYSTvrbcRxsNAmhpXQNXUqCCQtZEJm+jLsQYSUS/g+0OWAnYpda6OHkJgjy7OeUNv8CiXxTRQjYphxuEQKdAMQSL5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by DBBPR04MB7564.eurprd04.prod.outlook.com (2603:10a6:10:1f7::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.47; Thu, 3 Aug 2023 08:14:09 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::e5cf:5743:ab60:b14e%5]) with mapi id 15.20.6631.046; Thu, 3 Aug 2023 08:14:09 +0000 Message-ID: Date: Thu, 3 Aug 2023 10:14:07 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.1 Subject: [PATCH 10/10] x86: drop redundant "prefix_data16" attributes Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Uros Bizjak , Hongtao Liu , Jan Hubicka , Kirill Yukhin References: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> In-Reply-To: <9bef986f-7441-c4a9-5bfd-7bbed0a3d950@suse.com> X-ClientProxiedBy: FR0P281CA0041.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::6) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7564:EE_ X-MS-Office365-Filtering-Correlation-Id: 2ee9d4ed-8f7f-4964-ae63-08db93f99cdf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aG3N/1go4OAQaxdEaRU2wWtCJVFf5FoxFpIzkM0on/6IOyq/qqMW5dY9+fRaFGlsB1RZacDYcwCGcbzFPnoBMsbn05HJTzh8nZ7g8AOcpEfXVk+C/6l5v7hhUC+ZxE3P3nvMuSTcZ+L9xn1uCqAbJAkzS82ACkp1VpEm9t0aFKLwONjw8NaLO8n+qkAqUoCZ47E1IQK11KwjjEJOqNAH5J453aSq2ccyiqhrKc4fZH/+OuZOnxSP7NqXqnwaIriFpRj2jE36HYT7GfEMpR0AfxT8oqgBI/Jfm66Ro9nQv1o867YE5r4Fft7+haGoFOMVWXeQK0/9OrHDrq7m7UKKt5hUoVZvqwBVc+P8lcFTUQemwoGDp58ckkQCDfmSM1nq8EYz2jmW8kltTpajuf3qwnhA2taji4HDDJgmmSIabtsFqQphsGV7Um5Rpqk4pRXkRHwdYCXSFkRuOFknQi/+JS4K+P55iYuXteLactnNME7r4WY/HNvgC0uZh21GtWithpig0IEgHdlAMu0Magk30UHUncOQDgzQGfpNgExVmg6709ddNcp0ud474tpvQfRtzw8FbLdb9nPZJxX2Def/R0vAapLQf4p/KROWE6dOATKO+wmYS+wPdShZtgvZgXBOSIlFTosuqLiyEJ5NxEeXNExR+MZgS01QKqZFgn5buRrjnQUn0oO7fIqgFVUmJHKB X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR04MB8790.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(136003)(396003)(346002)(39860400002)(366004)(376002)(451199021)(2616005)(6506007)(26005)(186003)(316002)(2906002)(66946007)(4326008)(66476007)(66556008)(5660300002)(6916009)(30864003)(41300700001)(8676002)(8936002)(6486002)(6512007)(54906003)(478600001)(38100700002)(31696002)(86362001)(36756003)(31686004)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?NRYtv9kfAO1+N7pNu3QsXbhPnQG9?= =?utf-8?q?AMohyfS2GwSkCx9Nv2fwHTZfqondNhZHJEWZPSnOHr++qmZ1QC/yx4py2T8iUf9qK?= =?utf-8?q?j7Y6adnK0oLeRztimwUbCch1T0mYIjDQeq6RRpayk/pjHAaCYeIq+JJuFQUNYhZ6n?= =?utf-8?q?QJp/bALEhkBaWulRTQE5tk3nP23VkvZo91EUqMTaTHiQRXYKtoL7RWZsbevGoY/tz?= =?utf-8?q?PZVqxO/ok3RJt1Z394R1rxy4qKXbIKk6Jv/7aSDK6wFEgVPjc/XJbnqM+te0j3ZZt?= =?utf-8?q?/EeCr7MhEkfEwTAw+vgEUPOokPMs4q6DzAGo+ZSjNNsRz6NQEHxgk+xmwgERu4iSQ?= =?utf-8?q?wKdB2SsBlMo2ioat3mtoxKdLBGX1rsGra1JQRoWyeEIB4k88pKKW/4gIO3WT9poaH?= =?utf-8?q?L6eEhwvTfXv1Er3F6w7iY/fj4pnPsxH+u2U8JAEujZ+O5pVq69jrvuyXuwexlgc3q?= =?utf-8?q?snI/+jFl1trBPZ0LqqjgAccAbI1byog7fXpHYCwE1vo9iv5THpOMQEIg1CejmMfkx?= =?utf-8?q?/C6bCh/OfdkWwf5Tvxm++GKDpFm1syhu58hezDgyUzQyU5cGwdWlX136CrdYLOLuk?= =?utf-8?q?hor9bvUplroEBFJcsSRm/S1ucjT4JOFw1Nm8sqLApwfwAbebYEyqfk5SmkfM3Vmdf?= =?utf-8?q?+D6GlgzKlYXpxkkKSCFKd9wOnvv9kIwK99qvUlHMQBLNZYWyM2UphdodDQUkd2tg/?= =?utf-8?q?AXWJ0f4wdEIose4EjnaLbtLPwcSS7vcZDS2cHXfKRHmEjszMmV0QL9mtS+5mwGJ8Z?= =?utf-8?q?08DQP22gXfUsOWvXUIZasv/AIw6Yn3f44ZoT0c2LGsiIY56pZQxGJ/HXB2lpsbJWU?= =?utf-8?q?fE45CMIGFhLQRFZxyZCibnJaHXGdVC9vxV+nwrS8pT/OsTuAv5mJfYz4EwQC+agge?= =?utf-8?q?1x+jp+beXDZHNTf9i0hFxNsNz1PkUTr/al54NF4HXiNrDLvXeNpulzL8GRTVDDjBY?= =?utf-8?q?SfMwQmXS5UjNT/h516hAvl+0rmxGvgXS7D0+40qySXOq6QCOdUq+zp5HPxkb5KKbH?= =?utf-8?q?+cANrvN8ZS7Mgm9/h8pf6yOQ6YHuliEUCd/zC5d5UL9XP/aZc/+HhmtLLGqLnkViw?= =?utf-8?q?bbscRosLMLDHo9pKx2/Dp8xub7PmRZX6jfujW50nY17hkalRfSnuvNmzu3onnlOd8?= =?utf-8?q?epyxi1/2AESAD8cKIemqLbBGcxunFfZAxkKRq0SPH8enCZ6oTQGBPZGQmw6LD0/7r?= =?utf-8?q?kksBriMnS7Z4/xKi53heXmB0Q4RVMXwYepXcJdZAl1XHF/KtdCuHHQyzx6WEIqkmJ?= =?utf-8?q?wwq2b8AbukVsIOE1nLbMK9gScIy8tCZDNt1Caq/JUjdXW6wP/XThCq3lNayJjltAp?= =?utf-8?q?aCK0l8h2WxNLEtsffBs3hv93E3ptChngKahG4Mw7VNe0imzj8GJOedGjzo5UqxjnX?= =?utf-8?q?p8gn3QjS33nnNANuak4nE52hGibImlvO/2O5vi0qob/APMCSIYYeKIPfepvleWEFN?= =?utf-8?q?U9LG+uGhcMXUdo2+uSZnB821Q9u9zm5dgTygUPo914BC+yqqHrX7MW09QP5jEJyKl?= =?utf-8?q?lVmJ309nXWyr?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2ee9d4ed-8f7f-4964-ae63-08db93f99cdf X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2023 08:14:09.2486 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: pwhtGE4/mj9gYfDT95XUyCGYV4Tp+dY0vw71N1T+AOw5ebtlQxNhPaZa7WV+1R5Xf9wcCRCIVsbzrv0Jm49NUg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7564 X-Spam-Status: No, score=-3027.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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: Jan Beulich via Gcc-patches From: Jan Beulich Reply-To: Jan Beulich Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" The attribute defaults to 1 for TI-mode insns of type sselog, sselog1, sseiadd, sseimul, and sseishft. In *v8hi3 [smaxmin] and *v16qi3 [umaxmin] also drop the similarly stray "prefix_extra" at this occasion. These two max/min flavors are encoded in 0f space. gcc/ * config/i386/mmx.md (*mmx_pinsrd): Drop "prefix_data16". (*mmx_pinsrb): Likewise. (*mmx_pextrb): Likewise. (*mmx_pextrb_zext): Likewise. (mmx_pshufbv8qi3): Likewise. (mmx_pshufbv4qi3): Likewise. (mmx_pswapdv2si2): Likewise. (*pinsrb): Likewise. (*pextrb): Likewise. (*pextrb_zext): Likewise. * config/i386/sse.md (*sse4_1_mulv2siv2di3): Likewise. (*sse2_eq3): Likewise. (*sse2_gt3): Likewise. (_pinsr): Likewise. (*vec_extract): Likewise. (*vec_extract_zext): Likewise. (*vec_extractv16qi_zext): Likewise. (ssse3_phwv8hi3): Likewise. (ssse3_pmaddubsw128): Likewise. (*_pmulhrsw3): Likewise. (_pshufb3): Likewise. (_psign3): Likewise. (_palignr): Likewise. (*abs2): Likewise. (sse4_2_pcmpestr): Likewise. (sse4_2_pcmpestri): Likewise. (sse4_2_pcmpestrm): Likewise. (sse4_2_pcmpestr_cconly): Likewise. (sse4_2_pcmpistr): Likewise. (sse4_2_pcmpistri): Likewise. (sse4_2_pcmpistrm): Likewise. (sse4_2_pcmpistr_cconly): Likewise. (vgf2p8affineinvqb_): Likewise. (vgf2p8affineqb_): Likewise. (vgf2p8mulb_): Likewise. (*v8hi3 [smaxmin]): Drop "prefix_data16" and "prefix_extra". (*v16qi3 [umaxmin]): Likewise. --- a/gcc/config/i386/mmx.md +++ b/gcc/config/i386/mmx.md @@ -3863,7 +3863,6 @@ } } [(set_attr "isa" "noavx,avx") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "type" "sselog") (set_attr "length_immediate" "1") @@ -3950,7 +3949,6 @@ } [(set_attr "isa" "noavx,avx") (set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "orig,vex") @@ -4002,7 +4000,6 @@ %vpextrb\t{%2, %1, %k0|%k0, %1, %2} %vpextrb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -4017,7 +4014,6 @@ "TARGET_SSE4_1 && TARGET_MMX_WITH_SSE" "%vpextrb\t{%2, %1, %k0|%k0, %1, %2}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -4035,7 +4031,6 @@ vpshufb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sselog1") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "btver2_decode" "vector") @@ -4053,7 +4048,6 @@ vpshufb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sselog1") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "btver2_decode" "vector") @@ -4191,7 +4185,6 @@ (set_attr "mmx_isa" "native,*") (set_attr "type" "mmxcvt,sselog1") (set_attr "prefix_extra" "1,*") - (set_attr "prefix_data16" "*,1") (set_attr "length_immediate" "*,1") (set_attr "mode" "DI,TI")]) @@ -4531,7 +4524,6 @@ } [(set_attr "isa" "noavx,avx") (set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "orig,vex") @@ -4575,7 +4567,6 @@ %vpextrb\t{%2, %1, %k0|%k0, %1, %2} %vpextrb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -4590,7 +4581,6 @@ "TARGET_SSE4_1" "%vpextrb\t{%2, %1, %k0|%k0, %1, %2}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -15614,7 +15614,6 @@ vpmuldq\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,noavx,avx") (set_attr "type" "sseimul") - (set_attr "prefix_data16" "1,1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,orig,vex") (set_attr "mode" "TI")]) @@ -16688,8 +16687,6 @@ vpw\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_data16" "1,*") - (set_attr "prefix_extra" "*,1") (set_attr "prefix" "orig,vex") (set_attr "mode" "TI")]) @@ -16772,8 +16769,6 @@ vpb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sseiadd") - (set_attr "prefix_data16" "1,*") - (set_attr "prefix_extra" "*,1") (set_attr "prefix" "orig,vex") (set_attr "mode" "TI")]) @@ -17001,7 +16996,6 @@ vpcmpeq\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "ssecmp") - (set_attr "prefix_data16" "1,*") (set_attr "prefix" "orig,vex") (set_attr "mode" "TI")]) @@ -17063,7 +17057,6 @@ vpcmpgt\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "ssecmp") - (set_attr "prefix_data16" "1,*") (set_attr "prefix" "orig,vex") (set_attr "mode" "TI")]) @@ -18819,12 +18812,6 @@ (match_test "GET_MODE_NUNITS (mode) == 2")) (const_string "1") (const_string "*"))) - (set (attr "prefix_data16") - (if_then_else - (and (not (match_test "TARGET_AVX")) - (match_test "GET_MODE_NUNITS (mode) == 8")) - (const_string "1") - (const_string "*"))) (set (attr "prefix_extra") (if_then_else (ior (eq_attr "prefix" "evex") @@ -19985,7 +19972,6 @@ %vpextr\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "*,sse4") (set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set (attr "prefix_extra") (if_then_else (eq (const_string "mode") (const_string "V8HImode")) @@ -20006,7 +19992,6 @@ "TARGET_SSE2" "%vpextr\t{%2, %1, %k0|%k0, %1, %2}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set (attr "prefix_extra") (if_then_else (eq (const_string "mode") (const_string "V8HImode")) @@ -20026,7 +20011,6 @@ "TARGET_SSE4_1" "%vpextrb\t{%2, %1, %k0|%k0, %1, %2}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -21240,7 +21224,6 @@ [(set_attr "isa" "noavx,avx") (set_attr "type" "sseiadd") (set_attr "atom_unit" "complex") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,vex") (set_attr "mode" "TI")]) @@ -21511,7 +21494,6 @@ [(set_attr "isa" "noavx,avx") (set_attr "type" "sseiadd") (set_attr "atom_unit" "simul") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,vex") (set_attr "mode" "TI")]) @@ -21639,7 +21621,6 @@ vpmulhrsw\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sseimul") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "mode" "")]) @@ -21763,7 +21744,6 @@ vpshufb\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sselog1") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "btver2_decode" "vector") @@ -21830,7 +21810,6 @@ vpsign\t{%2, %1, %0|%0, %1, %2}" [(set_attr "isa" "noavx,avx") (set_attr "type" "sselog1") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,vex") (set_attr "mode" "")]) @@ -21898,7 +21877,6 @@ [(set_attr "isa" "noavx,avx") (set_attr "type" "sseishft") (set_attr "atom_unit" "sishuf") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "orig,vex") @@ -21992,7 +21970,6 @@ "TARGET_SSSE3" "%vpabs\t{%1, %0|%0, %1}" [(set_attr "type" "sselog1") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "prefix" "maybe_vex") (set_attr "mode" "")]) @@ -24244,7 +24221,6 @@ DONE; } [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load") @@ -24270,7 +24246,6 @@ "TARGET_SSE4_2" "%vpcmpestri\t{%5, %3, %1|%1, %3, %5}" [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "prefix" "maybe_vex") (set_attr "length_immediate" "1") @@ -24298,7 +24273,6 @@ "TARGET_SSE4_2" "%vpcmpestrm\t{%5, %3, %1|%1, %3, %5}" [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -24324,7 +24298,6 @@ %vpcmpestri\t{%6, %4, %2|%2, %4, %6} %vpcmpestri\t{%6, %4, %2|%2, %4, %6}" [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load,none,load") @@ -24379,7 +24352,6 @@ DONE; } [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load") @@ -24401,7 +24373,6 @@ "TARGET_SSE4_2" "%vpcmpistri\t{%3, %2, %1|%1, %2, %3}" [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -24425,7 +24396,6 @@ "TARGET_SSE4_2" "%vpcmpistrm\t{%3, %2, %1|%1, %2, %3}" [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "prefix" "maybe_vex") @@ -24449,7 +24419,6 @@ %vpcmpistri\t{%4, %3, %2|%2, %3, %4} %vpcmpistri\t{%4, %3, %2|%2, %3, %4}" [(set_attr "type" "sselog") - (set_attr "prefix_data16" "1") (set_attr "prefix_extra" "1") (set_attr "length_immediate" "1") (set_attr "memory" "none,load,none,load") @@ -29268,7 +29237,6 @@ gf2p8affineinvqb\t{%3, %2, %0| %0, %2, %3} vgf2p8affineinvqb\t{%3, %2, %1, %0| %0, %1, %2, %3}" [(set_attr "isa" "noavx,avx") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "mode" "")]) @@ -29285,7 +29253,6 @@ gf2p8affineqb\t{%3, %2, %0| %0, %2, %3} vgf2p8affineqb\t{%3, %2, %1, %0| %0, %1, %2, %3}" [(set_attr "isa" "noavx,avx") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "mode" "")]) @@ -29301,7 +29268,6 @@ gf2p8mulb\t{%2, %0| %0, %2} vgf2p8mulb\t{%2, %1, %0| %0, %1, %2}" [(set_attr "isa" "noavx,avx") - (set_attr "prefix_data16" "1,*") (set_attr "prefix_extra" "1") (set_attr "prefix" "orig,maybe_evex") (set_attr "mode" "")])