From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on2061.outbound.protection.outlook.com [40.107.6.61]) by sourceware.org (Postfix) with ESMTPS id 196EE3858298 for ; Mon, 16 Oct 2023 07:54:17 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 196EE3858298 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 196EE3858298 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.6.61 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697442859; cv=pass; b=nasITY64MQ0I7JPmiv6L/EESDuRgY3/4eyA51wjrEdLskZTD6R0vlECYM2PISvH3hjG8w/Ajido/xLZA9Be41yHzxnBsv0EdcUDWfKX1Awhvx19IQ2jP2zf2hFrO+yYt0HRaG5kakT7xD6tRSenBU2CR0pMkwAKCDCtxMVNfzpY= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697442859; c=relaxed/simple; bh=8HiZgyNjIBkv1cMuyskUq5BG8RXh0Ql13YN6A9vfH/8=; h=DKIM-Signature:Message-ID:Date:Subject:To:From:MIME-Version; b=HB5XFEZXdJtTcTgejE4rzOGlnnKbn27MRBkbJTv6gUNl2K0z2ZLmnrPjfAIt19vUeV6ZyLxgcDwqxIPQUxrBiwJXaNuuEGo4RB5z80Xv9fVlFdTU34lVSkoWMXzhPCr4qUvsepx9D9TgzzWmn4nAf8til/IuwHCGGrb2mF5firU= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OkihtAr9PZO9kbA9+GqGneIG+FbF4TBCwNxApxVBOk1105yT6GIJj4o71MKGgcDhdAhu+lw0DMH8cdA3/x//WLOsZMdl/kz9Sc6sKagQ2KS/JMmVuOr7c+CMQA9Y+UxCQYtgwwg9HgLsq8ZJlfWfyBbJJNM8ET6G42+cl2S+jrZUaINU9m6vdyRUx35JHWEAiTLMdAOtYnbwhZ5MJhSN/z8zUfxyrFuiaoCtI8qXuFaynrNNpElOsYHMD7j+xn71Kzg3UzfpR821efCnLZTVM3SC6oZ7BTGa+O+jHU8A+H30e2pgjAmQVd82orHqW12Aeven/aOa4xyK5YWNnrtbtg== 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=hiYTBMLo1Rsu9D7x+64Uvh/o/MnZ2vR7jPrzBtwTKgw=; b=eU7yq1BNnDWax/a1Km5fAMeD/+Kq4ZKTX+bXENIrZuvYaneKkBSKyWXCtcz6A5k+8uoPykFCelT3VRjVQhAa43Ad6H3m3WGBCJN9EAGw3FfiHNptc8KpsJNQCitRVDYdmOEH9SUczRQNF5bCn+hJf94EbsnrjndqnxDvBv0afbp0OAAAvptQReHVtxXwhcutKwrZVnY84MMmDDDLpeALfTyhXiWTGwJAeYbkaQ4yXZwy053G4YKL5MNqQxwL7ro8sZqgHGA2P0qOhPLnQuBRHqXEe0qEfIoaKHoGSywLCzaTI+5ir9ZnWaMHI8JqBVdRL6uIsuuMr+LNV2MP63jXOw== 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=hiYTBMLo1Rsu9D7x+64Uvh/o/MnZ2vR7jPrzBtwTKgw=; b=bbFaeJPBDxhem2pKa5PGbd98tfv7Kcp9fOxnLCVPZaRP0lBqlDRochNOCYR48Xc5gHl90rYCzMK905kYeGyC1UvwCJta1NuxrpYCNQZ2/BOM8RF8fZjU3x/xWud1OPR+f/+nYl1imQFVebPzKttDX73Y7o99NTad28WUL06i8haszmbbSq+ud/JcWarpLOqlzLmc6kJ+fJgJNSJzFGfKjcRfP7HEcuNc/fKKSjeZ0PTjDTIvogLCG/WSnqclar6tJ99kmMVX3vxotVmL90AtLS9U5xI65tbE+KStIRrrqbkYDOY9WDt9gerIt2pY5ePcOeYWMyiJKKB7tNAO+9JReA== 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 DBBPR04MB7580.eurprd04.prod.outlook.com (2603:10a6:10:1f7::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Mon, 16 Oct 2023 07:54:14 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::d9c0:d907:4d2d:15b3]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::d9c0:d907:4d2d:15b3%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023 07:54:14 +0000 Message-ID: Date: Mon, 16 Oct 2023 09:54:26 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 Subject: Re: Regression: operand size mismatch for `push' Content-Language: en-US To: Andrew Cooper References: <97ff5740-5e46-488f-bd08-2d653dfe09b6@citrix.com> Cc: binutils@sourceware.org, tdevries@suse.de, "H.J. Lu" From: Jan Beulich In-Reply-To: <97ff5740-5e46-488f-bd08-2d653dfe09b6@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR0P281CA0227.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b2::7) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7580:EE_ X-MS-Office365-Filtering-Correlation-Id: 7a32fe1c-2045-4935-045f-08dbce1d177b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1yKvIggtoONjUSG3GSdcS8Qpr1JvB8V29DKfvae84sqpYUSahMYqhZzEf1C6TnG/0eR6EYiuVyYuT68h+Z8taMzswTe0BH8wW8qiF6C0vbTSwhQ/PI3mntndepMdu1+HKtKJlDSmRFCwn+YfkhluJFRs4ycFo7laxjla8tZ8ugu8fe3x8D7kW3Y2eSc8SEgZqvjFqaV45xRwPH5/45AysJW5ln4c1KACfqnPTHQQaF/3f259hNvfNeBRUtq6ligx7Yjeb3MIe3C3KiQIvIH1wetZxy7x7Nu/kQ8feupZgYLqhw/ytin4rByMhKf/vcBo4RuQqcKEJyOwHa6Mfwj57iu88pgWnPL+v13o2wQo/zNyCVE4iZ2jZsATrg1snVqd5v4D9QaOJ7zBnAU5A4ggs4Rro5T3V5tLf9PaJjvcwsI7tuioSDAzMYj6Pdhc3Y/PPp3RhVoUYijwH863T/1LDvByR5ll6IxJACxnF4GhhG2eI5tjeUiTFcWGFBFktPhvNO3R1sWlJSmmq+VQz71NWgAWHg8qlbysDStALHGqrRQ4hHdvtdU7tU9Azjd4gIwmTJz7OS/IrPsovXX3tAwI5LM0o4eoMY5un0ICSerRBdcWuFYpRhsfMd8pV9jrZOmgnDvUmRXKBSUem8r4/ZGXZBmnQsP38AyAEDYEwb5/1VM= 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)(396003)(366004)(376002)(346002)(136003)(39860400002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(2906002)(31686004)(5660300002)(41300700001)(8936002)(4326008)(8676002)(6916009)(316002)(66946007)(478600001)(6486002)(966005)(6506007)(6666004)(36756003)(83380400001)(53546011)(66556008)(66476007)(26005)(86362001)(31696002)(2616005)(6512007)(38100700002)(81973001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MURaUGtBMk5PN2NFajdVcS9RSFpwcDBBQlh6TUpqaXRCY3Z3UHhDamYwY0Ny?= =?utf-8?B?UjNybEhEV2RyZ0U5Z25wbG9pT0szbTJTK0pJUXN0YXNJZTN3cnZTY3liN3hL?= =?utf-8?B?N29BdXFzY0psT0dIR2xiT0tDZjY0VGZGYk5JTEI0d0pyaW45b2ZJU3hzay9t?= =?utf-8?B?cTR6S3d6aHpSRVBQRDZudWY1WHVWb1ZhYVpPb2Y5blA1eHd4bDZsMFJiR0VL?= =?utf-8?B?QXplUUU0TkRXWkd4NDVuVTRPYnJZWTdmdklTakdxc0JUcEJEWldWMUNUT3FL?= =?utf-8?B?UUV0T1YyRmRIM3ZYcmN6VVl6bnR5WXBac09XR25oT2JUL1JNTjIvQTFRajcy?= =?utf-8?B?NmZJR0taS3NSVDFMcU01L0J4cXdySTZ5NTJYOWplRCt2aTVpSGN2RWVtcDhr?= =?utf-8?B?dkVlK1dnOGYyTW1jL1hkZUVzUytNZm9vZmljVTFqYUtmTEZpQUlnTjYyVTdF?= =?utf-8?B?Tm8xLzRqSHR4YkhlTFpGKy9OenRkZHVUbVM5UndSWG5pNnpIZTdJVXFOM1hI?= =?utf-8?B?anlYT1J4b2dCNEF6TGYxSXJmem5UdEV4d1dUUWJ2dzFiTlRRaFkyRDZPQVBh?= =?utf-8?B?bDF6dzRiOGNiUXB5ZmtDaDN3bDFBc1ZhdG9Iczd1eUYvUVVCRzhsQkhtYkx6?= =?utf-8?B?QVhvcEV5bUJMTXY3Y2lCRElRUDB3enljdGR0S0pjY2R0WDZNVStJSlQvL3FT?= =?utf-8?B?cjJHaHRkNHhmU1EyMkVqMnF0TkZyQ1lXU1BwTk54SmQyQ3AzaGVJakRTVzFQ?= =?utf-8?B?Ly9xQlJVYTRpUnBDNzVETTB6bVhiRnZzZEF2ZzR0T0VralUxdHMrZU1oSEVR?= =?utf-8?B?RXB1VzBISFgvWjkzOFJjMnVsc2NtNTh0Tnc3djU1Z2tiSHZhVTN5TWlPY0l2?= =?utf-8?B?bGRlNktGMmE1UnI2blE5YnhEaEVjcjF4VnRyaTdYWmVDaXB6RVNObWJPVm90?= =?utf-8?B?YVpIZWFzVFlOU2NNbCtWY3ZhZzJZUGl3Wm1nTmhoL3MwcklaaVRhNG1HUWNv?= =?utf-8?B?cjhPTzdtTkZPUE5rVXNrOEhWUmlLblF2bHBsK1A1SVhzNkNWUU82U0dkUlV5?= =?utf-8?B?bWwyc1hzaCtjblBJN1hXeDZnZzVsRTVBd3NQdW9EUXB5WVRiT3lqMjJhdEZs?= =?utf-8?B?Qjg5UWxyMVNlMjhxTTJxTWhKS2NZT1RhWTRrUFB5MzZpQVpkRDZvZnVnZE1M?= =?utf-8?B?LzgzR0NCNWIzLzN4anRwcHFjOUlmb3R5TXdHRmlnNTlHT25iV2RDMnRqckc5?= =?utf-8?B?L1ZLOFVwVGpxQTAwcTYvVUhxbC9RR3Rqa01DbGRjK2phRE5KMzdaS2N1VEg0?= =?utf-8?B?aENSYnpiOTU5SmkwbWdGaE9QeE13WjlwYjQ1eWlXS0RuU3J6ajR4S0NLakc3?= =?utf-8?B?bWdnb0RZNFZhZi94STlnNlVPUHZ6bW8yUzYzMWlzQkNmMSt6YnJCc0ZGQi9S?= =?utf-8?B?SmNvNW5uWUd1b3pNTko4TG1ERVBrM1drYUNKTkoxclU2bXF3c21wSEFkeFlT?= =?utf-8?B?NEZXUWl2RjI3OVJHZGF2Y2t5WlptVk16QXFsbFQ2SlM0ZGkvQjJnQkwwUmNq?= =?utf-8?B?YldBKzhORjRrZFhSc3BpUWFCTndKRXF3SmkyYVpkNGNxR2Z1ZFhiOXBEQVcw?= =?utf-8?B?WGRiWmlIK2FPQWFJZDhnUGhHdnFxWHNSdmM3UEd0TDIrNFhiMmNFS0pza2Nx?= =?utf-8?B?VW9oYVVkd084OHFoVVJrN29ZZ2dQaFAxcXU1MGdscTZOcHpQRUhPcmFmbHRs?= =?utf-8?B?L2NIcGNRN2tQdVBFM2dJaE01NmZKRXZ5WlZ3Z283d24ycUZIdU03MFN3RnN0?= =?utf-8?B?WHhUV08vcloxMmtjYTRUQXoybEpGNnhERUtoTEVtT2V1V1E0d2krNUVreVhZ?= =?utf-8?B?WEJud3ZsdGZ1WlI3OCtXVCtGZy9rU2EvZkpUQzM4YTZoclc1UUxLSC8zVFlu?= =?utf-8?B?UXVxMnpGeUJYR1YvQzV4ODR5T1ZOUkJsWEJFWXlHcGhaZjQ3T0tTWGh4VzFp?= =?utf-8?B?ZU03MjFjTytmVkdnait5TmxZMWU1djRMVlAralFpM1k5ZmRXMGZrMjlCODFV?= =?utf-8?B?cjlGbHZwSVpVUElramFHM2dteExpSGNSckVMOUp6dm4wVFRIY2RDM1dMTy9k?= =?utf-8?Q?XNPfXHy9Ur/jeb2BXnGRX5vRL?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7a32fe1c-2045-4935-045f-08dbce1d177b X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 07:54:14.7417 (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: M7A8jXCUunL/TqX2x8CWcbXDStyQkzrp18PVNqeEEwCn3zzF/pDZA/oO82WlbX/gkPCHfARDXsq8O1JJXUDMOA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7580 X-Spam-Status: No, score=-3026.9 required=5.0 tests=BAYES_00,BODY_8BITS,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 03.10.2023 22:22, Andrew Cooper wrote: > Hello, > > I think this is related to > https://sourceware.org/bugzilla/show_bug.cgi?id=30928 but I can't bisect > myself.  It did regress between 2.39 and 2.41 > > $ /local/bin/bin-2.39/bin/as push.S -o push.o > $ /local/bin/bin-2.41/bin/as push.S -o push.o > push.S: Assembler messages: > push.S:5: Error: operand size mismatch for `push' > > $ cat push.S >         .text >         .code64 > code64: >         push $0 >         push $1f > 1: > >         .code32 > code32: >         push $0 >         push $1f > 1: > > > Using `push` without an explicit suffix is important for writing > bitness-agnostic assembly.  Right now, 2.41's complains are asymmetric, > insisting on a q suffix in 64bit code while not insisting on an l suffix > in 32bit code. See PR gas/30856 and fb1c10585ead. Jan > For stack operations, there is always a default operand size (from the > operating mode), which is always the one the programmer wants, given no > indication to the contrary. > > The push $imm forms are a little weird.  Stack operations in x86 have an > operand size from 16, 32 or 64 (with 64 and 32 un-encodable in each > others mode). > > The 6a (push $imm8) and 68 (push $imm) encodings look like a > byte/non-byte pair, but do not follow the normal operand size rules.  As > such, the use of the wlq suffixes go wrong. > > The only way of encoding the $imm16 form is via the 66 prefix or w > suffix, which changes the operand size to 16 and also misaligns the > stack pointer.  The l or q suffixes (which result in no prefix) retain > the default operand size, and apply equally to the byte and non-byte forms. > > Despite experimenting, I can't find a way of spelling `push $0` that > results in the 68 00 00 00 00 form.  push.d32 does silence the suffix > warning, but neither .d32 nor .d8 force the 1 or 4 byte immediate > forms.  The form chosen is always based on range, unless there's a > relocation in which case the $imm32 form is used. > > > This is clearly a tangled part of parsing, but insisting on a q suffix > when the operand size is unambiguous does adversely impact existing > code, and the fact that an l suffix is not insisted upon suggests that > this was an oversight rather than an intentional change in behaviour. > > Thanks, > > ~Andrew