From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2064.outbound.protection.outlook.com [40.107.241.64]) by sourceware.org (Postfix) with ESMTPS id 491793858D20 for ; Wed, 30 Nov 2022 08:54:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 491793858D20 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=DKo9bullCqnSz2QSrUe06tCE+dwJFn6RWZPPMXyz/QvwQ4d66L1GlWyL/hqKNgmH8/2pVRfLUIoNbHAmo9rr8gwIXCK5Ny/xLiHBt7cZ/vRYgxmwqqUTL0/21gKGQ28CqpemVxcOXNM23/5Vj+T3br0mXJBr96h5+jOymby3/9c3dkFKN/imbpSXGhxYPqIkgaLIUxbX29QL8C6mzDp52CLnunzMuHGILgMhK1cjj6Qbcbu5t8RxLP6nOED3Fg29JB8Zroe6fIW4sH2h04oHtUEdYhe3dobmfJLtBVmpEsvSufVq/vIvrjTKCLvN1e2+vq4ACYxO5M5f6tOdyd3fMw== 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=n62+Fvpqr+GkHXaC3d4jUX+kFzvcXGAOVWe030xtwAs=; b=itKGQNOFWHY/HAtOi1eu7BlXv74NKv2IFcXCnoZtb6NWdLqCbf09Bq3O2B+j2QkRJr7kVBQTz1vrNh/B/O2fu5A98r7rQ/YxSYaeQzKF7uveYSOb0p24qvlfrSUSLbKsadquNmTXCEdURp/5jnWMF7f6vd3g2xXFVTOMoMxbqbgdeHkfpJRs1klJtqSy86uP3bG3Zbbkk4DhBpu7l11Y0JM5Yt6771hDIx2JV48RXTtNGsVU2bt4M++3P0ITCPlG3G3wmdmhjRPv5XWdz2SLQyalgcL53bPkviCr5+k9jXfVyjAaetqxTITL+oZqQAcnIQqFX0XtdCXe69G1FLHN1w== 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=n62+Fvpqr+GkHXaC3d4jUX+kFzvcXGAOVWe030xtwAs=; b=YXo6p0TG+bZxAzsLa90jQ4nkTrOK3pHRfjKAOZVaTnMYwqHrOyNTKHcSilFA16+KU/Nmmu25xg5DwEGF2vBLJD0ucYYkkWnx4KbN8WJecRAGkTQ2pKgO4yfNpw6qr0OGKhq2/ae3yy6bpiKfKz5Ux1yvyZHzdS+H5tL4TmjXwPR2MGjPAV9Nmw6b678L5klfY76aWqK7PGsEv1HHsbPdHkZ7D/ZUSZCvk91NrbiLru8+0LA5rHLVlIjNr4QccBLd8MTS8GCry9WPTJUIXXj1mIa9EAuRdz1W9RhuVAUC6o2zeL7So520d5/YX7KgLYKhKWvJlgrQLLbbMioEFfLztg== 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 PAXPR04MB8943.eurprd04.prod.outlook.com (2603:10a6:102:20e::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.17; Wed, 30 Nov 2022 08:54:44 +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; Wed, 30 Nov 2022 08:54:44 +0000 Message-ID: <3d8c5353-723d-31ec-8efa-ee4fc994eaec@suse.com> Date: Wed, 30 Nov 2022 09:54:43 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 Subject: [PATCH 1/4] x86/Intel: restrict use of LONG_DOUBLE_MNEM_SUFFIX 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: FR3P281CA0007.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8943:EE_ X-MS-Office365-Filtering-Correlation-Id: 1131c215-4a65-4987-574a-08dad2b086bd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VWSjecQxFGIY3Lid7sch989yBTbPay0YJFU255MgiAIr9OZ3I6ky/8SzSQsjNpWk7Kerw2K944JVO3DW38rm4WG+y/KdPmNF809pcjepx4uouSoPc/Pt60YK+8qoVK+96ApBj003DcXka7IMXohSuw4/bMLNgRBQoD8ihcIecsfVN9vz8k/eYxznX0X+tJ3Y1GElOCjSfmqcypqrlebvmTdtLH00YMTVBO3QCidT4zIbZeOay1vVec2wzuuNLQnZrBAUhuW78wt13uocxKvl6b++vzshwvAJ4Ud1xADEdipTPGW/bP1smFJ6nyHsouxURaUgOJ6mD75qr7+3uxR2jyqV+vL1ddrBR/A4MjvBtMZ3HQJ+J4ZZeg/3rFW4t2E1pgdmaxqUKCjzdcjHGZHY9CJw0J5vSnYIjZRk+5C1aHqTXjqmH1Cm1/ISu0rzRhsMedLYgBwR9PsczMFE4ZSmt8pzlAsBoXGle0N75Pq+QK6o7LFz29ys4kCI/e19Ys0SEU19HYLtHwT7cmGeyOeu4P4y3YxAX9Tag6rY2Ph3+TDiUmO4GYcjcPGSADThSkq+VdMXnKuhGRlXOT7oJPG36RTZxep7/Rojw+ijq2FY/OICPErSvgsz9MtbFImHPedkLRyu5UyCU2GGBqetmeZTRlj6SEb42NWah7pDiQd6c5rcjdviK4chKShrElv5pQhb4U4lRrzR+5w+yr5SWQbhD4MKhVYNZOXrvLbYV55+zU8= 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)(366004)(39860400002)(346002)(136003)(376002)(396003)(451199015)(316002)(6506007)(6486002)(86362001)(31696002)(478600001)(31686004)(2616005)(26005)(6512007)(6916009)(41300700001)(5660300002)(2906002)(8936002)(38100700002)(186003)(36756003)(4326008)(8676002)(66476007)(66946007)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VkR4SnBBT2N4N0ZXbGVPT1dKWi9mUUI0VnZ0RTZpczZlR2tjR3Ewd0h1aDlv?= =?utf-8?B?R0kzSmNPVWY1MWpGWjhpK0RxVFphTlp2M0ZSMTAzb09QYXZ6cithTGgyZXJz?= =?utf-8?B?cDhvbjBzMDNoQmRMcWNXeE9aM001QTg5d3FxYVZMdHdYTzMzNUVQcDIwSGR6?= =?utf-8?B?bU5JUFN2S1NpNEREdFlJT1hvRkR3Y2k5NEJYb01EWWxOV3E5YlVUdGpZc01u?= =?utf-8?B?RFNmd1hNbXFraEw4UFBWWEhuSC8ra3huYnF4TFU0UDhIOE1ENHVNcnh5WnEx?= =?utf-8?B?RE9KVTlVYkRMVUtoMS92dTdjS1JKRU1ISzkxOXRlVGQvWFZyWnMvaFYvbTV0?= =?utf-8?B?RzdZcG5WZjMvRWd0KzFQYjNIbW9PSW1jemNrT0tKNUpDaTd3R1NKbGNFajA0?= =?utf-8?B?R1FraGlDQWZVaGpKWDNuR0w0UzNnNDFLdElnNkV5a0NySkN2NUdPaEhzQlpk?= =?utf-8?B?b1AvY2hwaStSdk5ZMXZ5VUZXM3doY3h4QStad09seG14RFpGaTJiU3U2RWlV?= =?utf-8?B?bGlLRUdkNUlBOVB6K00yZUNhRWpHV1ByTWZmblJhL2JuVGQyLzJMaUhiNTIr?= =?utf-8?B?ZnAxWHRzR1hVai9pbTBGM2hucGpiMEpQWUlzdG53aDdFcEh5MlNvUGZudXpN?= =?utf-8?B?YS9PNmNDZ24xaXhaRG1PaEJJbkE0dUZEOW9OZjNUQU94TG14amdPMHh4WW5r?= =?utf-8?B?NDZobWR3eS90RXk4cjhiU2h3WjNZSU0yU3p3L2JoelpRZnpnbGd0c1BkVGZn?= =?utf-8?B?aXpYY2pHQ2VCWUhWR2xDbmZCTHlBbGx4ZFNqNVowZno4YWN4TnVmREZtM21C?= =?utf-8?B?TXlWTmJkQU1vYmFMN3pFd05aT2R5MGFXRm5jZzBKemNBUXVkSFNwczlkTUxH?= =?utf-8?B?SSt2U2RSSGJsZVRaZzNPcmdhamNFUXVrTmZWVTJFNFFZcFdZaTdRZnRmSXNl?= =?utf-8?B?Um5IbndHemF0ekRJY3BDQWRxRU1EZGZXYTF2YUVDd3pHMUdsSFdrQ1NMTWc4?= =?utf-8?B?Zll5VUorSHdBL3pWdzV2R2h4cFJWc3F1ZUdValh0WmRlMEVKdHMrc09RU0tJ?= =?utf-8?B?bGEybXlnYXBmWitpZzdFVDh0ZHpxZ0lyN1BEcXN1SGFtWmZxclE4YnFJWi9Y?= =?utf-8?B?NGQ0MGxIcXB2VTNjcHRNR0FIMlZ5ZFlaeWc2UFpLR0U4VkNzTWRvVWlJUFYw?= =?utf-8?B?TXhpQUNpQnFWbUExckFFcFZ2ZTRFVVdxMXErL1pnT3M0VHl0THpvcERDNXRu?= =?utf-8?B?Z1c1YXNsd05xbDNQTGhxZHVvdFloRVhoUG5yZDh2aS9KVDhuV0NZYnlkMWUz?= =?utf-8?B?NXJYNUZMSktjUnlCYWRtVkpnbjVub2pIYUM5UGEycXhZWFl2bzExeGVTNnBC?= =?utf-8?B?UUV3M01xbjlORHVmWXE2V3ZTa1V5cmdZc21YTnYrY29EWHhMWnV2UDl6NXdK?= =?utf-8?B?bG8wTXFZWjRoS3p1akxtQms0WVYxZWNWME0vYVpVbk5oRFN5Zlp2ZEJzdE5X?= =?utf-8?B?NUZZUE4veW5tN2xTOXN3Y3lZa2gzendvQjVsZmxUQjMvWUR1MTRxWEVVRm42?= =?utf-8?B?SXNDMlYxbzRZT2FUNzhkZjBLQ3ZHZGlsNmZRL3FybzFjb3Yrc21Wc1lpZHZ5?= =?utf-8?B?UDhhMjNkdHV4QzdZQVVLYnZ1YXNiZzl2K0tLR2lJazNFWEFtQWZuVitmeTBk?= =?utf-8?B?cXhwaVhza3p1dEk2OFdZSHc0ek92bktITUhKdEkzWFZ2N0liVFpYZkl3RXJT?= =?utf-8?B?WG1oVllwZU9YNVlsd2VEa1RWVmdSL3RQanRHV1FBbXF6Sk51RFBHMXB6cG1P?= =?utf-8?B?UDZJdldEdUJZTEN0ZFZLUitrcVl2cEhkUllIWHZadkVmOS9Mdnd0ZlNxRVZE?= =?utf-8?B?MnJFVWNkWFplUGNVNWQ2Y0tpdklOVHd0MHpaUEw3L0thWW9JYTNBaDAxLzFC?= =?utf-8?B?U0FoT2prN1NMM2RZZ3lHK0h0dSs5NjNkMVQwNm5yOE1xVUpRa0hHRGhDTjYx?= =?utf-8?B?dE9HU1hid2Y5RHVzT3Y0VHhwUSs0TGtnditzbytJWWxtTEkyZklNRGt5cHBv?= =?utf-8?B?YVo2THF0d0xHcFZVYWV6MXowVS95N0FWRXJ2U1ZwZzh2VFB5RWJFajdVRU9i?= =?utf-8?Q?7zyB6nMRcAJQB8T5zEqKLJ7RA?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1131c215-4a65-4987-574a-08dad2b086bd X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Nov 2022 08:54:44.4229 (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: RmjHlWfSouNiu7PuRAUFoEOSqv4Dmh4kSZZnOvtYuajNx3QthsPYqHd5e8FB2NHeS/E7rucH79Bli10x8EGCHQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8943 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: As a comment near the top of match_template() already says: We really only need this pseudo-suffix for far branch handling. Stop "deriving" it for floating point insns. (Don't bother renaming the now properly misnamed LONG_DOUBLE_MNEM_SUFFIX, to e.g. FAR_BRANCH_SUFFIX - it's going to disappear anyway.) --- a/gas/config/tc-i386-intel.c +++ b/gas/config/tc-i386-intel.c @@ -749,13 +749,13 @@ i386_intel_operand (char *operand_string case O_tbyte_ptr: i.types[this_operand].bitfield.tbyte = 1; - if (got_a_float == 1) - suffix = LONG_DOUBLE_MNEM_SUFFIX; - else if ((current_templates->start->operand_types[0].bitfield.fword - || current_templates->start->operand_types[0].bitfield.tbyte - || current_templates->start->opcode_modifier.jump == JUMP_DWORD - || current_templates->start->opcode_modifier.jump == JUMP) - && flag_code == CODE_64BIT) + if (got_a_float) + break; + if (flag_code == CODE_64BIT + && (current_templates->start->operand_types[0].bitfield.fword + || current_templates->start->operand_types[0].bitfield.tbyte + || current_templates->start->opcode_modifier.jump == JUMP_DWORD + || current_templates->start->opcode_modifier.jump == JUMP)) suffix = QWORD_MNEM_SUFFIX; /* l[fgs]s, [ls][gi]dt, call, jmp */ else i.types[this_operand].bitfield.byte = 1; /* cause an error */ --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -607,12 +607,12 @@ fld, 0xd9c0, None, CpuFP, NoSuf, { Float fld, 0xd9, 0, CpuFP, Modrm|FloatMF|No_bSuf|No_wSuf|No_qSuf|No_ldSuf, { Dword|Qword|Unspecified|BaseIndex } fld, 0xd9c0, None, CpuFP, IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_qSuf|No_ldSuf|Ugh, { FloatReg } // Intel Syntax -fld, 0xdb, 5, CpuFP, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf, { Tbyte|Unspecified|BaseIndex } +fld, 0xdb, 5, CpuFP, Modrm|NoSuf, { Tbyte|Unspecified|BaseIndex } fild, 0xdf, 0, CpuFP, Modrm|FloatMF|No_bSuf|No_wSuf|No_qSuf|No_ldSuf, { Word|Dword|Unspecified|BaseIndex } fild, 0xdf, 5, CpuFP, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_ldSuf|NoRex64, { Qword|Unspecified|BaseIndex } fildll, 0xdf, 5, CpuFP, Modrm|NoSuf|ATTSyntax, { Unspecified|BaseIndex } fldt, 0xdb, 5, CpuFP, Modrm|NoSuf, { Unspecified|BaseIndex } -fbld, 0xdf, 4, CpuFP, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf, { Tbyte|Unspecified|BaseIndex } +fbld, 0xdf, 4, CpuFP, Modrm|NoSuf, { Tbyte|Unspecified|BaseIndex } // store (no pop) fst, 0xddd0, None, CpuFP, NoSuf, { FloatReg } @@ -625,12 +625,12 @@ fstp, 0xddd8, None, CpuFP, NoSuf, { Floa fstp, 0xd9, 3, CpuFP, Modrm|FloatMF|No_bSuf|No_wSuf|No_qSuf|No_ldSuf, { Dword|Qword|Unspecified|BaseIndex } fstp, 0xddd8, None, CpuFP, IgnoreSize|No_bSuf|No_wSuf|No_sSuf|No_qSuf|No_ldSuf|Ugh, { FloatReg } // Intel Syntax -fstp, 0xdb, 7, CpuFP, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf, { Tbyte|Unspecified|BaseIndex } +fstp, 0xdb, 7, CpuFP, Modrm|NoSuf, { Tbyte|Unspecified|BaseIndex } fistp, 0xdf, 3, CpuFP, Modrm|FloatMF|No_bSuf|No_wSuf|No_qSuf|No_ldSuf, { Word|Dword|Unspecified|BaseIndex } fistp, 0xdf, 7, CpuFP, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_ldSuf|NoRex64, { Qword|Unspecified|BaseIndex } fistpll, 0xdf, 7, CpuFP, Modrm|NoSuf|ATTSyntax, { Unspecified|BaseIndex } fstpt, 0xdb, 7, CpuFP, Modrm|NoSuf, { Unspecified|BaseIndex } -fbstp, 0xdf, 6, CpuFP, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf, { Tbyte|Unspecified|BaseIndex } +fbstp, 0xdf, 6, CpuFP, Modrm|NoSuf, { Tbyte|Unspecified|BaseIndex } // exchange %st with %st0 fxch, 0xd9c8, None, CpuFP, NoSuf, { FloatReg }