From patchwork Mon Nov 6 14:22:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 162030 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp2690981vqu; Mon, 6 Nov 2023 06:22:22 -0800 (PST) X-Google-Smtp-Source: AGHT+IGnB9iaAsS30Tc2MndJvjS/h6sQOEj3qgQWTLEYVjmj8r0e0RUI9PaGE/D6pdLWDh1P+y54 X-Received: by 2002:a05:622a:19a2:b0:418:79a:e350 with SMTP id u34-20020a05622a19a200b00418079ae350mr38024532qtc.23.1699280541786; Mon, 06 Nov 2023 06:22:21 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1699280541; cv=pass; d=google.com; s=arc-20160816; b=y+imSCOTNdU7olyeJNyOaBm7MOqyB7ps/bp4ai6KStu5nRsAD5lOqgKU1I5avHxlab EfeC5GcQvjTfKUmfPg2/xLbvDSztxyTf+xpkbpoesZ6CEaormOzyGeJuXn48DE0GXc0U slRh6aGsKmAMFjudRq4f0OHmhMlsGjTCA0BWfWbCJZXkn9nCs6T/YYLU2vRn7K4SXYTN f0u46h892IXg7X9JgwFWRImjLU+36T+GAs6pPFOhHBxwBjPJpgvsWEAj348dTn2RUWuI 86NjXo+NQciFyjpmMW41qHzloIU94mENRReuiy0U0fDIkLayoH55D+W8d1vdx9wJ19CF aH3g== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:mime-version :content-transfer-encoding:in-reply-to:references:cc:to:from :content-language:subject:user-agent:date:message-id:dkim-signature :arc-filter:dmarc-filter:delivered-to; bh=5oXKe39eMIfjOJimxdb29iLEOtpJqKMZfo3tcmYksFk=; fh=2DbSPqOhyO7CNtGa024QKgSiHKlKGVt2h+1rlgWLnZI=; b=CG2dInaYmXGtpsN/Ioq+WsN6SREqgN91rohF75pwtsqInx/3eFsDcHPuijXbppHaF4 CX0BDKiCpj/VsjtT267EyiC6aPeGMxn4Bj7ukjYlzWGhZh+RCw/YrjszDl3HQVy2JO/N qnDScgTL10/FENciec9wjjQSxtnIEaR3s4B+MRVjMrukc3/mCkVEtW4oXi3JtD7UejpA Oxs9N/VGP+x71J/Rskxgidd5jyvn3RzD37Rur5Fg3VZL9tV0QiNjGbYPJh+iVkcWD8F2 tp7GkKQIahRGPYbCZsZvjEOLY4jVfIf4KcVPCt+YlkrbTor+/6htvDG+Qb+2s8trBdrM rPVg== ARC-Authentication-Results: i=3; mx.google.com; dkim=pass header.i=@suse.com header.s=selector1 header.b=KHYUk2Nr; arc=pass (i=2); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id b2-20020ac85bc2000000b00419900396c6si5613838qtb.207.2023.11.06.06.22.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 06:22:21 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=selector1 header.b=KHYUk2Nr; arc=pass (i=2); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 898E6385DC2B for ; Mon, 6 Nov 2023 14:22:21 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on2043.outbound.protection.outlook.com [40.107.8.43]) by sourceware.org (Postfix) with ESMTPS id 3C18F3857B93 for ; Mon, 6 Nov 2023 14:22:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3C18F3857B93 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 3C18F3857B93 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.8.43 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1699280538; cv=pass; b=aFOckSZTWMAbLy9cFKpC9e6XIAc75vSsrD6B+Ig+Jc88a71CyZ/eHlpsLKKZdljRSPjlwn9uTKzhZfA2+8sPZtT5h8SuTnlVXLAfSdtxM0Gmvf1TyMJQ9Mx3J8LQgogboalLPbTz9Bj2RLWZ7qyDiaBlXkiRNggTE71Tkvpbddg= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1699280538; c=relaxed/simple; bh=Tl7uLyKdlPesGt1saDolOerqW4hTn+tjhdxt6vEvLGU=; h=DKIM-Signature:Message-ID:Date:Subject:From:To:MIME-Version; b=Wwe7tVkFwpI+wJjAViGb+bRNDE6xOd90S9AS1cKW7QCFtcZMXyoRu2CTlYAyo9gUhcSusETmdCYLjp8yQfWEGNth3BgERJDEFzxR1feDXEiY7YcQg0XhbeYjJuwEEBZFD1H804tUYLlr8X/s+lGXep8QmGtfX6ta4e1/Ozv2rqk= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dg4Dsrq7LBRQVQI/mgITHkp9hJcjzJv5wLbOJcTn+8IntcVSX5Zp3mOXjEmN1khmD0Rpe1g7wzJdEzoQry+iMuaiNAE7ZFBMo5EPr8Nhrng+FfSyivZQxXhfhpNgA7HDtFHJLWsBU1twT1VLm6KuH4zdhBQYdlK5wnpo+zv5u+V6223mpgQEzJkSKLvV7sfXQ3BpodRW/R4CLyuLahX/d9ongwElK7T95AZUbH9jQuE/lZcwBS620ryWgMWoNoUZwIm4cQ5MsXtXyhDnIC1zyuupgImvFFb0dtj7KFAEdqlHrzF+WIAYJ4uH+hqLXec6VGs/SR45mWbIknZC0al6xA== 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=5oXKe39eMIfjOJimxdb29iLEOtpJqKMZfo3tcmYksFk=; b=jG1yqSGVeFDwlj9idFSwe3pt3k/7SW+T6FQscXjRPRrOzb1iUTAWsxZQlbruhN//H6VD3vsl0BkpBjDyefTbTKc+HQgqDAm513RpOr1pk9+Rgyv65lhpTDIA87EgDtO2gGbJIWPPxIxSMLKUvNiRyRwfxZDJCsx0gl3Z+N/CgOZpgtl715YLMAjLByw3KJ/EtRmyjhkyxCm/kJP8wxcCn+uq9CL08Wy3i3ootMmwzc0Ckxd6J4z8O10bXPUWO5kjYIpyE4kImjaqlpSc+toPaut06+vchzEqfqWwvRlKr/5uAn2YG+dnUJMPt+1r/XUed5zzur3Dw7BKZ2ZqueMeTg== 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=5oXKe39eMIfjOJimxdb29iLEOtpJqKMZfo3tcmYksFk=; b=KHYUk2NrQWAccQYq5VLbd+yOsYaHCmQhiS+K8aGU4Rw0+FhR03Gy8V0NZo6IB3K3ALTjaJ+GOsa3Mhdx2HDMb8OtvkjPW4j5ncFdRt5+DPBdvAJO1IAP03V4FMZhUqlj5tFSwkfYY9dgNUWGYYFh9Dd43gAC2Z9WVn5dwU0Xu99KQJWmXHiI7Bl4g6fjr2SddVAeAiWecFZ2d0lLdfXIFTRymw+zD7WRz+a6DoF82eTH0RCIkoKw1S/S1pTTw49zkT1cXMFcRubhGAAnEsA9Ng8XmzSwH+JTyRd68Gk1+ELxv2Wwe71iT27RTFcjkZ6+Iq4Otl0OSg+DUxNIXozP+g== 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 AM0PR04MB6802.eurprd04.prod.outlook.com (2603:10a6:208:184::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.13; Mon, 6 Nov 2023 14:22:14 +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.6977.016; Mon, 6 Nov 2023 14:22:14 +0000 Message-ID: <56e9550a-91d3-6849-0f3c-ad0559371de1@suse.com> Date: Mon, 6 Nov 2023 15:22:12 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 Subject: [PATCH 1/2] x86: CPU-qualify {disp16} / {disp32} Content-Language: en-US From: Jan Beulich To: Binutils Cc: "H.J. Lu" , Lili Cui References: In-Reply-To: X-ClientProxiedBy: FR3P281CA0082.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::8) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB6802:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f447217-fed2-43d2-6d92-08dbded3c5bd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fX6E3opOKZ0Tcd/CEK/rxbHfc9I6qio11KuHikZiT1nwO15dmQs5tteSybPKifyyFztVOfQpPriqgXZnsMXgjEoI81Mv06yqrv6MVI5+j8QaxVlJ5Iw3gZ2uylEKFU2DfSnr9wgCqQJ+EmyYWzVA7rGKMxl1LkJnBJo67qDz8nE+45sUmMg5q5f0UxXlYV1SJ3ere2azbwA/O8EloSCC7Ea9JYw3C5HCoa6f12GVLlGiREyVJ6JtYc2PF43UozCiZTyrFCNjOVg+FUZ0DR53KzHOPYsbAr3qanor1X0WLO4v2sx62gX+BCS6IyDaKEXewYZoR7LRtC2xZChiSNLIoSJt85KIQHBXOjxMKaZM3qz7F5a66bVQZQw/322Ge6PuiqFI8MiulGBisP0DkB0GrlbUyGoDxdkGalXldoKZNli+jyyGXFJZtIfHaFlHH4wriOg+Zr/XhA3p8WN1xfqNclLrTAuwgPQV2sXllVJi5+OCj1/SD4gw+XxcR0I1FiDethoj3gXZCURYmqFvfX8Tu7KYwtST6lNJpH4GRkArz+OlwCTFsVzVoF6o8nV8qgmJIMf7ag2ZNr/1Qzd9qyySYGr/OExxX/ngkZgE6jf757hdcXQolrJhKjmkQYiJR5ZNjFFrNBQEYQ/ogCD+PuIF6Q== 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)(396003)(366004)(136003)(376002)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(31686004)(66556008)(66476007)(66946007)(316002)(54906003)(6916009)(31696002)(86362001)(36756003)(38100700002)(83380400001)(6512007)(2616005)(26005)(6506007)(8936002)(478600001)(5660300002)(4326008)(41300700001)(2906002)(6486002)(8676002)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?oMhY69XYjn8CPlsMqR2HmFZBV1Ip?= =?utf-8?q?Da81u7mXuGeMCrtojYEHgx3mznLxYaJhG7zx7B3A2cxde0e6kmitbuStMTjljPZ0X?= =?utf-8?q?+y4NZQwFtIIPvbqc8pcrJCEhpM2R6sNZ4Z3KZDBLpUHWmumquN9J8e4ITJ73ic1bB?= =?utf-8?q?h//2xXtrmGD6oywmhosvpBNUHSo/sJvGubMQaTbszPoAu1uhfnNJvBMi1E9gz+fUB?= =?utf-8?q?MQ2O4fhS5S13rv40t5il3VqQ4K7pKAUSNtLnn2zqD7Wi8AmkGZXpCDAPLZ8l/RCi8?= =?utf-8?q?2CRccGF6/rGGJILUzgL5xzBJjFku2Wl7Uoue4OrmmdEJWiLtpG14J7t+pxW2U8T5y?= =?utf-8?q?H5/3/VVGsb1l5GdkXKDFXV+RPEy6Hyg9LmV3R1Y0XFWXMOrI3cRs8MWqDn1oeyhM2?= =?utf-8?q?Pea2JzQxqlHpYFgG6w4n+X3iMV+nsHE50rMs3nUutt9770FyRWchZ3aceUjbuZ9xk?= =?utf-8?q?DHx+1DDfZXkrSSDmPpTxZAz8xp0+cXgdmGB3md3DnIMnfbhyAZa+dX49RnebEqVSD?= =?utf-8?q?VDqzzaSPBDhxtDvoWeMaGQGTjsCj7jbWmEZAqWDiET+ay411vU1MCsfETtZ2sa1JH?= =?utf-8?q?T4vVEmaFmfzJ8/AezdwCmAwmGGvYR1TxaJqcRl57UU8td58Qr7Ynb5HdUpTuthGS7?= =?utf-8?q?Ux7PfkCMP6okYbdV6Bir/kq2LzwglMrUvgm7ED1dGqtMGREnKXjZ2anRo7LyhMXSw?= =?utf-8?q?wYG/ZmJDfWEnpxWd6NxXt3sSQXdz5K3Lc5zw2XSKquNAE3AZtPrgjaGMOXXJ+w01A?= =?utf-8?q?Ez9ifjqKqqB7fHjpaP+HX7xachFgLN4kDxjQfhcbCfU/5cbSixYKKaPvSlqdFlcK4?= =?utf-8?q?CZsPnWyo5jP+yz07xvQ4SLaYiYUJXXXrLHq+ulTbyIP8GFAZJgZTTNHsjQNYh8ZS/?= =?utf-8?q?BPRbuA+HNCtiOapVqsxzvfKWG57+VNHnLN9n9CZlWjKexsVONzzVywyjJQyBlo8JV?= =?utf-8?q?O6R/177CLJUhjmZmlUNSjKBfmymSIxcOpMVQJ0rSHVqgnx9l4qbEs+1dGDpBhl8BA?= =?utf-8?q?kQoXdpYwbPkxnZWyvSJOt9EzbC74hsWiVUhqMs832Yp+8KQgUHTSrOr+aXAkqCKTa?= =?utf-8?q?6kGuR05MO8V8hQwdkn2N1b9687MAGayojrrB74hMiDhSz2WQTqfvl/pTeQ5dyjPQT?= =?utf-8?q?o0eVY7Zou32NOS17DLtt0y2hL8/BwyXC5oSwATI1tY+/Wof9UTrJYptBee6QGK7uS?= =?utf-8?q?KdE/qdCIuMOBh2xvYKDTxWrM3AMARsOFN0VNVyaNWwDGatwTKp9kzhW2oasvih5lp?= =?utf-8?q?18FY6Az4DbkYv6y+KS3PpFWWazb5gVlvTO8M8itCWXOnk/Ne3aHWGkCTcxC8A7C8A?= =?utf-8?q?AOuZbwv5sDx9Guj7xHLZJqVPOD2nysyx9cid6iSNZoDhjbbXch8QChusOotJG4/Ip?= =?utf-8?q?90Svy4z7Cifn5OFCN45ON2Wc4XXVjQkCFYXuNexUQlfPaehTeCycDillQuOgbMIVn?= =?utf-8?q?RX6i6Q26DkPadbMC9eBP6xpHuir9N4ZcjTY1aw1zleIexHSS1lkwjmr/jy6kU2VO4?= =?utf-8?q?fosB/welvwal?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4f447217-fed2-43d2-6d92-08dbded3c5bd X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Nov 2023 14:22:14.1229 (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: 8g0IsnJv+5+QN7prow+P53tD4KTJFbcGmStGFH8AoqbimSu7hKgRhGxTwkoIg1htwv3ZUM6DxUlCMCMtaK04Fw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6802 X-Spam-Status: No, score=-3026.6 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 X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781824793557877183 X-GMAIL-MSGID: 1781824793557877183 {disp16} is invalid to use in 64-bit mode, while {disp32} is invalid to use on pre-386 CPUs. The latter, also affecting other (real) prefixes, further requires that like for insns we fully check the CPU flags; till now only Cpu64/CpuNo64 were taken into consideration. --- While this is consistent with i386_index_check() diagnosing wrong {dispN} use as an error, that and the change here aren't consistent with documentation saying "prefer", suggesting such prefixes - like {rex}, albeit even there not fully consistent, seeing the error md_assemble() generates when used with VEX/XOP/EVEX encoded insns - are ignored when impossible to fulfill. Otoh the change here is consistent with {rex} being refused (rather than ignored) outside of 64-bit mode. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -5781,7 +5781,8 @@ parse_insn (const char *line, char *mnem && current_templates && current_templates->start->opcode_modifier.isprefix) { - if (!cpu_flags_check_cpu64 (current_templates->start)) + supported = cpu_flags_match (current_templates->start); + if (!(supported & CPU_FLAGS_64BIT_MATCH)) { as_bad ((flag_code != CODE_64BIT ? _("`%s' is only supported in 64-bit mode") @@ -5789,6 +5790,14 @@ parse_insn (const char *line, char *mnem insn_name (current_templates->start)); return NULL; } + if (supported != CPU_FLAGS_PERFECT_MATCH) + { + as_bad (_("`%s' is not supported on `%s%s'"), + insn_name (current_templates->start), + cpu_arch_name ? cpu_arch_name : default_arch, + cpu_sub_arch_name ? cpu_sub_arch_name : ""); + return NULL; + } /* If we are in 16-bit mode, do not allow addr16 or data16. Similarly, in 32-bit mode, do not allow addr32 or data32. */ if ((current_templates->start->opcode_modifier.size == SIZE16 --- a/gas/testsuite/gas/i386/prefix32.l +++ b/gas/testsuite/gas/i386/prefix32.l @@ -10,6 +10,13 @@ .*:20: Error: data size .* `vaddps' .*:21: Error: data size .* `vaddpd' .*:25: Error: same type of prefix .* +.*:31: Error: `xacquire' is not supported on `i386' +.*:32: Error: `notrack' is not supported on `i386' +.*:33: Error: `bnd' is not supported on `i386' +.*:38: Error: `gs' is not supported on `i286' +.*:39: Error: `data32' is not supported on `i286' +.*:40: Error: `addr32' is not supported on `i286' +.*:41: Error: .*disp32.* is not supported on `i286' GAS LISTING .* #... [ ]*1[ ]+\.text @@ -40,4 +47,18 @@ GAS LISTING .* [ ]*26[ ]+\?\?\?\? 3E8B4500[ ]+ds mov %ss:\(%ebp\), %eax [ ]*27[ ]+\?\?\?\? 3E8B4500[ ]+ds mov %ds:\(%ebp\), %eax [ ]*28[ ]* +[ ]*[0-9]+[ ]+\.L386: +[ ]*[0-9]+[ ]+\.arch i386 +[ ]*[0-9]+[ ]+xacquire lock add \[esi\], eax +[ ]*[0-9]+[ ]+notrack call eax +[ ]*[0-9]+[ ]+bnd call eax +[ ]*[0-9]+[ ]* +[ ]*[0-9]+[ ]+\.L286: +[ ]*[0-9]+[ ]+\.code16 +[ ]*[0-9]+[ ]+\.arch i286 +[ ]*[0-9]+[ ]+gs inc word ptr \[si\] +[ ]*[0-9]+[ ]+data32 nop +[ ]*[0-9]+[ ]+addr32 nop +[ ]*[0-9]+[ ]+\{disp32\} nop +[ ]*[0-9]+[ ]* #pass --- a/gas/testsuite/gas/i386/prefix32.s +++ b/gas/testsuite/gas/i386/prefix32.s @@ -26,4 +26,18 @@ prefix: ds mov %ss:(%ebp), %eax ds mov %ds:(%ebp), %eax +.L386: + .arch i386 + xacquire lock add [esi], eax + notrack call eax + bnd call eax + +.L286: + .code16 + .arch i286 + gs inc word ptr [si] + data32 nop + addr32 nop + {disp32} nop + .p2align 4,0 --- a/gas/testsuite/gas/i386/prefix64.l +++ b/gas/testsuite/gas/i386/prefix64.l @@ -3,12 +3,13 @@ .*:7: Error: invalid .* `addss' after `repne' .*:8: Error: invalid .* `vaddss' after `repe' .*:9: Error: invalid .* `vaddss' after `repne' -.*:14: Error: same type of prefix .* -.*:15: Error: same type of prefix .* -.*:18: Error: data size .* `addps' -.*:19: Error: data size .* `addpd' -.*:20: Error: data size .* `vaddps' -.*:21: Error: data size .* `vaddpd' +.*:11: Error: .*disp16.* is not supported .* +.*:16: Error: same type of prefix .* +.*:17: Error: same type of prefix .* +.*:20: Error: data size .* `addps' +.*:21: Error: data size .* `addpd' +.*:22: Error: data size .* `vaddps' +.*:23: Error: data size .* `vaddpd' GAS LISTING .* #... [ ]*1[ ]+\.text @@ -21,16 +22,18 @@ GAS LISTING .* [ ]*8[ ]+repe vaddss %xmm0, %xmm0, %xmm0 [ ]*9[ ]+repne vaddss %xmm0, %xmm0, %xmm0 [ ]*10[ ]* -[ ]*11[ ]+\.Lrep_ret: -[ ]*12[ ]+\?\?\?\? F2C3[ ]+bnd ret -[ ]*13[ ]+\?\?\?\? F3C3[ ]+rep ret -[ ]*14[ ]+bnd rep ret -[ ]*15[ ]+rep bnd ret -[ ]*16[ ]* -[ ]*17[ ]+\.Ldata16: -[ ]*18[ ]+data16 addps %xmm0, %xmm0 -[ ]*19[ ]+data16 addpd %xmm0, %xmm0 -[ ]*20[ ]+data16 vaddps %xmm0, %xmm0, %xmm0 -[ ]*21[ ]+data16 vaddpd %xmm0, %xmm0, %xmm0 -[ ]*22[ ]* +[ ]*[0-9]+[ ]+\{disp16\} nop +[ ]*[0-9]+[ ]* +[ ]*[0-9]+[ ]+\.Lrep_ret: +[ ]*[0-9]+[ ]+\?\?\?\? F2C3[ ]+bnd ret +[ ]*[0-9]+[ ]+\?\?\?\? F3C3[ ]+rep ret +[ ]*[0-9]+[ ]+bnd rep ret +[ ]*[0-9]+[ ]+rep bnd ret +[ ]*[0-9]+[ ]* +[ ]*[0-9]+[ ]+\.Ldata16: +[ ]*[0-9]+[ ]+data16 addps %xmm0, %xmm0 +[ ]*[0-9]+[ ]+data16 addpd %xmm0, %xmm0 +[ ]*[0-9]+[ ]+data16 vaddps %xmm0, %xmm0, %xmm0 +[ ]*[0-9]+[ ]+data16 vaddpd %xmm0, %xmm0, %xmm0 +[ ]*[0-9]+[ ]* #pass --- a/gas/testsuite/gas/i386/prefix64.s +++ b/gas/testsuite/gas/i386/prefix64.s @@ -8,6 +8,8 @@ prefix: repe vaddss %xmm0, %xmm0, %xmm0 repne vaddss %xmm0, %xmm0, %xmm0 + {disp16} nop + .Lrep_ret: bnd ret rep ret --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -890,7 +890,7 @@ rex.wrxb, 0x4f, x64, NoSuf|IsPrefix, {} // Pseudo prefixes (base_opcode == PSEUDO_PREFIX) - From patchwork Mon Nov 6 14:22:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 162031 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp2691640vqu; Mon, 6 Nov 2023 06:23:27 -0800 (PST) X-Google-Smtp-Source: AGHT+IHzrHkVNsLpumhZIZ2XBAT39eZUWbYIfxhmi4aamgwtiq217Okqj7JAvOSzFXgMEZtHTsWP X-Received: by 2002:a67:e047:0:b0:45d:a10f:cb5c with SMTP id n7-20020a67e047000000b0045da10fcb5cmr6725002vsl.18.1699280606792; Mon, 06 Nov 2023 06:23:26 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1699280606; cv=pass; d=google.com; s=arc-20160816; b=UH3yKR9R/jNT4zkOVF6SAWTSNOWyJbTEsnlkNp8qt+1kVAv2a3+JNH6DH8OqdbU/PT dyQC9YvBLTMS60DWtEw5bs75xzn0Hv1hD0wUK1EVf+BLIlJeuF4QTIshIPm9t4EKLGEb SvbU+pClf6ikpfTXTWFBd/nbFwQuyxrvBOQ+8Z0MnrpngLs7xJHUGpXkro01TH0cyGkH m24l1iuJjyGyDIepjMx5FMaZ1Jaghhf/ZSggQ3XpxctV9oVfSOw9OAg8BoCinrAjDiRr tjG/ytukRIDjlgE7tDZ9lEMqizFIfREgQ2igH1GlHdog4vCrXOrb59c7aHDiC9ujvd3m Nk2w== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:mime-version :content-transfer-encoding:in-reply-to:references:cc:to:from :content-language:subject:user-agent:date:message-id:dkim-signature :arc-filter:dmarc-filter:delivered-to; bh=eeVhyyeFP19ot2WtNqKaFVlkhQ5hohbYb4oP56DM9bs=; fh=2DbSPqOhyO7CNtGa024QKgSiHKlKGVt2h+1rlgWLnZI=; b=HeOFhf7ko7chylYCfOYe8W8nbodS3W0XOHj5Fj9A6aaZEkMsKCdKDXNUxr2JVVylpm lPCkzol24joA50w6EBJewm5g5HY7xPK7QUDoHQNaP0N3giGZgF8iMIRBopCOf4MyAFPo avGlreysynnGu/YGWFvjczbyIRZ3UXOpHkuFo4CjZMnMaoI2Q5EzdTdRPQPKtzNApQSo T/+hNKTAoGCUNXgixt4BMPtUTDrl66cix62LaIBYI+tM3sjax/wAI8SWklwiAwBbAGeO vXsqwRPGQfkByDiGlPiDmbTBgzZIdUKG+sDVID+MgTi8b+ldwxqyqx0XpopIcQvQx22H O6dA== ARC-Authentication-Results: i=3; mx.google.com; dkim=pass header.i=@suse.com header.s=selector1 header.b=XL9H6a+E; arc=pass (i=2); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id fj25-20020a05622a551900b0041fe91a38a7si2174651qtb.527.2023.11.06.06.23.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 06:23:26 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=selector1 header.b=XL9H6a+E; arc=pass (i=2); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2B78738618B9 for ; Mon, 6 Nov 2023 14:23:16 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on2083.outbound.protection.outlook.com [40.107.8.83]) by sourceware.org (Postfix) with ESMTPS id 5977B386186B for ; Mon, 6 Nov 2023 14:22:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5977B386186B 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 5977B386186B Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.8.83 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1699280572; cv=pass; b=hGrto2FAxFczgccNPc+6gvBTPBfJiyPXUv+cHaxWkaezkt3XV6Ags3jSw9WGXKpntgcIlcSO2yoVr7U4m+YBY6wL+cnOBYa/cjbQP55yXqonE3J30bHae7zSrdaYW6WWoeC1JGdLkOMINjh5SosWP02b7OLVNUi75lChjO3r42A= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1699280572; c=relaxed/simple; bh=mo/zFE47HiXlW38zAoyeACN/LJxU802TO4pUQ2v/7jA=; h=DKIM-Signature:Message-ID:Date:Subject:From:To:MIME-Version; b=Uyieux8BcJCcIK4OSP0PH1iz9Xh9LmgGFGOO07c+pmOCqxrlIhp13/dvQIKmllWZWMIYfWZCxlZpB9aWj/X/iQ1ZQIOQYJ/Yn/Je9G+qnRmgrxEMxKokd+NCgnrcWkTrKH39dHobtCTosoOQNO69zeXbK/00Wr6Rr/FlXKuPcSM= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GiCsUIjNqArLMH0L+eiMPBfzmtYBhVp+4nGavvFDKZGak3RjgF/gaKUOx9Pnxa8wiIuWOF3nZfhsCh8Lg6FHE4gGohI0vQqxofjy26ESsu1GyYWwwzRu0nAWyP5uVZaENXPdycxRnWeMmQy4I3Nzz5F+TkpjHiVHl7gnqDAhCU6YeI7uLEI6TBqaGjd8yMXcl8jrB1WWmIukNdhFq4YUSH4Uff+MMQRSe/Xq211DrHy4jdb03CUv6wnqwh20qIcDy3JsWLpJ5tZL15nuN8IJWoyqtpe6BoTXCR2XUgNNY5WV5wdcrV8F13j8y4Qm0MobRYpvoBMEZ8i1SlYw40nEfQ== 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=eeVhyyeFP19ot2WtNqKaFVlkhQ5hohbYb4oP56DM9bs=; b=J0OK3h8t4Qx+unyVx4RYfOYY6t0bFZ6eF5RpGnrexc7/4tdUosO5d6/ulrHg+gd+UCRl+g5yR3GHTfrGn1jSdAQPa+C+0nYeUOPYlVIK1WiVYWFDzhuz4MIwZF6BVOTlgNvCsxmnLX0425WURjH5gtrixvDXXZx2hyb/4b+uTvdQEejl0e9X+dnv2qayfuhuv1qBOK8Zop98e/Zjplvob7dQhwFoASG8GueKTkRbFGSiGj6a7BpjdhKZLLyVlY+rBgMqZsRBzA3263Y1wUuHWh1fAvYwfSjjJaF2LlSD84snjrPoH9s7bseaKsIsqHHIztNEEYQBv2fRt8601D+wjA== 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=eeVhyyeFP19ot2WtNqKaFVlkhQ5hohbYb4oP56DM9bs=; b=XL9H6a+EqFrGFYvr9KCdzOyZTnVbOuOggE82SVOVd4v+5i+961MLOsHA56Di5Q3IAI1M3lVTwwkUDi+Z4I5Q0isOASAgNenb/043w16UMQEG9nT0j5QM8blGINN0pKD9Nll1f/z+LVEM2ntpCI+hAbLmEG+KcskKCa5TJqBGO5C+cF4MqYuAMD6rIZfsyWnSSMap16xuLP06KO1C/UB9ag/t2FWParH0M6EfbR7OqyWTkYqGxLQUXd84bBVTiUUK/CJEo2d3yk1JveXB+1keN5KTPgIB1r92D5W3XZMwdJpg4NlYhxd8qWPQcCSN9idXUUciCq/XNd2ttXAAhPk33A== 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 AM0PR04MB6802.eurprd04.prod.outlook.com (2603:10a6:208:184::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.13; Mon, 6 Nov 2023 14:22:49 +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.6977.016; Mon, 6 Nov 2023 14:22:49 +0000 Message-ID: Date: Mon, 6 Nov 2023 15:22:48 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 Subject: [PATCH 2/2] x86: don't allow pseudo-prefixes to be overridden by legacy suffixes Content-Language: en-US From: Jan Beulich To: Binutils Cc: "H.J. Lu" , Lili Cui References: In-Reply-To: X-ClientProxiedBy: FR0P281CA0172.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b4::14) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB6802:EE_ X-MS-Office365-Filtering-Correlation-Id: 82c5fdc7-63e3-4214-4a3a-08dbded3dac5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: esGkgeJR4ggYPuOwOGAeZPSAdDGuILvvs4mO96JuwTYNEwylxoluJhxlxVGJsXHaLmwSoHVRwGY2PdMmdWufrUQHyWTenJ/eqm7xzkM3qdgYBO26tDTqFhS+cDL+YBQeWZEUa/+hHu15M7K7djzewiSgpU/aSIb38X/OH1LFaNHu3TVX78QU8n52uQNVwvTZ7LEf+1hWIyrpCKs46YTI8cFmIMvK799Xrw4L4zxoLctK6H8Ref9VuvkCvnrrUThCnvcew3ZSvaz42P2Zot2YrXvJt0ykUGVTjBZp6FQYRdb3LvsHhD8naB+fG3+PkeM/8to7jvUpsNgwM4pUFu9hemLstwH+UXm3e0BVttnQtFGtJ3sa+j1PsG9jz1rfI0OiBHz2E3s0mg3OMgI+XsNJXRBwYYFvzf7q7gVII8+uSJiCyzJFNvPBJcuu0GjQIdS5xPGQDhNDv2BRRolUNSA55KnB0+J8igZWvKiCJn/zKYLMygQg+0glSb4EtQkXIvxid6sjvm+pKQ675wSLkAY+4P3IErRNP6zM0BqdMqrwBGThhQl1Mqc6hBjUjPfz+iLYXCqdwblulgKHq7fOgPMHA/HNCK7UxVf2aQlK4uKUz1QDLIkTGzNKhXIYgF6Qyg0+Nvzh2s/7nftM9QTOkzVCpg== 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)(396003)(366004)(136003)(376002)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(31686004)(66556008)(66476007)(66946007)(316002)(54906003)(6916009)(31696002)(86362001)(36756003)(38100700002)(6512007)(2616005)(26005)(6506007)(8936002)(478600001)(5660300002)(4326008)(41300700001)(2906002)(6486002)(8676002)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?Jtr8UwEmi+HpUSKs0dvjar3mSLIB?= =?utf-8?q?rJrL/w2pjsxcN4h0JqDJV/r9Yi+8lSkxSbJSWHKALRCTFdjjYt1mIvJ53XXLeYQHy?= =?utf-8?q?uqOO8v21EFFh7TIdD7VKiT5zSKrFx/M2FJCWlVJpWHsMwhrn8iwcoO3xUyCC5r7W8?= =?utf-8?q?W/wv89SeXPoHKR8KckyEKPCTemMmzzuT3WOm7J3rajaOLH5v0jOHZfOsAChwFFpKf?= =?utf-8?q?vH90tfdGQs9/nXw0opp8Oyua95hAzkXuj99ZCWufyiD6oW3P60XZgv69lRyhq2uKn?= =?utf-8?q?f+vl8Cd2bcmMThI8LyyxWmWgT3IryVKmg4/+5Vez8T/zcsd0EiEKiNKVQyaWxLA/N?= =?utf-8?q?Mf8Gd4ZcnrhfmOZ/qNO6G+EZo0dwJC61OLkBXm+SbXLJ+Mh2wLGSgIrjHn5Fb9eZN?= =?utf-8?q?wi9xc/S+vym9hW8GIVIxtcZapHiFN9OYAeudmdMlEbUrFf2rOiF3CHglicQRqlfvs?= =?utf-8?q?Oc2x7lzYp6LZXCqa8+Nu+9TCSPlK78j9nQCFzpwEoIjgQilglLaRrUHhpZTElYl7a?= =?utf-8?q?yNMrOp0aQr1RcODO1AiXlY4XDewgi24N16bB3YwmrH2LWENnMEWtkpuGmEoOdQ2Ap?= =?utf-8?q?KCJFCVEJSb5vzAdBM9AG/+TGMtgQtmeXWo/tTLH9nTSgoAW3SZqpmlFOAslE7Z+fB?= =?utf-8?q?XfW+N6lhl1WfkqTITXXmIU+OPX2h+Xbz0jHVysc9kNJEA4ke5IkwF53BG5VBpJST1?= =?utf-8?q?1PXAA1BBevxtsDPsSoEx0P02CLiyHfr3dz5mqGLxL4qOZbdC8Fl1p8Zx+ox8SvG0q?= =?utf-8?q?sqYO1Q4L9fOIGXU9cV9CO/cap6eqGe+Dix51/EvoApuddIDhXvu9Aj9Vm6BFUfvNw?= =?utf-8?q?9Zru6Wpu72U0ipnHGoNGpiovOEgbvxDXRzuTdZYd+AyIsGt4AqXx6tbl1XtmA6FWa?= =?utf-8?q?C7jLJxKxnyjL/6h5lolKl9Zehw6tLUF/a3sOIRJk/Xbe5/BGkA1mFACaBeo4HxXg5?= =?utf-8?q?Bq27DIkDFNfQ8+C4iAh2o4vYp/RDHQoU2GApVA9aG94sYGqdrnXAtIy6XG9ddj+qg?= =?utf-8?q?Dbk68EvFHcCaIvpVFfmQlG83Gp8KyfkSymyIZVgQW7oo/sxX8q/MD1RII9PdGm40L?= =?utf-8?q?EZ9obO2hl7tIFmTWLtkHAQc1Iro3Q3DJkR1Hu475t8fQ0UtqXY82W/lAgLWywqhCV?= =?utf-8?q?pZTCA76gbcM5DPdiLWbqi09VS3iuetGhgn3VZc3ucU37v5mJ2z1gvuXDofWd8nTEY?= =?utf-8?q?Y+V34+pqsaHaYBFGFAJSmKdaKxuipXGVRF89169A+hA+uvS1n4ZLFq0VcckyKOXnd?= =?utf-8?q?eFwu+NRk6LwAUMevcTCadtWQBJslwu6QYjdqqc1kQkbdW1wMbA3EvwyYv8H8mIOmo?= =?utf-8?q?dk3oPmocE7p5w8lkK7key7IqWLf8irAqpT6ZJ1nOcfofc9K2kYLm0OfUMuF2vpql1?= =?utf-8?q?v4xKtk32Kr90spTNKH4+9S0Tla+0YF0jvoYNcWl76TwzKmJnMzvRbV8JoTUQzai0D?= =?utf-8?q?XGYHLSorgggeC1oeXFzgfPD1YTFhbwAFez57qSF6BvF1HIw56/P2j8QlXzUCocsqu?= =?utf-8?q?q1aAkGOlaCUT?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 82c5fdc7-63e3-4214-4a3a-08dbded3dac5 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Nov 2023 14:22:49.4645 (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: y84i0WKZ8xZDthG8hXDUhRtucysGjugrNm4Hz5phsL7XX5NwyMyp9KcbHn7J1ioZuDwvSMXob2B6z+da2DdBOg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6802 X-Spam-Status: No, score=-3026.6 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 X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781824861610313083 X-GMAIL-MSGID: 1781824861610313083 Deprecated functionality would better not win over its modern counterparts. --- We could be more strict, in disallowing legacy prefixes when any pseudo- prefix was used. I further wonder about us accepting .d32 even when a pre-386 CPU was selected. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -5899,16 +5899,32 @@ parse_insn (const char *line, char *mnem Check if we should swap operand or force 32bit displacement in encoding. */ if (mnem_p - 2 == dot_p && dot_p[1] == 's') - i.dir_encoding = dir_encoding_swap; + { + if (i.dir_encoding == dir_encoding_default) + i.dir_encoding = dir_encoding_swap; + else + as_warn (_("ignoring `.s' suffix due to earlier `{%s}'"), + i.dir_encoding == dir_encoding_load ? "load" : "store"); + } else if (mnem_p - 3 == dot_p && dot_p[1] == 'd' && dot_p[2] == '8') - i.disp_encoding = disp_encoding_8bit; + { + if (i.disp_encoding == disp_encoding_default) + i.disp_encoding = disp_encoding_8bit; + else if (i.disp_encoding != disp_encoding_8bit) + as_warn (_("ignoring `.d8' suffix due to earlier `{disp}'")); + } else if (mnem_p - 4 == dot_p && dot_p[1] == 'd' && dot_p[2] == '3' && dot_p[3] == '2') - i.disp_encoding = disp_encoding_32bit; + { + if (i.disp_encoding == disp_encoding_default) + i.disp_encoding = disp_encoding_32bit; + else if (i.disp_encoding != disp_encoding_32bit) + as_warn (_("ignoring `.d32' suffix due to earlier `{disp}'")); + } else goto check_suffix; mnem_p = dot_p;