From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2089.outbound.protection.outlook.com [40.107.105.89]) by sourceware.org (Postfix) with ESMTPS id 778E33858D39 for ; Mon, 17 Oct 2022 07:17:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 778E33858D39 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-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CNtHbxylAI9XptpdthDh4LtnF9gP86ziK+RGQYTXU8GWMH0Uz6olKknlt7cdeW3t6YBvnF11BM7CZ1zJnmHrNi3LNfnl08+LEe/cu2DOyfdgMuEHHDfLO5HAhgJanR9WezuvRiIBhlUSJgaCRM2w/N2sHnfdfgRrJyBhHI1mMh/CfndQErlBD/PhSfJMow8eNrYYDMdQvDH+DnSYJiUQIu68wrM5/RNME+zkfhAsCDdrp+e0oLGombeh7CBwVjoXIWxiGRwpHOs8KeGnoBEnzKAEAbNVOeM69fCT9ZKKFhsIfuJJIHxb0kZbztQ7HOWqftA4kPur43eq30QAAJagQw== 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=1EvGpfFPZ3OZz9VMtrrloQaGpNAy1/EwNXlzDIP1cvk=; b=RpXbX7ywu1cUyGqJvjMDbK5lUrxeVMhcvoZlBd9+qpHPZkZa89yZWDJSIY5rE2tBgs01ZawxVEorsfKIo1Cv87WmH0CC2KHUNedkiuAQmjk2cc6bNk1AvkhnOrFsL+X2kNfkZLKfAzikOpyTfGkRxPcJuJYdWxzfs96X04lzsGYHfn8yRinyz+YoUcsBHSEP+UI2FNqJvFNyVrHKK3UXl6SgRTIKa0KBqEqXgPYigOxmVkQ62Fv7kdsjlp1U8rccnr5tQKplIgO1SXFE9F5vigzG+WfN66J2bxzkC0+kzbI/C0C8HbqW4XOw0Q5oM0uHHrD/PHOrE0og5d+IDzxtNg== 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=1EvGpfFPZ3OZz9VMtrrloQaGpNAy1/EwNXlzDIP1cvk=; b=nDLhxKkYiPPJZJXLQgid2PkY9w/63x28WgBly/qBhVTSMhfcK3pPGQbxI2ZXfRrbHwcc3m3JUpJPkmhdpJ/xnrHG6iwTK1SiR25YFIyUT75SaDqr4eqSQ6DNcJoyjF48KFUZZ8Oa9sgiIYcjDuF3odIEi+WGhPQLjTVvm0Fsji0GjjKMd9JB24zLI2HyFCjfDU6WloA9lwZDxOvEhbXai+qjJ0LvvP2pEbFpCNQoCSKnfxaChqjS9vxva4RHhveMJOxK2PDd4sJtmjhxUkGX38NpzKh2l3aoymLfh45tjKRh+39GgD/84pmlVu6h4TElEyoD2TE9tFyk51S7s0O82g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8941.eurprd04.prod.outlook.com (2603:10a6:102:20c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.29; Mon, 17 Oct 2022 07:17:37 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::2459:15ae:e6cb:218a]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::2459:15ae:e6cb:218a%7]) with mapi id 15.20.5723.033; Mon, 17 Oct 2022 07:17:37 +0000 Message-ID: <180b7336-c2f5-3c65-fea6-d891c57c9ff8@suse.com> Date: Mon, 17 Oct 2022 09:17:36 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.3 Subject: Re: [PATCH 07/10] Support Intel WRMSRNS Content-Language: en-US To: Haochen Jiang Cc: hjl.tools@gmail.com, "Hu, Lin1" , binutils@sourceware.org References: <20221014091248.4920-1-haochen.jiang@intel.com> <20221014091248.4920-8-haochen.jiang@intel.com> From: Jan Beulich In-Reply-To: <20221014091248.4920-8-haochen.jiang@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:15::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8941:EE_ X-MS-Office365-Filtering-Correlation-Id: fe821ff3-8d29-459c-d0e3-08dab00fab6b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lIsf7M+DB6huksmravBSY7+o7VtvK42o3DRGQavqXCWe1ei+Esa5lLZYkGpfkoZzsPcycKcwfIbQ1saInwLVNLYQb1YidcSpgsJwo0vozTR0wVQbn/EfX8xm6OBNXBHMbST37xPv2shdFvmFYoKR320J+QSOpE4UEQkiLbc0BIthztMRkxMcxU1oKs7/n3skkYjgFSVmgWdOQ7mVr1Wbt9ms3F7the2IqbUPUNAXEKHX5pwLhpCaCBZO81JsOkxlpozp+F7I2acRZBclWz14nANk9mSatSBs4dxDM1x3ikQjKnyLeQH/yv/+d7gcy/vHgdaU23MX6kr+lwRlhkpM6hwt5jR0AFfxyOgE4BQNJiAtX2kEKil+isHBuYskW5Drxk9lKtLqLWNX+cCeNZ1t6BD8uZMzD3+pN5fYpld3jkToigSXqBiYP5kADN9Q+5QeOsgsjVKkkGPL4ChliuO5oIPss7vmkJxxXzUlYMZlfrmrQ/YiHUTZmWVsUDWdXB2XloZPn83NtcwuecUvK3vIJedb4oQpCBEwdPEmxTj8i+WCRiERPPMXtj9BljOCZAu1VOvI9/uLytjYl5K4k81P4/8axFNNzuFJnQ11eCRVPTS3LQUEurc84utM64KKbgYnXDbzshL1EYl+Ub4mkH/omwygv3M/RufEasH/3Bxp3IXnSLbhwzM33/z3lAh1A1N5cSQBtefuj6uu4yg3ccGihgzhL+GaYLT0xkwnm8v+Ijm+A6G0NVKIpPxA076T0Wyyj9mXaHYo18TF6N+PgPka72HlwwIYpJzkEAXdIXruMps= 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:(13230022)(136003)(396003)(376002)(346002)(366004)(39860400002)(451199015)(31686004)(2906002)(36756003)(41300700001)(5660300002)(53546011)(6506007)(38100700002)(8936002)(8676002)(4326008)(66556008)(66476007)(66946007)(316002)(6916009)(6486002)(83380400001)(31696002)(86362001)(26005)(6512007)(2616005)(66574015)(186003)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cVB0SE40VEpCTzFZS1phYW1Vek92bXloUEtXWjZ3VTFsaGFFNk1salRqYWVZ?= =?utf-8?B?TE9vYk1qcndHRWUwdHFZNHI0RmRRZWY0YzgwWmk3Umo2RVZDRDlXZkl4NXNw?= =?utf-8?B?NncySjJaeHRNdlFEQWU4WGw5ci9IbFBiU2pyMzFuMXJaa3kza0Q5ejIxNWRl?= =?utf-8?B?RDlmRk5vcUdhWHFxTDVUY1R5QnlzeXUvR0dQZHFUYnBWSGlpRTVxUFloejRP?= =?utf-8?B?STVoSVRSRkwwMVhtbVdaOXNFaEpIRFNrWlVxMVJWaTAydDZ5Y0w0cm82MnJC?= =?utf-8?B?WGM3dkhneDRYcFlFTHpocmo2QnAvczVpZWZGZnd4TjFSRWJZbUtpT3pNTXVq?= =?utf-8?B?ejhLc200MklRTklkWVJBeHZBKzQ2VlhNM0NrRmtFTkdXanlXQm5JRHJ3bmFI?= =?utf-8?B?dkxkaHJBZ01kWTRQeHFmZTYxRWczdElWbElIaGFQNGYvQzNaVm5hY3JrS2ZL?= =?utf-8?B?VG12ZHkxMjZDSzJXRHdaTmdjZDZ4SmRJRUMrcFloWXZqVmZTSDNrbXFFbnJS?= =?utf-8?B?bGJKK3dVeUFUNXdzODd1b3NXalJYU1FTNkNKZ1k2cEdibjF1cFQydmFMQ2xx?= =?utf-8?B?N3Z2MEZnUFhjUUJUb0JjVy8zQXUzcDVPcUp0dElyb3U0Z1dJUzJsdVllRVRy?= =?utf-8?B?V0RMeTUwcGdOK016SWxyalFLclBPelo0NjFvWjkxSldvZWZUenBWNkNldzBF?= =?utf-8?B?Vnh3TU91WGZkOU9RbFI0amx2ZUtUa1lMaFJnaHFJeUp1Z05heXVhWStZbyti?= =?utf-8?B?d1BncEw1K2FxSUtXZFdUd2xPeC9iR0NWWDl3TVYySW9JNzFJVnY4Um9VVFBC?= =?utf-8?B?V2ZMTnBoRnNvbmRyZS9KT0J6d25mN1lyVUdoZzU1L3YzQ2NLQlFTREdicjY2?= =?utf-8?B?K1kvTTRMeXhtL3JaQk90WnFjSDFOUmxMYnBXTlVxT3A2NTlKMndiNnJiUmti?= =?utf-8?B?N2dLVlpGUHV1U2xSaTU3L1lsdXdzemJUeEI5cHdSMFFaenkvZktDcXlLeEFP?= =?utf-8?B?b3Q0UFpKbXlEZHd0Z2hRank2NXJNT2RVUE1mdkpiWEdzNGRWbW45UVhGWG9q?= =?utf-8?B?RFJTbXNGVUdWaGJiTW15Y1lZNFVDMGJSOEpuT1A0ckRCOHFhRlcxVTRpNnFL?= =?utf-8?B?T0hEU0VjYzQ3UHVxVEdLd2I0bjdKMFArL3BCNFZJR2dHY1lsM1BWR1c5UG1y?= =?utf-8?B?eTBLcHkxSTNqMG9wUzJ5OW9zQ2MxbXZIaFBsMEdNZ0ZLZi9lSVB4emV3cVl6?= =?utf-8?B?c0M0ZzVnN3htYmZ6TkhweEw1Y3dYcHpMaDhjWE9QUFFOYnRlUktock1TVlVu?= =?utf-8?B?amVjaElXUDlDbERoNHIwQjZuMVFoelBVcDhUUUh5Q0VOd2pWYkFGWlBNVm1x?= =?utf-8?B?NmV0YnAyVDhrVDAxVjJ3cyswSDI0cC9yVjBhZ3dWWXdDU0FhUS9OLzFwSVVh?= =?utf-8?B?UUxPTVpIQUVHUjZMYjBFYUdiYytYWVMrZzN3c1creFNBUVl4dEJsVExyNlRP?= =?utf-8?B?NUtyK0dJeHcrRi9pUFozR0F3WmVpSHdvVUw3V2haUmFDSythQnF6RC9weVZV?= =?utf-8?B?WHM5anpPb2dJWFdyVzcvblB3QTc0T3UxNnEvM25UaTZKUlB4NUpTY01WT3Vh?= =?utf-8?B?cWl1SzlWeFBEZDY3WXdQV3R2ajZJSGd6SW15N0V4M01LTm9yWklGUDczSUxV?= =?utf-8?B?c0QvYnBuRWVsZWdRL0VnMDdOT2hQeTE2TW8yTGRSZDBtRk5Wb2JiVWpOR21T?= =?utf-8?B?TkJlSzhKQ0RIaUhGUStVSldITEljMDNJYWFvRWNmbWI1OXVvWlA3UklwSHJj?= =?utf-8?B?T2ZOUU1PWVBub21SRGw5NjNZMjBvNnhvSHdlamN4MzNaQUZrMXhlbG1kSmxK?= =?utf-8?B?UTBLSjExd0dyalU3N3kvb0dqVnZCeU5aeVo2d29ZcUU3dVV5VWNrQ21QMDdv?= =?utf-8?B?SzlGZWtMV3pJNm1aMFhzUFIrTUpnNWI5SzVnY3FJYnFITmVmUy9xUFdIQXpP?= =?utf-8?B?V1JEeDMxK0I2WlJmWmN0NW5lQnpDMmJwZkRzeUM0R1JQYkEyZngrcGlBRkFE?= =?utf-8?B?dXZicWtkeWhjT003d0dWNXE4MnRGbXZFZlIydy9zWUR3WG1CTDM2QTNLMzd3?= =?utf-8?Q?tm4+hTAUExO442XpTA9g7rB0b?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: fe821ff3-8d29-459c-d0e3-08dab00fab6b X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2022 07:17:37.4251 (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: lYlJ54D92jXH4Jwf2FCI7/v/31f4y+wwJCc8pNoz8VtCANUqfZ1KVNYu64q8xWKM7DBF3GrXc5Xb5bIp0/OcMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8941 X-Spam-Status: No, score=-3029.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,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 List-Id: On 14.10.2022 11:12, Haochen Jiang wrote: > --- a/gas/config/tc-i386.c > +++ b/gas/config/tc-i386.c > @@ -1099,6 +1099,7 @@ static const arch_entry cpu_arch[] = > SUBARCH (avx_ne_convert, AVX_NE_CONVERT, ANY_AVX_NE_CONVERT, false), > SUBARCH (cmpccxadd, CMPCCXADD, ANY_CMPCCXADD, false), > SUBARCH (raoint, RAOINT, ANY_RAOINT, false), > + SUBARCH (wrmsrns, WRMSRNS, ANY_WRMSRNS, false), As for some of the earlier patches - no need for ANY_WRMSRNS afaics. > --- /dev/null > +++ b/gas/testsuite/gas/i386/wrmsrns.s > @@ -0,0 +1,9 @@ > +# Check WRMSRNS instructions > + > + .allow_index_reg Nit: Why? > --- a/gas/testsuite/gas/i386/x86-64-lockbad-1.l > +++ b/gas/testsuite/gas/i386/x86-64-lockbad-1.l > @@ -36,9 +36,9 @@ > .*:41: Error: .* > .*:42: Error: .* > .*:43: Error: .* > -.*:46: Error: .* > +.*:44: Error: .* > .*:47: Error: .* > -.*:49: Error: .* > +.*:48: Error: .* > .*:50: Error: .* > .*:51: Error: .* > .*:52: Error: .* > @@ -66,13 +66,15 @@ > .*:74: Error: .* > .*:75: Error: .* > .*:76: Error: .* > -.*:78: Error: .* > +.*:77: Error: .* > .*:79: Error: .* > .*:80: Error: .* > .*:81: Error: .* > .*:82: Error: .* > .*:83: Error: .* > .*:84: Error: .* > +.*:85: Error: .* > +.*:86: Error: .* > GAS LISTING .* While for the diagnostics line numbers matter, ... > @@ -119,47 +121,49 @@ GAS LISTING .* > [ ]*41[ ]+lock sbb \(%rbx\), %eax > [ ]*42[ ]+lock sub \(%rbx\), %eax > [ ]*43[ ]+lock xor \(%rbx\), %eax > -[ ]*44[ ]+ > -[ ]*45[ ]+\.intel_syntax noprefix > -[ ]*46[ ]+lock mov eax,ebx > -[ ]*47[ ]+lock mov eax,DWORD PTR \[rbx\] > -[ ]*48[ ]+ > -[ ]*49[ ]+lock add eax,ebx > -[ ]*50[ ]+lock add ebx,0x64 > -[ ]*51[ ]+lock adc eax,ebx > -[ ]*52[ ]+lock adc ebx,0x64 > -[ ]*53[ ]+lock and eax,ebx > -[ ]*54[ ]+lock and ebx,0x64 > -[ ]*55[ ]+lock btc ebx,eax > -[ ]*56[ ]+lock btc ebx,0x64 > -[ ]*57[ ]+lock btr ebx,eax > +[ ]*44[ ]+lock wrmsrns > +[ ]*45[ ]+ > +[ ]*46[ ]+\.intel_syntax noprefix > +[ ]*47[ ]+lock mov eax,ebx > +[ ]*48[ ]+lock mov eax,DWORD PTR \[rbx\] > +[ ]*49[ ]+ > +[ ]*50[ ]+lock add eax,ebx > +[ ]*51[ ]+lock add ebx,0x64 > +[ ]*52[ ]+lock adc eax,ebx > +[ ]*53[ ]+lock adc ebx,0x64 > +[ ]*54[ ]+lock and eax,ebx > +[ ]*55[ ]+lock and ebx,0x64 > +[ ]*56[ ]+lock btc ebx,eax > +[ ]*57[ ]+lock btc ebx,0x64 > GAS LISTING .* .. please abstract away line numbers (see many other testcases) rather than updating them here. > --- a/gas/testsuite/gas/i386/x86-64-lockbad-1.s > +++ b/gas/testsuite/gas/i386/x86-64-lockbad-1.s > @@ -41,6 +41,7 @@ foo: > lock sbb (%rbx), %eax > lock sub (%rbx), %eax > lock xor (%rbx), %eax > + lock wrmsrns I wonder whether this is really necessary. If you limited yourself to ... > .intel_syntax noprefix > lock mov eax,ebx > @@ -82,3 +83,4 @@ foo: > lock sbb eax,DWORD PTR [rbx] > lock sub eax,DWORD PTR [rbx] > lock xor eax,DWORD PTR [rbx] > + lock wrmsrns ... this addition (which already seems excessive, as we don't test the majority of insns here anyway), the overall diff to the testcase would end up much smaller. > --- /dev/null > +++ b/gas/testsuite/gas/i386/x86-64-wrmsrns-intel.d > @@ -0,0 +1,12 @@ > +#as: > +#objdump: -dw -Mintel > +#name: x86_64 WRMSRNS insns (Intel disassembly) > +#source: wrmsrns.s It's not just the source which can be shared here, but also the output expectations. > --- a/opcodes/i386-opc.tbl > +++ b/opcodes/i386-opc.tbl > @@ -3326,3 +3326,9 @@ aor, 0xf20f38fc, None, CpuRAOINT, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_ld > axor, 0xf30f38fc, None, CpuRAOINT, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_ldSuf,{ Reg32|Reg64, Dword|Qword|Unspecified|BaseIndex} > > // RAOINT instructions end. > + > +// WRMSRNS instructions. > + > +wrmsrns, 0x0f01c6, None, CpuWRMSRNS, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, {} > + > +// WRMSRNS instructions end. Nit: Use singular in the comments? Jan