From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2051.outbound.protection.outlook.com [40.107.14.51]) by sourceware.org (Postfix) with ESMTPS id 3E32F385482E for ; Fri, 24 Feb 2023 13:09:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3E32F385482E 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=fEammj6wZCSq+qa07wz3XPinow440VBvg7ojBRdHydEfX7hGBwO0Rc9JCPo6vv9hfPxu907zdb1ny/RzTlqpN0CG099F0Tq0sRV5OSHor2OS/oauPXdwydxrahtEo/6L0fHolqQTJCqLrmNGxFA8JRjRN0zZHNTc2DGlbWesEidUe6YW9MjGwgMe/rdSlQtnmxH064257f+bLZz7aMFTCGmvj+4jevzNbysz6Wqqr+cNPehMZI+qc3khZ75hqqxcmbhwzsym4+PVu3H9l7qWt1s2ov+ctB/MUY0HtgekcZsTpHje8o5aU9L6kbF3hA2l+K7cDErYbm8xI72iml/JKA== 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=VdnxJ1JUG7k8nGJb3qzES7+r39sQK7R2cvj745H5zgg=; b=Wev6y6qRcD3VXSVEPGZReCCy01B3QkG5bCddcHMbM66/hQE4ujNMmnejZHCKOFHaDtNXkbyI/VcuDZF4BzsCphdT9dX/yl523ldhQgx1Wj8yj5YwKgpYXHqk5VLZueBZ4SkX3tH3xo+3NDtVBGSOMgthgfWTO7A05pogTU12YwaCPgNztVcNXCgjIMPDzZtvoN3lZyS8R6VJKpNAiECo7/HyyYdtT+Q37zxT5J3IjesjI9N6bzkkt7jSoDztuA0RUd4NERx8fTxx+VWU5/9kzcA3njDYKwqEoSAOBUeEkULrk2estQOabO0zr63uhkVsU9rkj0uaxZnN4AHhCnFr8A== 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=VdnxJ1JUG7k8nGJb3qzES7+r39sQK7R2cvj745H5zgg=; b=WoxPQap0bUGfxhadNJNFw5mGiLoR9hVx26FN+GFD3xbu5mpSVCfkV1A6orQ3RqMgK3Gw1jMAKfEPuDMy+DkKunWri4yywabquCVP6MJ1y6zfsmSpkWebIh3E7yrp+/kSzQeqht5XmsDNg1OfZEn23BiI1yN62zqFD933IIkp+ZpdhLOwV7q8ayMEXXS2ZMU39PNCs0R2rm31DiwslPyUP0KC/wZhnO2xfObCbuHXVRLfFmVQYu0Mft6bKRg7MTn3/lUdf6UGvUCNgosSvx5dELckZV1NNoqXuUq41kHqqXQhfdlQTU9BJWWXjfbO1Avh2CDuD9+cwAhWqpxl39Gfvw== 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 AM9PR04MB8098.eurprd04.prod.outlook.com (2603:10a6:20b:3ef::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.24; Fri, 24 Feb 2023 13:09:16 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b%7]) with mapi id 15.20.6134.024; Fri, 24 Feb 2023 13:09:16 +0000 Message-ID: Date: Fri, 24 Feb 2023 14:09:14 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: [PATCH 2/2] x86: use swap_2_operands() in build_vex_prefix() Content-Language: en-US To: Binutils Cc: "H.J. Lu" References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0161.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::20) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AM9PR04MB8098:EE_ X-MS-Office365-Filtering-Correlation-Id: 1eb781e0-1970-4983-66ce-08db166854fa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: i/mNGNKYtqIFFOeM/T7acyHjoLMDftKLZVT/33dmEDk2IzBRZ/3OZdOGulcb1FfoIed68aX4DpgYJ3hs/FUeu0jJoLTgY9sLLIMGaCbFmq+CN3HEr0o/JP9t57LI1jycw7XILq2QgRWQKvY/uhO7R6cOWCfjyYvtXOo25eWH2Ed8Ab+xUfh1Y2Lml0FuCMGTOsxVen7zeAjCI7LkiBkvYqK6nNm8JpYu3Fc8kNz7VQ0wl6IG0SPbzABLfrgpdKfnSBX1xRoT39rEOjsmyz6kA1fc6k9S1BtPGiNsCq2qxVrvNePKF5rh8k5v4DA2UNe6pYx720KVD4dXMxLA0/3ea0lZBcuBbS/BCZqgw7X0Tgn1dQgAk7N/8l/AcYKyMuebsDeQpW/bmNxWQfznu026qaLvTq15C5BZKCsr50lHUXHy4U2ntVOnZZtyvnim5J6z+fZHHg8VC4V+Nw7kxqyPl0J9Zo58dtuEz5IS0GVUOq/4TkDLBGdKCP/Z31z+4UOIuIFzDN4uG1PAZXJGxaSlJNAcO+AHn8NKl+gL0RMwhtg9KH0yX7HYdZ3kHHcwqB00XEl5/g/FPxBScM+GHZLRA2CMqpNE/wR7XK85mSXqO1decRmqltk8TZRlDhHiacJDgVYovqCk+D5wezh7wxAyTn+NBUcJQXW1iL3HsfjIlvssEGFH2Q6cDcj2Z1cjS180rfXhPvKPt26hq18HPA+huyGYB7tg3WowwQUflnhRTEg= 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:(13230025)(39860400002)(366004)(396003)(136003)(376002)(346002)(451199018)(86362001)(31696002)(2906002)(38100700002)(31686004)(6486002)(2616005)(478600001)(26005)(36756003)(186003)(66556008)(8676002)(66476007)(83380400001)(316002)(66946007)(6512007)(41300700001)(4326008)(6506007)(8936002)(6916009)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NzlTVVFuRHhUTEE5cGlvanJQeHc3TjZ1ckZyUkJkSEdLNFdqRnV5dWxUbWV4?= =?utf-8?B?Q2kvc3RBWUdEa3hQVFhaR3NydzkrbWd0LzhkbG9nTTBhaGQwWjEvQUlRY2lK?= =?utf-8?B?bGl2Qm5wVXIvUllaZFpCMVBMc2tQb1NndXdHTVFSQ1VuM0dwaUZXbXZaOWNI?= =?utf-8?B?aHl3RDZTMkkxemR5UitRWGpxODRzaUV4UHRRWFVIMG5zZmRkVW81NlJ2SDBq?= =?utf-8?B?N1Arc1VaNjUwK0xjTGhjMWdXL2V5ZlE3L0JaaFM3MW5LTlVyRDNkbnNZMlkr?= =?utf-8?B?NHYrUWpqQXJhUU5LN05UK0dCZE9BWWtWYzJwRXFTeUFTSFFIRitiek9vaEYw?= =?utf-8?B?RThIOUFnZXQxcXIrSlNHUW0xWHc5ZzRTUklLbi9Pb3IwOHhlbzNVOXdwTWRP?= =?utf-8?B?TFN4ZVJDWnF1a3hkS2FpZlJRMXhJTDE3ckx5NCs2SzRDU2dzc2J3QjBVL0sy?= =?utf-8?B?ZDljYUJFUTV0aDZWTXh6MEh6UkRoT1FDYk9tYmFUMDJ2VzliOWFoTGNhSVFp?= =?utf-8?B?OUQ5aVoyV0JNenpBRzlSRUxKQTMyQmpLRzA2RlczemxZYzBHbm5hVGg5QUVJ?= =?utf-8?B?amFYcHczbkVmaUZRdFQxRXV1M0IzREJ0MTdDRjAwbjBwRjVNK3QzeTlPNlIx?= =?utf-8?B?d2FzWVRhQXQxNWF1ejJ0L3oxZk54VzUzN0FYRnNaa1ZlVTBqMkhaT20zYytM?= =?utf-8?B?dlBGazd2UjF0dElRWGZaSFk5bTYxSlVHWjdjTnJSQkJFNjBJQng4cU5hZVFo?= =?utf-8?B?SFluRWhtRUpJeTUyam92cmZBNit6TE1SUFBVWGFCaW5vTUNLL0Y2VjI3SHZt?= =?utf-8?B?NHF3cXJWdHVjaXNIdWVGM1VOdmlUSDRaZUNFdWExZFFwVGE2bnRXOXgxcjhr?= =?utf-8?B?cEpEbS9rMjRxM0o1eWIxRTQrOGNUTWkyRmhZd1Q0ZS9LakJBRXpHV0JvVWR6?= =?utf-8?B?Ukw5WXRtSlRZaUt4d25jcjB4eU93V3VYaFpLNTgyTE5mSjN1Wms2a2lyTDly?= =?utf-8?B?RFZxeWIvVkxLNi94ZEJvY2RRTDE1VVRIYkJyMVhsanA0RGFTQTM1SnNHRUpV?= =?utf-8?B?WFhCTzVFQUVXdjVQMFozaGdWWmVXTENWZWNmZlFuZjVwTDM3NkZFVkJFOUZL?= =?utf-8?B?SlgzVk1kRndOUmkvOHB3YXppcVdEbnBabjlyM3FVYTZQK2lBRCtnTWhZbFl6?= =?utf-8?B?a2VVekVyQVVoOU5RUGhPaldudENQMHBsNjhTZlh0ZzgxY09kdEthOXVBKzhl?= =?utf-8?B?VFFEVnRqRUttM1lDalF6UDdoMlNRL1dMTGpSM1BNelJCOHo5VzBjYW8yZURU?= =?utf-8?B?eUxKdlFpcWc2VGNhOEpMK3JBd2ZRNDhueUZ0ekJzbmFGdTQySHkyalpuZS90?= =?utf-8?B?VmwwdWhVM2tlWGxUT1RKc241NVB2dGgxaWlMdDVUeGFNK0hUeXNpQ0N2VWIz?= =?utf-8?B?ZXRNK0RBYlhONm1BVTFrQTdnakhpTldwcm9iTzJXZUdPcHBYaXM1ak4xdnRt?= =?utf-8?B?SmUyY0Y5TWVBRmdYdDJKWDlEbDBJWFNYMmVWeWRNVEZoeDVRcCt5YllPMTZP?= =?utf-8?B?NGJ0RzBYMnMrczJwRFZQdmZUUmNhdEpaMjZ3RzRuS1pqckMzRlByY09TeVky?= =?utf-8?B?dWMxTmhMbkZuWjdGMmZqMmMxZGswSDgzclQ0KzZ2bFRzTjBnc3FxVFJ0VXVx?= =?utf-8?B?OXRVcjR5L0FRcUhmT3VLRklML1U2ckRsZDV1TXRtMjE4Qk01dDUxWEtnZTcx?= =?utf-8?B?NCtRcDBQdGVQYmJKVmJYNG5IWDN3eDJKWnBCZ3paMmhjN0ZUaDRWVUtmbHdV?= =?utf-8?B?MXZyWkhSQzI3cjF5Q2RBZ2daNVg1OE00d1ArN3NraHhhUWxuMUNVcE81SU5B?= =?utf-8?B?c2xjeWVJV2d2a05HYm5qYzI3TmdlTUhHOHRWL2NRWDJZYlNhNERLSUowOWIx?= =?utf-8?B?L1E4VjNyVW5mbGpXQjJzVWFXZWhnSHhwU1hHaHJweHk1VHdLMG1zOVF3c1h1?= =?utf-8?B?blpPL0tZc1lvTURLQWplemxUWStxWlBoaUxEaU42dlNmYTZ5WlB3YTV1ZGVk?= =?utf-8?B?TlJMdXF1cUdOdlJJc3JWczBiY1lBcmVPL0ZZMUdocnZRdG44SDV6MjBrb0xx?= =?utf-8?Q?J4sasc2WmfafUHQemOK+dlUMz?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1eb781e0-1970-4983-66ce-08db166854fa X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Feb 2023 13:09:16.2569 (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: zEe3y6TUB4ATzpFPtP/I4hwkBSEDebB13pFGv28dngc1/Os4ph+s1ZVHYWvVbUFhN9/Nj8uJsyU3IwFNVkv5dg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8098 X-Spam-Status: No, score=-3028.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 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: Open-coding part of what may eventually be needed is somewhat risky. Let's use the function we have, taking care of all pieces of data which may need swapping, no matter that - right now i.flags[] and i.reloc[] aren't relevant here (yet), - EVEX masking and embedded broadcast aren't applicable. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -3593,16 +3593,9 @@ build_vex_prefix (const insn_template *t && (i.tm.opcode_modifier.load || i.tm.opcode_modifier.d) && i.rex == REX_B) { - unsigned int xchg = i.operands - 1; - union i386_op temp_op; - i386_operand_type temp_type; - - temp_type = i.types[xchg]; - i.types[xchg] = i.types[0]; - i.types[0] = temp_type; - temp_op = i.op[xchg]; - i.op[xchg] = i.op[0]; - i.op[0] = temp_op; + unsigned int xchg; + + swap_2_operands (0, i.operands - 1); gas_assert (i.rm.mode == 3); @@ -3632,8 +3625,6 @@ build_vex_prefix (const insn_template *t && !(i.vex.register_specifier->reg_flags & RegRex)) { unsigned int xchg = i.operands - i.reg_operands; - union i386_op temp_op; - i386_operand_type temp_type; gas_assert (i.tm.opcode_space == SPACE_0F); gas_assert (!i.tm.opcode_modifier.sae); @@ -3641,12 +3632,7 @@ build_vex_prefix (const insn_template *t &i.types[i.operands - 3])); gas_assert (i.rm.mode == 3); - temp_type = i.types[xchg]; - i.types[xchg] = i.types[xchg + 1]; - i.types[xchg + 1] = temp_type; - temp_op = i.op[xchg]; - i.op[xchg] = i.op[xchg + 1]; - i.op[xchg + 1] = temp_op; + swap_2_operands (xchg, xchg + 1); i.rex = 0; xchg = i.rm.regmem | 8;