From patchwork Fri Apr 21 10:16:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 86222 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp958684vqo; Fri, 21 Apr 2023 03:17:23 -0700 (PDT) X-Google-Smtp-Source: AKy350ZKCRRyaou7iaA6sybSiFjEp55Bxd1+gTT860z6PqqgQwZzoVNzV1Llf+GryI4tfig20cTB X-Received: by 2002:aa7:da0f:0:b0:508:14f2:399c with SMTP id r15-20020aa7da0f000000b0050814f2399cmr4705729eds.10.1682072243617; Fri, 21 Apr 2023 03:17:23 -0700 (PDT) Received: from sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id v5-20020aa7dbc5000000b0050676bdb6e9si3087550edt.468.2023.04.21.03.17.22 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Apr 2023 03:17:23 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=LxY0VLby; arc=fail (signature failed); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 66BB23857017 for ; Fri, 21 Apr 2023 10:17:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 66BB23857017 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1682072234; bh=1KS+Krl1bxcG9f2kYDTyEpt51avJtvJqx/hFsR9yiS0=; 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=LxY0VLbyvXabvAvlolxFeUghttuJd6sFvwlRducDjoE1M3sJfsbVIUIhq8bPY517J Bbf9NzG5qK9yrmZ6TcgwS5eg8uqGerIeBqDz2fwEDedbRIvOQxhWTZtR8ITBiua42h eArOHmU65ybPNEw3sXbgU5NH1cHB5ORs1zsY5xc4= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2080.outbound.protection.outlook.com [40.107.14.80]) by sourceware.org (Postfix) with ESMTPS id 9A8063857012 for ; Fri, 21 Apr 2023 10:17:03 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9A8063857012 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PMjM2lO13vYF2ojK8MzmWtGXG6crhz5t2WPeVbi5UnVBcUjAp4Dze98B5R17UeKKiJG1yj6deGsVgWqny5Xrl1w52zmUsivivNis/p+ITCu1laeTh8xl8iomD9yrVld7/okTvfD2xYQxuLPHJn1TecYy+DPkml+F/cDy5NworgM7/VLzB6JYXb5obaBxArm7hck5x3OvUfRSVOyROIuhuIUr3QF4iCA9U1GS1LjyNWVrKjWjOqkd9+6lVmvc5zCBkwYEODkFxAs1mh5zj9b8AUZ8XdyVvWIk0JWX297vY9njaSP7t4u7lYx/RayorDclxsENyMmOOUn/ZSR2pi0aFQ== 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=1KS+Krl1bxcG9f2kYDTyEpt51avJtvJqx/hFsR9yiS0=; b=Cb+lKqA2BIivhSdYq9nGBh6ACmtd4M0tUkHEHLr0vpQNI9TXc8ax5Yn2YjIX/MQiGB8YtexHz7YUfsKHbK0FsCsiWZzmed6Xx5bsxFyjl1A2DnMPUeYHecSPS1wQ6N/9wdxHh9IgUZZ/CPxaTtm+pxKwMVunVSdpaKguxUyoAtwdg1zV/pDMoTKjGILO0yieglPwPLATJwSW6QX/lG7q+uzeGEZyTFn0wLHDmmhSP2TCwGZUK/NGrQ9WG6cYUjeyhAg1IotguhgHt1Z3n+a/xA0ezoktL4CIAob5Xbgs4iW7/kvay2Z/IxShyebIoWHoqCHa0Z0UOzVtaKaXsTJXuw== 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 VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM8PR04MB7777.eurprd04.prod.outlook.com (2603:10a6:20b:236::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.22; Fri, 21 Apr 2023 10:17:01 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::52b2:f58:e19:56ae]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::52b2:f58:e19:56ae%2]) with mapi id 15.20.6319.022; Fri, 21 Apr 2023 10:17:01 +0000 Message-ID: <657c81bd-2182-c663-04a4-c5e6962531ea@suse.com> Date: Fri, 21 Apr 2023 12:16:59 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: [PATCH 2/2] x86: rework AMX control insn disassembly Content-Language: en-US To: Binutils Cc: "H.J. Lu" References: <35d21b28-c824-9789-cb51-50f8af13fdac@suse.com> In-Reply-To: <35d21b28-c824-9789-cb51-50f8af13fdac@suse.com> X-ClientProxiedBy: FR2P281CA0012.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::22) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM8PR04MB7777:EE_ X-MS-Office365-Filtering-Correlation-Id: 13b38ff1-f77e-4862-aea4-08db42518bf2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: d+Syop3rKAjSS8Ftz704NSguydLjmxPRL3ZsylSZijp7xQG2HJt4ke7n4lHz4h8xXN2mZ2PmLFeoSx8+DNGrgPdtYFaWKpjRTFZ1EkBKei0F4GESN6NFzTn4F3ewW5mmeyavimLEJduiarCOR/7Y2AOS5ETVRt+hsft2WmbFp7XxQKfI+5uztR3pRE6oRtBM6oNuBYTuEqP739iLBnlLQlb6YIyhdW4Oxl1OzGx+9kCEeCTNR0Z9NCdjE25VDvgpNfTvDNCdUW5kz5G3X1Rf9b2HF/YhIUA/5AR7hqZCqMghLqjlUEzQ6Lkzw3JRSwpdutGJlg7qLtD5g/7/7Dj2fPzqqTJ7Bk96UeHGaDH9cQ7Lujh641wpjoscYA2p8oXM9QOS4FzxHW8yRoMpnqp197UBzXU6VoJnRPmyrtIOUMMJxAL1zYeE7VJvqs6YGpOq1xfJqCMavypFdZ0kcnBVV4M2YTtdrr9MnkIYRIiqmIcktXt9XZdKw7CPusepQKFzZc8VFGD4/YLtxGO+P2yd+B3YwpOphMa/Lqjggg5v//8RY/pJbaEeKG0sU2VowAh4sRjmi9jbwoUvPtBSUjkZ0bPf2bWpbPXKJYylzz/wODR7IIrmSaJ4Te/ozQJm9AhB3UfpnOmqYeZybagOd4glCA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VE1PR04MB6560.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(396003)(346002)(39860400002)(366004)(376002)(136003)(451199021)(36756003)(8936002)(8676002)(6486002)(6506007)(6512007)(26005)(186003)(31696002)(31686004)(86362001)(38100700002)(2616005)(6916009)(316002)(2906002)(4326008)(66946007)(66556008)(41300700001)(478600001)(5660300002)(66476007)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?8/KfVBwC/wPC3NTmH0zV6LTLa4Mg?= =?utf-8?q?gzIqJ3v+o4EDHXJT/kkmBDDj6uABeFOjIErHz/Wtg6+yJdIXy0GoOsxwvFsi5DdHl?= =?utf-8?q?HXDVw6xc+r4usiwkz3jEn/1YTJjlfz2iWvUWlDthllT0m7mcat/Wnw7ytreidibaf?= =?utf-8?q?vwfod5lMZBcnkdl5qtoYFW+2oDjSczFMwlaWu0gHiH1i91df2dwunbsr/S+o9amIZ?= =?utf-8?q?G0Flw0Kw+X78Nsq9fQYqoryrNB9XOcmmnxqp044BW7Q36AOhSAR9i70nBl0C3ofGa?= =?utf-8?q?ttNLMiFVnfRTL76mGnKSQ+If6CDLGyfOVuwNDCTJnJe614oGW3SyLayN0bZmyTu+G?= =?utf-8?q?D4ykElvUMyuB3K51+tiLeWBpskiOjFtu4MyuO2zQ+WpoFVw6xqiuDi5LmPn4aiz3h?= =?utf-8?q?kH1h1dL4TtZfqIdDvoxvAMNyB7s6mmIGOOJ0XxfDKsll41Hok7JfWjcj7QG2267eT?= =?utf-8?q?3fvioAc4IBw3OhqZDYC1wgYvMqm4qF0Y4DYuEnlLXpkcpGKUhDtSgxgPE/aJcrJhy?= =?utf-8?q?sTXmj8Av6fhc8IKIhRsMaec0kq57+XK/ij6VkWV2L1KqFxkss5LGbyiycaEit8sLg?= =?utf-8?q?40TEUD9Dba49ui2GLNrx14mKlwa2bvNqgMYb61gEAu3EgiW2idnHD9adCjx+w1C/5?= =?utf-8?q?Nrzg7t/ESaXmZtqXAvZ8bvmHiR7nVoLLB5d05hlh+F/A0BLTsYA1TAkGVwwU7lTLo?= =?utf-8?q?VBnetGQ5OdxMnUp6YJosBD5pz2AbqI3mMEcGJWAzQ+jpZhU3dZv8yJPCfkJ3EmRu4?= =?utf-8?q?1+jPDUZSfc9VSk8TXplt/j7M0EIbdpMtogybR441Imo1xoYhxugDIwbB2wuvPmm21?= =?utf-8?q?Ot1K1ANW2VT2n3u2glQRW7Az4t/xeiFK5DTixO/fysh7la/5VJQ0kQdMSndTGwPyO?= =?utf-8?q?fkHkZQpBh4b07W4ijpHMT5trXCg8X5tRbZqO7V1wHfZ2ruRO0ZLGwqWLMCaQJOHce?= =?utf-8?q?PZyeyQMQy8OImzBrwj9G4Ix+FReEebEmuS6bYDjNtdtRXMUqIhFJ2nStk81vhz+hr?= =?utf-8?q?n7t56oM/qJ8jHHrLgqeK1L8R1lxv5cR78VN9qwOZ8RTw9s8S/1waTRPcbWbnoI7Xb?= =?utf-8?q?FWzfGy5RT5ov7ucCPCZ9qY9va0+6iv4xpGdT8aJJJomz+RYsJ6ypnptbJxtldkJUh?= =?utf-8?q?gtuk5liQUVchyFA1g90RNM6sRC+Ve9tKsXN6yJOqD+li2o9jnV8vVRS9RSnN+nxKk?= =?utf-8?q?wOzQRC0TcOtgkUdb2JrS2SfhGlB8VRgLCwvB20wKK9GpbkQuNAC9kXwEBfTM+q01d?= =?utf-8?q?lMysfmGlMUesq+rBWhC9kdEohBrRTiqdC2SgM0m27wGerm4tE+/UMWMiOgj3Gad0Q?= =?utf-8?q?AD9ouUXJyOCEIakFhJhNI2OCJ+o2J6y6l82a2cqeTWuDgDxQW16EZt+sAnGT4ueoN?= =?utf-8?q?Y5GdnqZakk7hUMwSjFQrjG+Iy+jO49YabhRb/ux88NuF2lYeWgMD4kQI6jI7l7uFg?= =?utf-8?q?TGIfDCLM6vKg0x/VS4DKGSptJBQ0Udlb1cQVcc4bvjCP8bW7AFkUSdWcnHLJEvjYh?= =?utf-8?q?0s4St22sRK4f?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 13b38ff1-f77e-4862-aea4-08db42518bf2 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2023 10:17:01.2368 (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: Ucle5OZpQomYbcyS8d76c1sw4RnjEFjMsQ+KpQFidzQhucTVGr+WW6MqneCid7/UigycEGaL01CvEbswGgZawg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7777 X-Spam-Status: No, score=-3028.0 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: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Jan Beulich via Binutils From: Jan Beulich Reply-To: Jan Beulich Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1763780584513576277?= X-GMAIL-MSGID: =?utf-8?q?1763780584513576277?= Consistently do 64-bit first, VEX.L second, VEX.W third, ModR/M fourth, and only then prefix, resulting in fewer table entries. Note that in the course of the re-work - TILEZERO has a previously missing decode step through rm_table[] added, - a wrong M_0 suffix for TILEZERO is also corrected to be M_1 (now an infix). --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -841,7 +841,7 @@ enum REG_VEX_0F72_M_0, REG_VEX_0F73_M_0, REG_VEX_0FAE, - REG_VEX_0F3849_X86_64_P_0_W_0_M_1, + REG_VEX_0F3849_X86_64_L_0_W_0_M_1_P_0, REG_VEX_0F38F3_L_0, REG_XOP_09_01_L_0, @@ -969,12 +969,8 @@ enum MOD_VEX_0F382D, MOD_VEX_0F382E, MOD_VEX_0F382F, - MOD_VEX_0F3849_X86_64_P_0_W_0, - MOD_VEX_0F3849_X86_64_P_2_W_0, - MOD_VEX_0F3849_X86_64_P_3_W_0, - MOD_VEX_0F384B_X86_64_P_1_W_0, - MOD_VEX_0F384B_X86_64_P_2_W_0, - MOD_VEX_0F384B_X86_64_P_3_W_0, + MOD_VEX_0F3849_X86_64_L_0_W_0, + MOD_VEX_0F384B_X86_64_L_0_W_0, MOD_VEX_0F385A, MOD_VEX_0F385C_X86_64, MOD_VEX_0F385E_X86_64, @@ -1018,7 +1014,8 @@ enum RM_0FAE_REG_7_MOD_3, RM_0F3A0F_P_1_MOD_3_REG_0, - RM_VEX_0F3849_X86_64_P_0_W_0_M_1_R_0 + RM_VEX_0F3849_X86_64_L_0_W_0_M_1_P_0_R_0, + RM_VEX_0F3849_X86_64_L_0_W_0_M_1_P_3, }; enum @@ -1175,8 +1172,9 @@ enum PREFIX_VEX_0FD0, PREFIX_VEX_0FE6, PREFIX_VEX_0FF0, - PREFIX_VEX_0F3849_X86_64, - PREFIX_VEX_0F384B_X86_64, + PREFIX_VEX_0F3849_X86_64_L_0_W_0_M_0, + PREFIX_VEX_0F3849_X86_64_L_0_W_0_M_1, + PREFIX_VEX_0F384B_X86_64_L_0_W_0_M_0, PREFIX_VEX_0F3850_W_0, PREFIX_VEX_0F3851_W_0, PREFIX_VEX_0F385C_X86_64_M_1_L_0_W_0, @@ -1422,13 +1420,8 @@ enum VEX_LEN_0F381A_M_0, VEX_LEN_0F3836, VEX_LEN_0F3841, - VEX_LEN_0F3849_X86_64_P_0_W_0_M_0, - VEX_LEN_0F3849_X86_64_P_0_W_0_M_1_REG_0_RM_0, - VEX_LEN_0F3849_X86_64_P_2_W_0_M_0, - VEX_LEN_0F3849_X86_64_P_3_W_0_M_0, - VEX_LEN_0F384B_X86_64_P_1_W_0_M_0, - VEX_LEN_0F384B_X86_64_P_2_W_0_M_0, - VEX_LEN_0F384B_X86_64_P_3_W_0_M_0, + VEX_LEN_0F3849_X86_64, + VEX_LEN_0F384B_X86_64, VEX_LEN_0F385A_M_0, VEX_LEN_0F385C_X86_64_M_1, VEX_LEN_0F385E_X86_64_M_1, @@ -1581,12 +1574,8 @@ enum VEX_W_0F382F_M_0, VEX_W_0F3836, VEX_W_0F3846, - VEX_W_0F3849_X86_64_P_0, - VEX_W_0F3849_X86_64_P_2, - VEX_W_0F3849_X86_64_P_3, - VEX_W_0F384B_X86_64_P_1, - VEX_W_0F384B_X86_64_P_2, - VEX_W_0F384B_X86_64_P_3, + VEX_W_0F3849_X86_64_L_0, + VEX_W_0F384B_X86_64_L_0, VEX_W_0F3850, VEX_W_0F3851, VEX_W_0F3852, @@ -2948,9 +2937,9 @@ static const struct dis386 reg_table[][8 { MOD_TABLE (MOD_VEX_0FAE_REG_2) }, { MOD_TABLE (MOD_VEX_0FAE_REG_3) }, }, - /* REG_VEX_0F3849_X86_64_P_0_W_0_M_1 */ + /* REG_VEX_0F3849_X86_64_L_0_W_0_M_1_P_0 */ { - { RM_TABLE (RM_VEX_0F3849_X86_64_P_0_W_0_M_1_R_0) }, + { RM_TABLE (RM_VEX_0F3849_X86_64_L_0_W_0_M_1_P_0_R_0) }, }, /* REG_VEX_0F38F3_L_0 */ { @@ -4104,20 +4093,27 @@ static const struct dis386 prefix_table[ { MOD_TABLE (MOD_VEX_0FF0_PREFIX_3) }, }, - /* PREFIX_VEX_0F3849_X86_64 */ + /* PREFIX_VEX_0F3849_X86_64_L_0_W_0_M_0 */ { - { VEX_W_TABLE (VEX_W_0F3849_X86_64_P_0) }, + { "ldtilecfg", { M }, 0 }, { Bad_Opcode }, - { VEX_W_TABLE (VEX_W_0F3849_X86_64_P_2) }, - { VEX_W_TABLE (VEX_W_0F3849_X86_64_P_3) }, + { "sttilecfg", { M }, 0 }, }, - /* PREFIX_VEX_0F384B_X86_64 */ + /* PREFIX_VEX_0F3849_X86_64_L_0_W_0_M_1 */ { + { REG_TABLE (REG_VEX_0F3849_X86_64_L_0_W_0_M_1_P_0) }, + { Bad_Opcode }, { Bad_Opcode }, - { VEX_W_TABLE (VEX_W_0F384B_X86_64_P_1) }, - { VEX_W_TABLE (VEX_W_0F384B_X86_64_P_2) }, - { VEX_W_TABLE (VEX_W_0F384B_X86_64_P_3) }, + { RM_TABLE (RM_VEX_0F3849_X86_64_L_0_W_0_M_1_P_3) }, + }, + + /* PREFIX_VEX_0F384B_X86_64_L_0_W_0_M_0 */ + { + { Bad_Opcode }, + { "tilestored", { MVexSIBMEM, TMM }, 0 }, + { "tileloaddt1", { TMM, MVexSIBMEM }, 0 }, + { "tileloadd", { TMM, MVexSIBMEM }, 0 }, }, /* PREFIX_VEX_0F3850_W_0 */ @@ -4504,13 +4500,13 @@ static const struct dis386 x86_64_table[ /* X86_64_VEX_0F3849 */ { { Bad_Opcode }, - { PREFIX_TABLE (PREFIX_VEX_0F3849_X86_64) }, + { VEX_LEN_TABLE (VEX_LEN_0F3849_X86_64) }, }, /* X86_64_VEX_0F384B */ { { Bad_Opcode }, - { PREFIX_TABLE (PREFIX_VEX_0F384B_X86_64) }, + { VEX_LEN_TABLE (VEX_LEN_0F384B_X86_64) }, }, /* X86_64_VEX_0F385C */ @@ -7156,38 +7152,14 @@ static const struct dis386 vex_len_table { "vphminposuw", { XM, EXx }, PREFIX_DATA }, }, - /* VEX_LEN_0F3849_X86_64_P_0_W_0_M_0 */ - { - { "ldtilecfg", { M }, 0 }, - }, - - /* VEX_LEN_0F3849_X86_64_P_0_W_0_M_1_REG_0_RM_0 */ - { - { "tilerelease", { Skip_MODRM }, 0 }, - }, - - /* VEX_LEN_0F3849_X86_64_P_2_W_0_M_0 */ - { - { "sttilecfg", { M }, 0 }, - }, - - /* VEX_LEN_0F3849_X86_64_P_3_W_0_M_0 */ - { - { "tilezero", { TMM, Skip_MODRM }, 0 }, - }, - - /* VEX_LEN_0F384B_X86_64_P_1_W_0_M_0 */ + /* VEX_LEN_0F3849_X86_64 */ { - { "tilestored", { MVexSIBMEM, TMM }, 0 }, - }, - /* VEX_LEN_0F384B_X86_64_P_2_W_0_M_0 */ - { - { "tileloaddt1", { TMM, MVexSIBMEM }, 0 }, + { VEX_W_TABLE (VEX_W_0F3849_X86_64_L_0) }, }, - /* VEX_LEN_0F384B_X86_64_P_3_W_0_M_0 */ + /* VEX_LEN_0F384B_X86_64 */ { - { "tileloadd", { TMM, MVexSIBMEM }, 0 }, + { VEX_W_TABLE (VEX_W_0F384B_X86_64_L_0) }, }, /* VEX_LEN_0F385A_M_0 */ @@ -7804,28 +7776,12 @@ static const struct dis386 vex_w_table[] { "vpsravd", { XM, Vex, EXx }, PREFIX_DATA }, }, { - /* VEX_W_0F3849_X86_64_P_0 */ - { MOD_TABLE (MOD_VEX_0F3849_X86_64_P_0_W_0) }, - }, - { - /* VEX_W_0F3849_X86_64_P_2 */ - { MOD_TABLE (MOD_VEX_0F3849_X86_64_P_2_W_0) }, - }, - { - /* VEX_W_0F3849_X86_64_P_3 */ - { MOD_TABLE (MOD_VEX_0F3849_X86_64_P_3_W_0) }, + /* VEX_W_0F3849_X86_64_L_0 */ + { MOD_TABLE (MOD_VEX_0F3849_X86_64_L_0_W_0) }, }, { - /* VEX_W_0F384B_X86_64_P_1 */ - { MOD_TABLE (MOD_VEX_0F384B_X86_64_P_1_W_0) }, - }, - { - /* VEX_W_0F384B_X86_64_P_2 */ - { MOD_TABLE (MOD_VEX_0F384B_X86_64_P_2_W_0) }, - }, - { - /* VEX_W_0F384B_X86_64_P_3 */ - { MOD_TABLE (MOD_VEX_0F384B_X86_64_P_3_W_0) }, + /* VEX_W_0F384B_X86_64_L_0 */ + { MOD_TABLE (MOD_VEX_0F384B_X86_64_L_0_W_0) }, }, { /* VEX_W_0F3850 */ @@ -8655,30 +8611,13 @@ static const struct dis386 mod_table[][2 { VEX_W_TABLE (VEX_W_0F382F_M_0) }, }, { - /* MOD_VEX_0F3849_X86_64_P_0_W_0 */ - { VEX_LEN_TABLE (VEX_LEN_0F3849_X86_64_P_0_W_0_M_0) }, - { REG_TABLE (REG_VEX_0F3849_X86_64_P_0_W_0_M_1) }, + /* MOD_VEX_0F3849_X86_64_L_0_W_0 */ + { PREFIX_TABLE (PREFIX_VEX_0F3849_X86_64_L_0_W_0_M_0) }, + { PREFIX_TABLE (PREFIX_VEX_0F3849_X86_64_L_0_W_0_M_1) }, }, { - /* MOD_VEX_0F3849_X86_64_P_2_W_0 */ - { VEX_LEN_TABLE (VEX_LEN_0F3849_X86_64_P_2_W_0_M_0) }, - }, - { - /* MOD_VEX_0F3849_X86_64_P_3_W_0 */ - { Bad_Opcode }, - { VEX_LEN_TABLE (VEX_LEN_0F3849_X86_64_P_3_W_0_M_0) }, - }, - { - /* MOD_VEX_0F384B_X86_64_P_1_W_0 */ - { VEX_LEN_TABLE (VEX_LEN_0F384B_X86_64_P_1_W_0_M_0) }, - }, - { - /* MOD_VEX_0F384B_X86_64_P_2_W_0 */ - { VEX_LEN_TABLE (VEX_LEN_0F384B_X86_64_P_2_W_0_M_0) }, - }, - { - /* MOD_VEX_0F384B_X86_64_P_3_W_0 */ - { VEX_LEN_TABLE (VEX_LEN_0F384B_X86_64_P_3_W_0_M_0) }, + /* MOD_VEX_0F384B_X86_64_L_0_W_0 */ + { PREFIX_TABLE (PREFIX_VEX_0F384B_X86_64_L_0_W_0_M_0) }, }, { /* MOD_VEX_0F385A */ @@ -8834,8 +8773,12 @@ static const struct dis386 rm_table[][8] { "hreset", { Skip_MODRM, Ib }, 0 }, }, { - /* RM_VEX_0F3849_X86_64_P_0_W_0_M_1_R_0 */ - { VEX_LEN_TABLE (VEX_LEN_0F3849_X86_64_P_0_W_0_M_1_REG_0_RM_0) }, + /* RM_VEX_0F3849_X86_64_L_0_W_0_M_1_P_0_R_0 */ + { "tilerelease", { Skip_MODRM }, 0 }, + }, + { + /* RM_VEX_0F3849_X86_64_L_0_W_0_M_1_P_3 */ + { "tilezero", { TMM, Skip_MODRM }, 0 }, }, };