From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060.outbound.protection.outlook.com [40.107.22.60]) by sourceware.org (Postfix) with ESMTPS id 868683858D35 for ; Thu, 1 Dec 2022 09:12:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 868683858D35 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=cD5Mqx5OKUrJ5PhbmLgICtcHxzugxjy80vpoG4/m5XbSHFcZierz2ZWv8mKbUMTJWDWdLuQo5vVukLzoC3jU+jA3J8RFIzHDC4zllSHAtNkHgKfC+AdWS6m0M91tmn2duq8PTAbRseaNR+ftDH36AoCsYCYFwqXJYDn78OvOc2Ygd+Uu1vyO43n4EYDFWpEuItl/Ipbnh+ZKPVIiPg4MvgaQTzQW18NXZOVaMXRmWXLt6WlA2Ga1HC+dbJEAb5J4EXg+2wFplb4PM0sTRbavLFPKUMeuoJCGwoeBW+bhVopJdlyEuY7UH7BI6velXgHNKelfUrYzjnPE4wYQwm57yw== 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=qQdeAmYqhbXbpHNAtiEXKHpnftV31S1G4O2QbyiIB4Y=; b=nhzgB9CKdEaNr+l/ErF3t8KiyPw+hqWo5Qe7Kz1ODx5jS/eIp9MWiHSJ/ScaGG3k+rtBU/6nBCalRbcrMOtUpYI5ao+QMXYw0fVHgqyms9GkRq9V5q5Nnwr1Ql4WJyDmTrFj2ATeYAZvgLk2jJtRfMcPb7xLzF6XFo0dosdtpmp39W4WUqdnHRoiNrdR0z2E7QO1cepgiHtMsd7x94qbmmXzrViROMgCfzkwgIhfdEH4RCdFsn52ho7JjIpX7BYxoLtffZaWfxjnCWLq3x5AfeK5WeSFWhuNHSFqow5Dk2566aigl/kRfA/OiQL4bwc2uuTGZiPOZkEbcGwDemFOgA== 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=qQdeAmYqhbXbpHNAtiEXKHpnftV31S1G4O2QbyiIB4Y=; b=o1fzj3EFiu5NJt4Mkw0f7ulLjtulhYMyrG9e+7s0aNKk1bs+yMr2NJthdwLvcMQXjnKq7xktFJMrn3eI31dF22awVT44Qk0Mx0Rz8aMAN0peS4x1NQVrE1nNRiMZzEG/tcTQAK+Z4DHP7CCWBzerrM5II2IbIn9yDS5ISj6tHFXuhhGEe5HAw4BXlBOFJ83xEOwy+isvhhNcNsUyYrXkGkaY7diCPQPQJMi2DrBkT68twM9PHLDB9hKqP/GJOLoa6/fO+7okliT7UiZE40MyJL6I5DwN5HqQFbwfU8yZwOFqDLXLCDlVYoOAo17H311e/vBfweTwrrU2Als+WbY2NA== 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 DBBPR04MB7546.eurprd04.prod.outlook.com (2603:10a6:10:1f7::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.21; Thu, 1 Dec 2022 09:11:52 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::4da2:ea8b:e71e:b8d8]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::4da2:ea8b:e71e:b8d8%4]) with mapi id 15.20.5857.023; Thu, 1 Dec 2022 09:11:52 +0000 Message-ID: <35539292-53a8-292d-2f5d-f65ad02a36bb@suse.com> Date: Thu, 1 Dec 2022 10:11:50 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 Content-Language: en-US To: Binutils Cc: "H.J. Lu" From: Jan Beulich Subject: [PATCH] x86: simplify and slightly correct XCHG vs NOP checking Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0054.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::16) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7546:EE_ X-MS-Office365-Filtering-Correlation-Id: 135f781e-6f17-43d7-4e19-08dad37c15c4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: x4K8H18M4I+hVQoYiRNOLf5T5BT3ALkofTFliuexSMgAMxjLivDfGssO6nnmmtFq2r0ME/wCpNKdsHrPyZpYyHySYmzYcm/10WgqgU1aZMbPSrk5L2qCtDOSBx4YsDVG2DPggm5WHutLL20oIqzhORsZWiBgUZBMTbHONgBbsZc9lo5HMMC12OO2ovw1OD48RsPbwmDcQFvH3sII9NTXcbt8q/B0ErtenyG1NKjLQ0tnKN7PRwp5/tVrgtoTUldTCcuHex/xB9Jl/7j4iEF/cHvMz3QooclwjTbAMeZGQ1N/UrQUiiMSA6yf+7LfUSvB0+n0Zvc+ihuEqukurWj5UhqUqUeYti5LXT09NrtuUatWaWlHSlnOwzTSXFvnbyErUPZT1Qemu6mj9g/g0A9Q9tGms497rpWVy1wEXo9O7bKRskMgaLYnHjq3NLE9jdSdQkFLQ+nAQzp9CQRBCXRgAjCrZNrhP88HDLd0wlF6WghkcQNvVKwBELFygxtjFwXZ7ZxdkMsG2nMIqsqLub+fRLuPBcBZH887EeKEas4Fbz5wCQyG6brh7QZEDTnLIL/C3vKJ8p7he0x4pwWNxFD1wq8aXgvM5TJ/Ji+1JNLW99A3K+fuIU66azJYEpnlc39fMt1Av5y1g9WM0S277i/ZRTzA12NWPO8EkenjObDKzWJ1ix4NYmUUljmhO11zA1c8aK7tH4CzvIXeMiEh1ajG4Qrze5nBkeMtDW14k214DkM= 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)(39860400002)(346002)(376002)(366004)(136003)(396003)(451199015)(31686004)(6486002)(478600001)(2906002)(6916009)(5660300002)(38100700002)(66556008)(86362001)(4326008)(66476007)(36756003)(8676002)(8936002)(31696002)(6506007)(41300700001)(66946007)(6512007)(26005)(2616005)(316002)(186003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QyszakJUSEJvdGI1Z0ZXc3hRV1BkVFNmSnRJYmxUYXFrdG5jYWdzUitsTkFB?= =?utf-8?B?VVYzUytPcER0SzhFVHpTUDVvYnVEd3kxRmN0c0FWUzRWaDJHOWhyblZYWUho?= =?utf-8?B?czhmVGc1YjFCWWpVNktkUTluMXFOTFo0T1FqRzVTR3h2cm1vNGdVQU90QXAy?= =?utf-8?B?eCtzL1RNRG9DQkNobTlPb05SV1JGdWtLZkZVMTI3aXFYNlBMTHBON2ZWbTY0?= =?utf-8?B?dkswTU9RcUZOUmZEUWZ4cXBlakZuVndMbXM5OWFvbEVpc0ZMS0RCRmhxb2NU?= =?utf-8?B?VlZjS2ZDdG9HTFVWakZzTytWdWFnUWF0VXlzRE84YTk4cWxNWGpsdzJJVk1r?= =?utf-8?B?YnRkU045b3JsTXl2VlBBMlhkV2d0bkxwSFdicFcwV3RvUDdPY0VUaXl4Zktw?= =?utf-8?B?a3czcysyWXQvcWhKZ0JIM0FSaStVdXhZVjNOREpqMTRvanFZTzkvVExwd0hX?= =?utf-8?B?V0prRncyaVl2a0EyLzZXcUhpdWQxUE5pU3J5d0RvOUNIVnA5S3ZxUW1ENHVR?= =?utf-8?B?ZCt1MmdTUDVZekQ1QThiVm1wb2lhajhDeFprTDVGaHpGMG16Y2tSZFdJVDVy?= =?utf-8?B?a0ZWYVZDUC9vMnpwSE85ZnpxdXRWQ1c1OGFUZmZKbVZ2V2kyOGZJRjdEK0Ns?= =?utf-8?B?dE8xaUJxeWlja1FWdFlCLzBGZTlqREtsZWpwOWlvVjgyekovWFB6TzlJVWJo?= =?utf-8?B?UExyTDBiaHI2Q2R0L1lRampWQ2hFck8yMll2eVJ4T1VDYjhnWEhZUWRtOVcw?= =?utf-8?B?VEUvNnpFdUdDTVZiajdtNnhqaGVsNlBqSXdwaXdWYWZkWXBtNnUvM0lyWHY3?= =?utf-8?B?a1grMVpRMjA4QXd2UU9zS1VpV094ZHE1QzcrVEJoRVNpR3Y5MHkzS3JIUkNn?= =?utf-8?B?dm1JKzVtdlhrOGUvU3ZWWi9mQ0h1ODRlVm9rZEJ3UUp6L3BvM3JQSWdsQjh0?= =?utf-8?B?OGY5SFVaZUd5ZW5KMEhSci9YRTJkOEN6dUlTaEJnTzQrR2IrNHlUTkFKYk8y?= =?utf-8?B?dElDWko4SERoQm1kTEdLSVR3WGFIRUp2dHNJVy95WU1GNWgwWVpXQ2lacHN1?= =?utf-8?B?eDJIdE1TZkYzRGd0M3hLUWY1KytHb3NkZ291bEo4NHV5MlZubW0xNmt5S1Bq?= =?utf-8?B?Y0dMMWs0VjM5ZW81ZVBQVDVOU2x5c0RTSEZyV0UxRUdKaEY3QUt0aDlQc1J3?= =?utf-8?B?UlJIQXVJT0NKQ2UvMHpxWWc1SHNQR3pJTUFYMytPYyt1VWlaUVN3em9LdVNG?= =?utf-8?B?R3owTDJYRnRpeWswbnBDM1FWVklzZ0FYL25YVlJrcDZsZG5zWmpZd3JreWhr?= =?utf-8?B?dzZkVlB4N21yNmd3SE42NTFCY1FXTTlTQit6aXpONVRvMStIaDJva2RncmYw?= =?utf-8?B?dXlUQjZPSnNmVjYxanFRaEpLdzNvZG9VdXBCZG1NMFd1Ylp0V2ZnSjZlbnBn?= =?utf-8?B?SzBnenpDdnZsdko4M1FOQnY0S0lrU2YxUFY0RFYvWXhpWTBkNjMxMGFVdkpa?= =?utf-8?B?dml5NkNZcWEwYlZLR2lGNHVxMng2UDBqM2FYdUsvL29iS0E1ZWxxd1MyTnV5?= =?utf-8?B?TFV3QzMzSy9CTmVLTDcvS1VGRlBFWjR4Y2dFMG1UVUo2N1BrRDJJOG9oZ3cw?= =?utf-8?B?cGp1U0hLT0hTWFBGMGhmRUgwZHJpYk1CNUxxUzU1dWVpbDVENFc1MTkvMUJ2?= =?utf-8?B?SWVsUUpDWjNrNkJCUVJ0aE5YeXNxQmFyUGsxV3BzbCtrN1dEQzU5eG9kY1Bl?= =?utf-8?B?eUs2eEpVNlpqa1J4c2V1TDRPb0xpOGNiR2UwMExJZ1U1alpFSUJkYUZhRnpM?= =?utf-8?B?ejNIckFLYkxvUTRJRGNLWC9USlZnbDRjUDdFeSs0ZlFTWXRPejBhaCtXQXo0?= =?utf-8?B?U2t1TUxEZ2VXTVRHYUxPNmwzWTZCTldEaFA0ZjI2TzIrenhCMEpYUDFBUzlD?= =?utf-8?B?SlQ2WW0vQklRb1dPTjJEN3Bxd3NIcm5OdkorMW03dXVCckxORzhNbWRPUVh3?= =?utf-8?B?RGNOci9BajhMYVZRWDJ2RlFPL28rUERFNnpIQXJOeVJmK01PTnFQWTlqVGdM?= =?utf-8?B?UnBhbktOZHRkaW5DYXp6NlFwTSsxRFlXbnRaTldxVU1qL2QwWGlvVmFJdW1I?= =?utf-8?Q?gecRZVRMqir/3B8hvciZNOPDM?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 135f781e-6f17-43d7-4e19-08dad37c15c4 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2022 09:11:52.2032 (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: lQz5Fa4TYf6X+/ou5c29P7q/6ZTIGIqA31LtYDVB+RAm6cMLpnT94OP1vpgdF8KMgS89w1FhV4AfkLqBWmvLVA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7546 X-Spam-Status: No, score=-3029.1 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 List-Id: For one, because of CheckRegSize, there's no need to check the size of both (register) operands. And then in process_suffix() check opcode space rather than the (potentially ambiguous) extension opcode. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -6686,8 +6686,7 @@ match_template (char mnem_suffix) && t->opcode_modifier.opcodespace == SPACE_BASE && i.types[0].bitfield.instance == Accum && i.types[0].bitfield.dword - && i.types[1].bitfield.instance == Accum - && i.types[1].bitfield.dword) + && i.types[1].bitfield.instance == Accum) continue; /* xrelease mov %eax, is another special case. It must not match the accumulator-only encoding of mov. */ @@ -7408,11 +7407,10 @@ process_suffix (void) need rex64. */ && ! (i.operands == 2 && i.tm.base_opcode == 0x90 - && i.tm.extension_opcode == None + && i.tm.opcode_modifier.opcodespace == SPACE_BASE && i.types[0].bitfield.instance == Accum && i.types[0].bitfield.qword - && i.types[1].bitfield.instance == Accum - && i.types[1].bitfield.qword)) + && i.types[1].bitfield.instance == Accum)) i.rex |= REX_W; break;