From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qv1-xf29.google.com (mail-qv1-xf29.google.com [IPv6:2607:f8b0:4864:20::f29]) by sourceware.org (Postfix) with ESMTPS id 74FB63858C55 for ; Fri, 14 Oct 2022 17:30:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 74FB63858C55 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-qv1-xf29.google.com with SMTP id y10so3654343qvo.11 for ; Fri, 14 Oct 2022 10:30:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=qZW7srD5N9w+fPYLOg5G7Y0tLLZicclLwxZJtio0KHE=; b=qECiaQWIxm0k/pDZW+8cWAsEKFb+3utr6TntxdIk6ujpxHBnINEGhrWfWSaIemUQAY 1IqE/pZj5MhvkNOES54ty7DpxV2uU30HhqcRFv4twzNADRqLVto77pwqq5C8CVHiYZkE +RB/T5qslKsvyhVkHuCEDqXFG0NFJA3jNlgv6jPnOMoW8w0ViMgp7hX5bg/q7wie+3VV AxnRb/4PhIGI+iHMW1XSmmZECUiOeu+Bc3q65mzpEPPi8b/HFNMahtluCxWwRb9XkA94 FC+F4ApbsapBW1sbESfMH/QgOQCw/yILI10oUac2avVV22UVf0+PZEtU04e+/sNDtwsp VlRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qZW7srD5N9w+fPYLOg5G7Y0tLLZicclLwxZJtio0KHE=; b=A/dC8Bcx7XNnN86FI2weUcmZxj9SrDtz1OdVENZkKhYxYUd2LgTvgWDE1GDkz1cdk8 Zde5TO9/G1yV7+mKUgXpE54lnTPhCmaY+wqJqqg4eTABzp4kr7Urmx3cFvxh+HjW67U/ R5jIM1Jm4utOh3ouijOO6PhKFaDMBN03uXAzuRjKQ2KMwtPwho4MbnSlW1Q8zDFrD8gi v7k71ljzu5oy446vwFuy/ZEUyXDTEVh8TRSeZw9M769R3T3lzY617qNnbQNTzp9R/DS7 uTPZxka9s9fkMMHoV1BG3Yb+tDmJQdlciQgpFMtNguLeAMfg2g7ANJ8J1PEFG6bTdQCy Hn7Q== X-Gm-Message-State: ACrzQf0mxDss0gzyF3qgOy1OKcICma9QEykjqOuy09DGR8DNhMwBByAb C9dVbgP8Gov1O8yjk0eZSQoa4Scll4gK/sf5CiQ= X-Google-Smtp-Source: AMsMyM4yjdMFsF0BGQNJBtNknJCY7BnDjID0aA9qjUi0LT6wp/bVFhjQHoIu++3jKpaMZqEBzvITb+ZEeel9HlqKYMc= X-Received: by 2002:ad4:4ee4:0:b0:4b1:d60b:c830 with SMTP id dv4-20020ad44ee4000000b004b1d60bc830mr5110379qvb.84.1665768626761; Fri, 14 Oct 2022 10:30:26 -0700 (PDT) MIME-Version: 1.0 References: <9fd2c88d-98b2-99a4-419f-c7235b2cf960@suse.com> In-Reply-To: <9fd2c88d-98b2-99a4-419f-c7235b2cf960@suse.com> From: "H.J. Lu" Date: Fri, 14 Oct 2022 10:29:50 -0700 Message-ID: Subject: Re: [PATCH] x86: properly decode EVEX.W for AVX512_4{FMAPS,VNNIW} insns To: Jan Beulich Cc: Binutils Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-3017.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Fri, Oct 14, 2022 at 7:11 AM Jan Beulich wrote: > > These require EVEX.W=0. Use %XS to facilitate the checking, even if for > the AVX512_4VNNIW ones this is kind of an abuse (as 's' there stands for > "signed", not "single"). > > While there also correct the 3rd operand for the AVX512_4VNNIW entries: > Only the memory form is allowed (just like for AVX512_4FMAPS, where the > correct type is already in use). > --- > This goes on top of "x86: fold AVX512-VNNI disassembler entries with > AVX-VNNI ones", submitted earlier today. > > --- a/opcodes/i386-dis-evex-prefix.h > +++ b/opcodes/i386-dis-evex-prefix.h > @@ -234,14 +234,14 @@ > { Bad_Opcode }, > { "vdpbf16p%XS", { XM, Vex, EXx }, 0 }, > { VEX_W_TABLE (VEX_W_0F3852) }, > - { "vp4dpwssd", { XM, Vex, EXxmm }, 0 }, > + { "vp4dpws%XSd", { XM, Vex, Mxmm }, 0 }, > }, > /* PREFIX_EVEX_0F3853 */ > { > { Bad_Opcode }, > { Bad_Opcode }, > { VEX_W_TABLE (VEX_W_0F3853) }, > - { "vp4dpwssds", { XM, Vex, EXxmm }, 0 }, > + { "vp4dpws%XSds", { XM, Vex, Mxmm }, 0 }, > }, > /* PREFIX_EVEX_0F3868 */ > { > @@ -262,28 +262,28 @@ > { Bad_Opcode }, > { Bad_Opcode }, > { "vfmsub132p%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, > - { "v4fmaddps", { XM, Vex, Mxmm }, 0 }, > + { "v4fmaddp%XS", { XM, Vex, Mxmm }, 0 }, > }, > /* PREFIX_EVEX_0F389B */ > { > { Bad_Opcode }, > { Bad_Opcode }, > { "vfmsub132s%XW", { XMScalar, VexScalar, EXdq, EXxEVexR }, 0 }, > - { "v4fmaddss", { XMScalar, VexScalar, Mxmm }, 0 }, > + { "v4fmadds%XS", { XMScalar, VexScalar, Mxmm }, 0 }, > }, > /* PREFIX_EVEX_0F38AA */ > { > { Bad_Opcode }, > { Bad_Opcode }, > { "vfmsub213p%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, > - { "v4fnmaddps", { XM, Vex, Mxmm }, 0 }, > + { "v4fnmaddp%XS", { XM, Vex, Mxmm }, 0 }, > }, > /* PREFIX_EVEX_0F38AB */ > { > { Bad_Opcode }, > { Bad_Opcode }, > { "vfmsub213s%XW", { XMScalar, VexScalar, EXdq, EXxEVexR }, 0 }, > - { "v4fnmaddss", { XMScalar, VexScalar, Mxmm }, 0 }, > + { "v4fnmadds%XS", { XMScalar, VexScalar, Mxmm }, 0 }, > }, > /* PREFIX_EVEX_0F3A08 */ > { OK. Thanks. -- H.J.