From patchwork Tue Sep 19 15:45:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 76395 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id CA71E3856944 for ; Tue, 19 Sep 2023 15:45:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CA71E3856944 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1695138337; bh=URz59eXzeF5Oh7GUg5ygG6DZNsYgIwTLhfuvLG1DdlQ=; 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=G2u3GKtpJABAZQjgDTwHeY0l1hq2KFqO35zPvIi4BPytG8NwQ+z22UkGsXimgWVEi IIF1IGxypQzf0T8/snvSXBXbJnw+r1iKXlUuwVfOmcJvjLhqD+Vi75abdNukHTM4so FYA4XADysfUTYBVPJBXiYDlSYepMviUfv8s1Of2g= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2088.outbound.protection.outlook.com [40.107.247.88]) by sourceware.org (Postfix) with ESMTPS id 341843858031 for ; Tue, 19 Sep 2023 15:45:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 341843858031 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CBX6EjIPmN7wat8i3An+fjF123ltBoRhj5Mce8ovxzzp/LdlrwlmrXJRbRgdftg4pwkLKZdQsPQ7sW8L4eO8v/ehuoXZSdpE3rwKQ/dWkSUcp5QOMyprSJTbngmSSuR8Fj6/XQIRXSY2OabUK9FvG8qLclT7BAWs4u+EMcXWm1j3ybfnTiBioW2eVh1tS6Vt8tDGlnVxiZzg3yw/bf4fjnAQPvZ1Qg046ATJMV1yJra6pkypo+fNdiqOrkCav0L4lzcGB/VGs3oOf3WFqLvbYntj3T0nUQTwyjXajUmjMziWU3vAvjP27FXQkITHARafOmCbYxzkDM4h2d0fAUIO5A== 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=URz59eXzeF5Oh7GUg5ygG6DZNsYgIwTLhfuvLG1DdlQ=; b=Zij1fqVQl4o7C8EohwEGkiQtb4GxiTe2v9gIb1K3bb9drsStB63mglEqbgO5CrKZCP80XABlwXKL/VIX6fDBSHfl+KpT2r+ptVoBxilTsGUkqSIytpvqgEgXwYGRuYzS2mgEtbWwyrKpeGgb2gEa0CAiMtlZlcvGWUsJipOiLjWZGGF1HCSjo14BQqGuUnU0JqWsMacjU8VQtSpMZ2Wc4v21+KD7JYdPzc+u/Icz6Ycvax56nXPMbMc7XC/ILLMGrp5yhUvR1t6A8pECjfrXAMImi0FjhAFGcxL2f9OKWnBOA0cvOsn6fquBUCPbVwzjDVipy4ViPZhmvgU6rYJyLg== 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 AM9PR04MB8194.eurprd04.prod.outlook.com (2603:10a6:20b:3e6::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep 2023 15:45:04 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023 15:45:04 +0000 Message-ID: Date: Tue, 19 Sep 2023 17:45:02 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 Subject: [PATCH v2 2/4] x86: fold VAES/VPCLMULQDQ VEX and EVEX templates Content-Language: en-US To: Binutils Cc: "H.J. Lu" References: In-Reply-To: X-ClientProxiedBy: FR0P281CA0039.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::22) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8194:EE_ X-MS-Office365-Filtering-Correlation-Id: 5ec2540c-3bf1-47fb-5d9d-08dbb927643a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ugHDKHE1LepOPC+jPyA/hcswarw+lIiogb3mToRnqOl5qAg/paZblRPj5EeYLW+K+ZlNXEH9jmoxVJGrRJ6jeLKgLVZnxMcfHsQTtL+c0+tzEwv0rouIV9GpY92FNWPXeQgxnN1b+IJVGVRKpX6IyAvlLJJSqI8/5ldQNYsktRQ/4QRPJl4O7nrYZmN1H28p6Itx9sQ26AwAkwoAakZ6mPEmghBRyNy9WZgckhvEt9oTIGroTE8yT6IVpFa4Xkk64zJUQSAKVBFOFzFFiQzRc9FyI8mAy1b+E76Kp605ucOCX5HubU27K8I8QHrK8CueMXYImtM82lRFNgSli1nCjzSu+lnVU6GZKFWBSeEEM/4M8kT1RApR3FIvvuBgY2pbYofy9VywpxBkP5G8WCnJP3TDhV0sTkaL0oGLdaX8jXiQW3s4u+Yl4w7xEOA/iV/Rl7WO1HtVdb5O6fXXMdb6RQU6oXEIPHVfufNt/KO+ep7OOFILYsjrYocl2zS52wTAn29Pa3fnX+jl7WTapfJugO5jwJ40cWL7TwJlhYPhMtqvSQ7bbS67Z9vmnuvLAtOFcckMR44uBU8KhvL8hE+fwxCGF177zl2YjOdCXFgfYRBkzYvzGL2x2D7hLY6ylg8PORQyc2xRmO6sy8vifPKdfg== 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:(13230031)(396003)(39860400002)(366004)(136003)(376002)(346002)(451199024)(186009)(1800799009)(36756003)(31686004)(5660300002)(8676002)(86362001)(41300700001)(4326008)(8936002)(6506007)(6486002)(2616005)(26005)(6512007)(2906002)(66946007)(66556008)(478600001)(66476007)(31696002)(38100700002)(316002)(6916009)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?wIeAHwi5f64GitEQDS1TaLU2Ptck?= =?utf-8?q?sJQDTchSAqtQdNKsRrqwCGkCAt/n1lfH4iIGpnlt3n347z6EVr4dHvkjs4PIClqRn?= =?utf-8?q?L4gLjB2Q0p03mJ6ImAzDAuYuCIQc0thXMIMxo0eHtsy7Wh7uWS+wmFrrygwvqLGfY?= =?utf-8?q?X2bCbqnxpu7sQO0qU/J3t6IkKaPMMwLp4AyD/UeDUK63Nv+Rto8VXbfHiQo3PBgSp?= =?utf-8?q?fKkBy0PiyuIlqdbTrwEROQ0tO0ehVqjtByOSEBvqgp7U35CFxXT1qg1TV6qo0wvk8?= =?utf-8?q?GEEldCaVZp5177djf1Sv0nwBE8Njhgh6X57tShFSHBDZhzvkdmX2DZSA7a6aEUuhR?= =?utf-8?q?Zq6l+UPg6eRkJj/Yuh65+p3Wfo4Dknmpa7mAMfiLRYjjxx0lKtX2LNN4XZKXwUNLN?= =?utf-8?q?lJqcLsG2z5v8OMPWJWNkYwq8DMhrtqmNKMBllhgT4hX3zkIfbrMFV54UUSWaoipZ9?= =?utf-8?q?HhSi7V1kRgEHyA13xyzWhUMPOAMoEGUrv1wQ42DoQ9JDrX+ggCchEwQByO4xUyxIn?= =?utf-8?q?IjWnHUYsvqzCmLPE6MMYKb3lGc+UpcqJJWbLZLXdBxwGC3TaVUpVQI2b2h9dmFhLR?= =?utf-8?q?YiWBt3GfzOuwv7/fgdxtlvLj9T9F0tt/6ZhAsH5U/039DAvSH1k9QWbSXFYpVh4mR?= =?utf-8?q?DWMrF1vd1mGqVuvT1iU7dIh4iH0fPA8CyR9fjHjyw1K8nNj8FuNJo4YHFC3UvRyT+?= =?utf-8?q?XC6Tn134AsI0JhRnjNUS/oiQbRjfMsPNgNaIBNQU8lWmLBHonDrWz8sr2e9mM9/5Q?= =?utf-8?q?xQQt1s7LBHKNW5P2VelpEek5y9E5+YImS4kmf+awc0aaxS0qYvg/jAeHDyt4Kw3dw?= =?utf-8?q?15OEBhLnXJ6ijNQzVBmz58GQOooHVIXlMgzBczWGhEUt6w9BpvxRQZvoLmex6n+FF?= =?utf-8?q?CeY1sACn7VJ3+2fwaqjpd00GON4FjhD4nxgBfXWHsOU5MsElICR42+iiYPUcfyhQd?= =?utf-8?q?1KCEM5Hryc683BVEVjCQ9eZL269yH2g/98TQ/QEfZ3/Fq6fsFs3X0cX8SiFV5gZhu?= =?utf-8?q?vLYYcWdyfFAMHVv0CZ8yvSsbEMibCNxZUGcA2aARMlRD225Bk192UKnbvBwlYiGWB?= =?utf-8?q?UxBpBRh6TfqclsYSrC8gc1iC7rXOmh+jpkDzaA+kfRCHFIUsjpi1VwVVU1CbrGhbX?= =?utf-8?q?ErU9itJeETJPfbxJy64Ydcyk+Y64n8I3IOD+cpl4335kHWEsNNLuu/tqsf8xR/Ruc?= =?utf-8?q?Saem5H0xRi82qnYM92dt2Y71FTPtmV+2VJX6sziTv1j9vY5CsfVp5dvvjAXvQArY4?= =?utf-8?q?8n4TN5bOAaBJ/pJ+FQVHyr+7kSoJsYyjVC/Fa6FQLRwliB/h+6b06KVTKBqCXdgyA?= =?utf-8?q?xBScO1gx7pHgqr/jMOqiXAn3hHlmatRh1cPAcuqy+I8NRgX4xkf2SjL++n4J+BHBK?= =?utf-8?q?fdu5wDPnuI9FLNTHIUWEXfiHdw6PPpAxpPCfNDXJQvOdxvaParm3yt82QYPYpO3k3?= =?utf-8?q?d0ger+O5snfpA8F8CFVtV02fExdOsvlcaPq5DONvgVSUqsgvFwge6wZtbCgm7xGKh?= =?utf-8?q?EY5w9gEluqxo?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5ec2540c-3bf1-47fb-5d9d-08dbb927643a X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 15:45:04.0658 (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: 3eMA/hPwgcoccsBvZGZE/Z1nUfG4DbfLj58D8MV00Ul2NNeCyk+0pK6HV5wc7abnbLIEE8Pe5XQI0tBVQ1d3uA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8194 X-Spam-Status: No, score=-3026.9 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 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.30 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+patchwork=sourceware.org@sourceware.org Sender: "Binutils" Following the folding of some generic AVX/AVX2 templates with their AVX512F counterpart ones, do this for VAES and VPCLMULQDQ ones as well. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1944,7 +1944,17 @@ cpu_flags_match (const insn_template *t) cpu = cpu_flags_and (x, cpu); if (!cpu_flags_all_zero (&cpu)) { - if (x.bitfield.cpuavx) + if (t->cpu.bitfield.cpuavx && t->cpu.bitfield.cpuavx512f) + { + if ((need_evex_encoding () + ? cpu.bitfield.cpuavx512f + : cpu.bitfield.cpuavx) + && (!x.bitfield.cpugfni || cpu.bitfield.cpugfni) + && (!x.bitfield.cpuvaes || cpu.bitfield.cpuvaes) + && (!x.bitfield.cpuvpclmulqdq || cpu.bitfield.cpuvpclmulqdq)) + match |= CPU_FLAGS_ARCH_MATCH; + } + else if (x.bitfield.cpuavx) { /* We need to check a few extra flags with AVX. */ if (cpu.bitfield.cpuavx @@ -1961,9 +1971,7 @@ cpu_flags_match (const insn_template *t) { /* We need to check a few extra flags with AVX512F. */ if (cpu.bitfield.cpuavx512f - && (!x.bitfield.cpugfni || cpu.bitfield.cpugfni) - && (!x.bitfield.cpuvaes || cpu.bitfield.cpuvaes) - && (!x.bitfield.cpuvpclmulqdq || cpu.bitfield.cpuvpclmulqdq)) + && (!x.bitfield.cpugfni || cpu.bitfield.cpugfni)) match |= CPU_FLAGS_ARCH_MATCH; } else --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -2068,20 +2068,20 @@ vsm4rnds4, 0xf2da, SM4, Modrm|Space0F38| // VAES -vaesdec, 0x66de, VAES, Modrm|Vex|Space0F38|VexVVVV|VexWIG|CheckOperandSize|NoSuf, { RegXMM|RegYMM|Unspecified|BaseIndex, RegXMM|RegYMM, RegXMM|RegYMM } -vaesdeclast, 0x66df, VAES, Modrm|Vex|Space0F38|VexVVVV|VexWIG|CheckOperandSize|NoSuf, { RegXMM|RegYMM|Unspecified|BaseIndex, RegXMM|RegYMM, RegXMM|RegYMM } -vaesenc, 0x66dc, VAES, Modrm|Vex|Space0F38|VexVVVV|VexWIG|CheckOperandSize|NoSuf, { RegXMM|RegYMM|Unspecified|BaseIndex, RegXMM|RegYMM, RegXMM|RegYMM } -vaesenclast, 0x66dd, VAES, Modrm|Vex|Space0F38|VexVVVV|VexWIG|CheckOperandSize|NoSuf, { RegXMM|RegYMM|Unspecified|BaseIndex, RegXMM|RegYMM, RegXMM|RegYMM } +vaesdec, 0x66de, VAES|AVX|AVX512F, Modrm|Vex|EVexDYN|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vaesdeclast, 0x66df, VAES|AVX|AVX512F, Modrm|Vex|EVexDYN|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vaesenc, 0x66dc, VAES|AVX|AVX512F, Modrm|Vex|EVexDYN|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vaesenclast, 0x66dd, VAES|AVX|AVX512F, Modrm|Vex|EVexDYN|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } // VAES instructions end // VPCLMULQDQ instructions -vpclmulqdq, 0x6644, VPCLMULQDQ, Modrm|Vex|Space0F3A|VexWIG|VexVVVV|CheckOperandSize|NoSuf, { Imm8|Imm8S, Unspecified|BaseIndex|RegXMM|RegYMM, RegXMM|RegYMM, RegXMM|RegYMM } -vpclmullqlqdq, 0x6644/0x00, VPCLMULQDQ, Modrm|Vex|Space0F3A|VexWIG|VexVVVV|CheckOperandSize|NoSuf|ImmExt, { Unspecified|BaseIndex|RegXMM|RegYMM, RegXMM|RegYMM, RegXMM|RegYMM } -vpclmulhqlqdq, 0x6644/0x01, VPCLMULQDQ, Modrm|Vex|Space0F3A|VexWIG|VexVVVV|CheckOperandSize|NoSuf|ImmExt, { Unspecified|BaseIndex|RegXMM|RegYMM, RegXMM|RegYMM, RegXMM|RegYMM } -vpclmullqhqdq, 0x6644/0x10, VPCLMULQDQ, Modrm|Vex|Space0F3A|VexWIG|VexVVVV|CheckOperandSize|NoSuf|ImmExt, { Unspecified|BaseIndex|RegXMM|RegYMM, RegXMM|RegYMM, RegXMM|RegYMM } -vpclmulhqhqdq, 0x6644/0x11, VPCLMULQDQ, Modrm|Vex|Space0F3A|VexWIG|VexVVVV|CheckOperandSize|NoSuf|ImmExt, { Unspecified|BaseIndex|RegXMM|RegYMM, RegXMM|RegYMM, RegXMM|RegYMM } +vpclmulqdq, 0x6644, VPCLMULQDQ|AVX|AVX512F, Modrm|Space0F3A|Vex|EVexDYN|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { Imm8|Imm8S, RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vpclmullqlqdq, 0x6644/0x00, VPCLMULQDQ|AVX|AVX512F, Modrm|Space0F3A|Vex|EVexDYN|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vpclmulhqlqdq, 0x6644/0x01, VPCLMULQDQ|AVX|AVX512F, Modrm|Space0F3A|Vex|EVexDYN|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vpclmullqhqdq, 0x6644/0x10, VPCLMULQDQ|AVX|AVX512F, Modrm|Space0F3A|Vex|EVexDYN|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } +vpclmulhqhqdq, 0x6644/0x11, VPCLMULQDQ|AVX|AVX512F, Modrm|Space0F3A|Vex|EVexDYN|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } // VPCLMULQDQ instructions end @@ -2932,25 +2932,6 @@ vgf2p8affineqb, 0x66ce, GFNI|AVX512F, Mo // AVX512 + GFNI instructions end -// AVX512 + VAES instructions - -vaesdec, 0x66de, VAES|AVX512F, Modrm|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vaesdeclast, 0x66df, VAES|AVX512F, Modrm|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vaesenc, 0x66dc, VAES|AVX512F, Modrm|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vaesenclast, 0x66dd, VAES|AVX512F, Modrm|Space0F38|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } - -// AVX512 + VAES instructions end - -// AVX512 + VPCLMULQDQ instructions - -vpclmulqdq, 0x6644, VPCLMULQDQ|AVX512F, Modrm|Space0F3A|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf, { Imm8|Imm8S, RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vpclmullqlqdq, 0x6644/0x00, VPCLMULQDQ|AVX512F, Modrm|Space0F3A|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vpclmulhqlqdq, 0x6644/0x01, VPCLMULQDQ|AVX512F, Modrm|Space0F3A|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vpclmullqhqdq, 0x6644/0x10, VPCLMULQDQ|AVX512F, Modrm|Space0F3A|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } -vpclmulhqhqdq, 0x6644/0x11, VPCLMULQDQ|AVX512F, Modrm|Space0F3A|VexWIG|VexVVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|ImmExt, { RegXMM|RegYMM|RegZMM|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM } - -// AVX512 + VPCLMULQDQ instructions end - // INVLPGB instructions invlpgb, 0xf01fe, INVLPGB, NoSuf, {}