From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2049.outbound.protection.outlook.com [40.107.105.49]) by sourceware.org (Postfix) with ESMTPS id D9CCB385801C for ; Thu, 16 Nov 2023 16:50:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D9CCB385801C Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D9CCB385801C Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.105.49 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1700153408; cv=pass; b=T9CwbBxsvcR/H0lQbdx1beEfTzPC+J4gODjJSZpzNnWzHWvK+vS2pwOghI9KbRK539T9on1kh7DUXR3DE7se8jdInGL4zedqdHyT47OBMU9a8XdtElkKsnJuK+uB7roH5msOxT8tr/408/5hmFOScKwbLIER0gMIpYXLyiC2UQM= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1700153408; c=relaxed/simple; bh=jRknhBdQkru7WNjMGUEA+vrpmk3VL5puyBiu7wz2bdc=; h=DKIM-Signature:Message-ID:Date:Subject:To:From:MIME-Version; b=ryGQuDlZODCvhsh9hwV77JMbh+zgO+tfOpaY+SffvEuRYRliP9myZaPbvcRUbt0y+Ll0ggNohKTMEE90YqN0jW16a1ZTJdwDE2EKx9fnNO2dBrWHK5G5x1c0xfRb2qZ8aAlW8Xgig3m6u2cBpLCdPKknvEHVyZbfNTVV3A5soKM= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iMUV/iXq0W+q3r2fx1jkI67B1TjfpCYM2RBcKlFQSuwCB2g8A/KrbJJHQKJ2vyZR0UNZXMH477FqDUeVCXa4hbE6+zt20w4qWkCHfPFCIq00HdwbkeFO3R6eMPvrBtNRKp9eHL5dKHfnR4bpetptg5niI0z3UNWXX4T4yvLjuRToYLdFapoS4WtwQpjzaPFCrGdvnJYG6qUU2wzV4QpGD0WSS5D1ZwaPe5P3nuWoJrKV/+k4gtvZdVEdYSGm2N3Rg548cW7Yo5WVIQtd/+EKQ6E0Q4SfCTYlTInMt1+FYut8vr+kB+QlwYKhN2yNoD+AypQX/P7m2jr38UDJprb9Cg== 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=KLDVlmvntRel7aHIW+3sHMF5RaTDbPnyjmX1LRuAe3Y=; b=f9hfInMiwHB94d1RCq74q1Vu3GWtCwaNTkg6oUJcg2tkF5DUwdxoYMQ7pdUnfhjGZBt7ThFmULwY/DfmPTYO7JyM662MXGawupAWcnpjXzhvwb7zbVMl+uJ/nXKLXDCEl4wIkCUQMSKEq0bGJVzAHJinsull62Mki+8o9bfE/33cG7CGk3zMWSkTrZ9Mj/QOBp+cWAwJ2G7tg4v1XmWfV7kjYh6nwgPSB1bwEx1et/B7E4+DiGuh7OBfjQm4qfjT4fAasF7pdvSNLstk+NK3+bQK7S8fUam8etwpY/Qek5M9FK7gO8q2W8KQfrDwcwxLWjS8ipTP++vi6RPgXIwKvQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KLDVlmvntRel7aHIW+3sHMF5RaTDbPnyjmX1LRuAe3Y=; b=5DaR+7QuIQCFcwJYioUNIAlVKaty52q8JsG8+f4YP4+DMKrcYrjIM19bdoanX6WvMtyeUXHEAQMGaXn72SFX5LG0ZUcbGBncziinkLyT3p3UpAsM1Qy94Cqo03Y+HE3acUZHLuLa6ttoYUJxcRADtd1ex5nhukAHUvK8o6TPW4PKHv2bfOzOYDkukhpDEKQWZSBHZgRg0V4S1fk3CtWydHqa0lnXWxVdi2Zlanvth0PKthsmLg5aOzQG42EjghdDu48wzN1zeZT+esPXW5EQrrKXiBcC/TsAkTb93OQKt/ix36E41+D8g0n7s9GOPpFDgePRbFM0S2oURpuZqpCaKw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by PAWPR04MB9985.eurprd04.prod.outlook.com (2603:10a6:102:385::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.17; Thu, 16 Nov 2023 16:50:03 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::eb8e:fa24:44c1:5d44]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::eb8e:fa24:44c1:5d44%3]) with mapi id 15.20.7002.019; Thu, 16 Nov 2023 16:50:03 +0000 Message-ID: Date: Thu, 16 Nov 2023 17:50:00 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 4/8] Add tests for APX GPR32 with extend evex prefix Content-Language: en-US To: "Cui, Lili" Cc: "Lu, Hongjiu" , "ccoutant@gmail.com" , "binutils@sourceware.org" References: <20231102112911.2372810-1-lili.cui@intel.com> <20231102112911.2372810-5-lili.cui@intel.com> <1df008d3-e651-4345-4a55-9486207b0a39@suse.com> From: Jan Beulich Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR4P281CA0158.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ba::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_|PAWPR04MB9985:EE_ X-MS-Office365-Filtering-Correlation-Id: 4eaaebce-cbb8-41ee-e417-08dbe6c41477 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7e3KL+RgF6ibV8WZk05i/AZh3y5RzNzsAn7mdtkaCR6GRExqPRJfZMCM05qKyHpeq2g1Mmrp1t2hsJSYdHXaltzlRVvQe8JCM5pXZsPI1GSM+tLU4Z1DKpri0RO3OTHbRYiomABpP6exPKaRdLCSGNb2opC0p/BUEc767/LiZ0yselfNrTfdxQ9bNGtb9eECoRmLFar7AQFXEqBejngJGucq80B1m2ROuRNCFVCqxqUskvyo+HMFKaBpQbttbWHjk0ooy8xvnZyNDgxorvdaHrkMr8XWe+/aEYIe4D1zACLnCe1phyM/aNEvKM1xikhSdi/bWBahY+opj1mYTCvne62WtSVGEKm+x8lIsTsUHebdoXumI1lx+/ZUgl6H73sjHlCrKeMlK2rce0Fy40evI2YZsC2dwgvRhZ6OiQulszahNonW3n2ebPXWsmSNvpwsvBqqrN5n6M7weEKUmIljx+8DX97qPlMrb2EFED0odBYdBH1Cr3v3sogNMmF2Lnmug+swynSf2h/idyywGtzUoeCEf55lsBpKrPYI0rNNxWLJOMO1f7nfbPNOhhDP0aN1H6mWqLdaUuQQnGbtWP4UhnQtyLLwXPD1QWp/486x5ER3W94C46BEhAftbQxHUHh9CKofFPzrMTQsRPNx6BUM4Q== 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)(39860400002)(366004)(396003)(376002)(136003)(346002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(478600001)(53546011)(6506007)(6512007)(26005)(6486002)(31686004)(2616005)(38100700002)(83380400001)(316002)(6916009)(66476007)(66946007)(54906003)(2906002)(66556008)(5660300002)(86362001)(66899024)(31696002)(41300700001)(8676002)(4326008)(8936002)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VmJnV2NmdUduQjBSdVpaZVRCZUFUSXRrQ2xEbXFpMWNrb2RKT0VFMUw1VkRi?= =?utf-8?B?cWt2ajlJU0VXa0VId0Erdmc4NlcxL2ozQkJhb3B0MXRLS0l5aDhVVVhiSW5p?= =?utf-8?B?MllXMVFHeENaQzV5cExWTEREa2dkeUFHMlVFV1ZWQk8wdm41NEU1S3JQTkw0?= =?utf-8?B?Ym5VdzFqSFlPQXE2TUlUMWVoMUhHaUplWmNxYmZOOUdzaWxPMCtUSTZub0hy?= =?utf-8?B?YWMwTnNjeXBMNWxUSEpDVmJQeklmK0dqVmhXaStPcDhJOUVGYm9KcFdNVjdS?= =?utf-8?B?ZGxjY3R4WjlJZzA5WjFqMXVvZ0d0dzBQV2d1SFNEbzlFbVoyWVRPTG4razhs?= =?utf-8?B?aThwTVMwZWo1M1dNd1NQbStsaDFLeFZaZStTM1FMdUVpbUFiL201VGd0SU1U?= =?utf-8?B?bmt0RnhSSmMzVzdaVzZZVWJmd1ZweWozV3dqQ3gzenZCNjNiTzN1eStteUh3?= =?utf-8?B?bmJRd2dzczhrTUViaitJQVZUZnU5bDdFck5BWFMrSS80UVRNblZqRnUyYTg5?= =?utf-8?B?bEJyTFVzaGFqdHpPcUNhR3NLeml5Y2NFTm9YYmNuZjlKdnp5WjZ5a3FYSTBK?= =?utf-8?B?V3NGNVF3Y1BubjY1NktRYzc0QW9kaHZrZVVHbDhxLzZZZ3JhZUZtNUJJVEho?= =?utf-8?B?QXlaS1JKRE9GbWo5Q0RneHl5N0F0b09nZHZCcTEyZWtBTkMwQVM2RXRxYmd6?= =?utf-8?B?L0x4RzB4MXVtalhnMVd2djFTYUhhVHJTV0ptZTNKK3RkS1NNeGZVSXdSNXNJ?= =?utf-8?B?RHhWcTF6L3Z2NC8rcVV4eG00eStXTFhoVDVmcDI1ZXhjMWY0aGUrODBsakN0?= =?utf-8?B?NGhZZWt5Y1J1UDZNWnZTY3J2WFNaaE5xRHFNOUNWMjg0ZnM1T2NzU3EzTkVw?= =?utf-8?B?MDUyV2E4OHpRU3FWYkxGbTE5KzZzM1IzVVprb2lRNHZDZm9HeHRkVjI2NEhq?= =?utf-8?B?ZFpVUVAxK0N1bTh4NEMxSVVFNXNXbnRpalJUZTgybUl0aFhmWmQvUmpzT1FZ?= =?utf-8?B?RVZXRGg2amxXbU5YbCtpTXkwVDdNNkpLbnZFZDJkdEJXdk5zU2h4T2doZDRy?= =?utf-8?B?TFVzTWdqK1NhcE9LNHN2cXpwRkc2Q0dDR1BUd0xwTlJ4c2tzMXJMVVllMmtU?= =?utf-8?B?c0ltS2FjNG1ybFZ3RGxDcHZaN3B4ZHhCR1pUTUVScmZtdTdsL0FGaG5KbUk0?= =?utf-8?B?YXV0UDFqMlpZU3AvUEZUVEdpZE84TERPRlZPbnJDdGQ2eFZKa0c1OUlUZWlD?= =?utf-8?B?bEpiMW9OZjZLT0twaE1zTlNpV095RGcrVHI0WFV6UjNGcEFyenhaVDFrcW9T?= =?utf-8?B?S0dNNkRNMkxuOFFORHhmMGkzM1Q3Q1IreWtOTDg3YmdVbW5iSURTSWVYazl6?= =?utf-8?B?VHlvNDdjZUZ4eEZXemhyZUs3UDJHckpCYVVXZjRCOFhwejJobGR3UTRmbFY2?= =?utf-8?B?L3N6Yys0WUYrVTQ0eUpMVzd6b1JhVkhPZnBJeXlPdHN6QlNKYzcydGRCWWtr?= =?utf-8?B?YVBxdzVNZ01Zc3lHR3EzUHFtQzRTYW0ycEk0c2JpUnFNQ1hZaVczU1hmdXE2?= =?utf-8?B?Wk1UU3h1Z2Y5c0dyc3h4bDJVM2NQVFJ0ZGFIRjl4blFlRVM4d1RVTkVvaU8v?= =?utf-8?B?Ull6cTJWbUw2Qm5jUXZWV2ZZWkRsdDdZNDE3cURlSjF6d3NETnlLL0p2SENV?= =?utf-8?B?Mk1DVFo5eFp2YWhWZWN4RDV0cjI4eEhiclg3QjZETDlUelJvL1k1VGhpdXBT?= =?utf-8?B?QzN1d0lMMndkamx2cTM5MGR4bzVnWHV2dGx1UThEMFAxemJhTzBFN0h1TFlt?= =?utf-8?B?OHNMRktWUU9MQ24zcDFlN1pJYmZLR2Z3QnlKbXp5WGljRm5YUVRjeGkrMXVq?= =?utf-8?B?Z21xYlJwVzBnR0tubGFoYTdxRDlvUkZrQTBpNjNRb3plVi9QWXN5RTc0cnZt?= =?utf-8?B?QUtrSjhBMDFGZ1BaenBTbGdHT1ZmVXJxbTJDTHV6MU90WTBRNmlFUm5jd0xR?= =?utf-8?B?aEdmZDN5VHFvYVUwUFVJaFlzc3B4MmVWbXo1OVdPTDBvaFlzY0VhbkYrL3J2?= =?utf-8?B?ZGkrcS8zVlJMRWNDWENnT1hTSzBGRDErcnZsbEorSUM5Ynl6RzRUSFdzTFBs?= =?utf-8?Q?4htm5meuLuhNeCE2CBdiPrB59?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4eaaebce-cbb8-41ee-e417-08dbe6c41477 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Nov 2023 16:50:03.6081 (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: Ho/3nrvEl97wwD/DYt0HBTjUjo1CEZFvsCRCGfP7Nh3KYLFyc76A2L2LFrV8i68FGYZ7bwBFXy0+2pDUuA6PFA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9985 X-Spam-Status: No, score=-3026.4 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 List-Id: On 16.11.2023 16:34, Cui, Lili wrote: >>> --- /dev/null >>> +++ b/gas/testsuite/gas/i386/x86-64-apx-egpr-promote-inval.s >>> @@ -0,0 +1,17 @@ >>> +# Check illegal 64bit APX EVEX promoted instructions >>> + .text >>> + .arch .nomovbe >>> + movbe (%r16), %r17 >>> + movbe (%rax), %rcx >>> + .arch .noept >>> + invept (%r16), %r17 >>> + invept (%rax), %rcx >>> + .arch .noavx512bw >>> + kmovq %k1, (%r16) >>> + kmovq %k1, (%r8) >>> + .arch .noavx512dq >>> + kmovb %k1, %r16d >>> + kmovb %k1, %r8d >>> + .arch .noavx512f >>> + kmovw %k1, %r16d >>> + kmovw %k1, %r8d >> >> What about BMI/BMI2 insns? Or AMX ones? (I surely missed further groups.) > > We don’t want to list all the instructions here, just a few representatives. Sure. I'm asking for representatives from the BMI and BMI2 groups. >>> --- /dev/null >>> +++ b/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s >>> @@ -0,0 +1,29 @@ > # Check Illegal prefix for 64bit EVEX-promoted instructions > > .allow_index_reg > .text > _start: > #movbe %r18w,%ax set EVEX.pp = f3 (illegal value). > .byte 0x62, 0xfc, 0x7e, 0x08, 0x60, 0xc2 > .byte 0xff, 0xff > #movbe %r18w,%ax set EVEX.pp = f2 (illegal value). > .byte 0x62, 0xfc, 0x7f, 0x08, 0x60, 0xc2 > .byte 0xff, 0xff > #VSIB vpgatherqq 0x7b(%rbp,%zmm17,8),%zmm16{%k1} set EVEX.P[10] == 0 > #(illegal value). > .byte 0x62, 0xe2, 0xf9, 0x41, 0x91, 0x84, 0xcd, 0x7b, 0x00, 0x00, 0x00 > .byte 0xff > #EVEX_MAP4 movbe %r18w,%ax set EVEX.mm == b01 (illegal value). > .byte 0x62, 0xfd, 0x7d, 0x08, 0x60, 0xc2 > .byte 0xff, 0xff > #EVEX_MAP4 movbe %r18w,%ax set EVEX.aa(P[17:16]) == b01 (illegal value). > .byte 0x62, 0xfd, 0x7d, 0x09, 0x60, 0xc2 > .byte 0xff, 0xff > #EVEX_MAP4 movbe %r18w,%ax set EVEX.zL'L == b001 (illegal value). > .byte 0x62, 0xfd, 0x7d, 0x28, 0x60, 0xc2 > .byte 0xff, 0xff > #EVEX from VEX ldtilecfg 0x123(%r31,%rax,4),%r31 EVEX.P[17:16](EVEX.aa) == 1 (illegal value). > .byte 0x62, 0xda, 0x7c, 0x09, 0x49, 0x84, 0x87, 0x23, 0x01, 0x00, 0x00 > #EVEX from VEX ldtilecfg 0x123(%r31,%rax,4),%r31 EVEX.P[22:21](EVEX.L’L) == 1 (illegal value). > .byte 0x62, 0xda, 0x7c, 0x28, 0x49, 0x84, 0x87, 0x23, 0x01, 0x00, 0x00 > #EVEX from VEX ldtilecfg 0x123(%r31,%rax,4),%r31 EVEX.P[20](EVEX.b) == 1 (illegal value). > .byte 0x62, 0xda, 0x7c, 0x18, 0x49, 0x84, 0x87, 0x23, 0x01, 0x00, 0x00 > >> I suspect at least some of these can be expressed via .insn, which would >> greatly help readability (i.e. recognizing what is actually being done, and >> what's expected-wrong about it). >> > > Update test cases. > I try to express the first case using .insn. I can't find a way to express EVEX.P[3:2] == 11, do you have any ideas? > > 0x62, 0xfc ---> EVEX.P[3:2] of normal EVEX must be 00. There are terminology issues here again. The first case in the test talks about EVEX.pp set to the equivalent of an F3 prefix. That's neither encoded as 11, nor in EVEX.P[3:2] (I don't like the EVEX.P[] notation anyway), but in EVEX.P[9:8]. Irrespective, these are some examples of what I use to encode MOVBE (note that all of this Intel syntax and the comments are MASM-style): .insn EVEX.L0.66.M12.W0 0x60, di, ax ; movbe di, r16w .insn EVEX.L0.66.M12.W0 0x60, di, [rax] ; movbe di, [r16] .insn EVEX.L0.M4 0x60, xmm16, rdi ; movbe r16, rdi .insn EVEX.L0.M4.W0 0x60, xmm16, [rdi] ; movbe r16d, [rdi] .insn EVEX.L0.66.M4.W0 0x61, [rdi], xmm16 ; movbe [rdi], r16w .insn EVEX.L0.M4 0x61, xmm16, edi ; movbe edi, r16d .insn EVEX.L0.M12 0x61, [rax], rdi ; movbe [r16], rdi Surely you can find variations to support the forms you're after. Plus if you think the .insn documentation is unclear, please point out what you think needs improving. >>> [...] >>> + crc32 r22,r31 >>> + crc32 r22,QWORD PTR [r31] >>> + crc32 r17,r19b >>> + crc32 r21d,r19b >>> + crc32 ebx,BYTE PTR [r19] >>> + crc32 r23d,r31d >>> + crc32 r23d,DWORD PTR [r31] >>> + crc32 r21d,r31w >>> + crc32 r21d,WORD PTR [r31] >>> + crc32 r18,rax >> >> These could do with moving up, since otherwise things look to be sorted >> alphabetically here. But seeing these also reminds me that the noreg64 test >> also needs extending, to cover these new forms (handled by separate >> templates). >> > > I'm confused here about adding crc test case in noreg64.s, could you elaborate on what testcase you want to add? > > pfx crc32 (%rax), %eax > pfx16 crc32 (%rax), %rax > + pfx crc32 (%r31),%r21d ---> data size prefix invalid with `crc32' > + pfx crc32 (%r31),%r21 ---> data size prefix invalid with `crc32' Well, of course you can't use the "pfx" macro (at least not as is), which will emit a data size prefix when DATA16 is defined. Likewise it would emit "rex64" when REX64 is defined, which doesn't make sense with EVEX-encoded insns. Ideally you would introduce a new macro to control operand size in an EVEX-like manner, just that I'm afraid that the way you're adding EVEX- encoding support to gas doesn't offer any means equivalent to that of legacy encodings. Hence only the "bare" EVEX-encoded insns (without the use of any pfx*) should be added for the time being. Also, ftaod, CRC32 was only an example here. Any new template you add which allows for potentially ambiguous operand size will need an example added here. This set of tests (noreg64*) is intended to be (and remain) exhaustive. Albeit, thinking a little further, perhaps you simply want to introduce a noreg64-evex.d referencing the same source file, but arranging for {evex} to be emitted in the pfx macro (or a further clone thereof, as some of the insns cannot be EVEX-encoded)? That would then also deal with covering all relevant new templates (I think). You'd need to check what, if anything, needs doing to the pfx16 and pfx64 macros. But of course you could also introduce a fully standalone noreg64-apx.{s,d} test, to escape some of the possible hassles. Jan