From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2069.outbound.protection.outlook.com [40.107.21.69]) by sourceware.org (Postfix) with ESMTPS id 3E5C7385040E for ; Fri, 10 Mar 2023 09:26:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3E5C7385040E 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=lUJNQon99Yd59MHheH9QpU16J9f89VGhvh5mJ4wcQv2RV6sEohBYbc0VYnKE5yzX+8Or/FDhcwB2d8IU1H0sfaCU0V+wGh7FAK6zyMjknSB6bMS6ZvhgIlOoKFxg1J9p1eedwWEjYfyq2RQ/bPaV0+Bup//oqa7FAdbMD9ecxavNxcHrsPc5GNBWZOYU6/pwRouWTSgE28DJW0ZGSJH20zlD5vJSPwyFM6+GCrztj4WqU1+0Me4MplExzj7FZHm6MWZGGyMsysQa/jGLoNPuX1d0IBRARO6OILrtI3EjkO2EwiWR1f2LZr0Gagrd4l70DDwLZgt2bvEb0kSO6ccEqg== 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=PiyxKJzXtkUYSqlI3A4AkT/RBrVoctPlsL6qnF8eqbQ=; b=NomKhd0CSPTGVcaFdRixTGKd6W8rtymMItha88KA2mV8rLFeLBlJpg8/CmamPBZAieBFK6u4u2J6EuxKMkd4tpBf/WSm9mIHI4ylfOLr+LFaSjaiVSvtii+8++0YpZdllQ+RfA6xdRAaf1/3kKZzVB5WQ6hypC/lq+czPdSqbMHXGGdfp6KPBYpTuE3TNy1DOz+XoFF9ELSsqLIUj65sTnblR+xb12wJKYN8AM+UXRKcmSaIkHaY2broUd1fQUzbj5xPY7bicF/BVh4yfwpzvKRjVk+9JwqbcLman6Jea2K7cwZsI/127D43pJ6wJdsSrlU2iYrwGJeBqOxeZgtYPw== 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=PiyxKJzXtkUYSqlI3A4AkT/RBrVoctPlsL6qnF8eqbQ=; b=twrGKpujwpvpthN5EEJ+Zqt8Y282bFHLt4aMiW3btOBlOOit8a9iAuy5F4UgJziJdZM9QnHTHeEFpn/Sss1EE5SM9SqllsUYYoTm6o2/YxN/PmZxpGqnSZyYVl4iUErYZSWFWmxObYMGtVeqVl768dgxcyYbJnWa+9zgFXsg0wuvzbCSqrRXJSUUUf9zspg12cI1CBcHcv5t7k6kpgh3wSj5s+PXBKuKhJEmvzvdZQ0uj70z7SkenxdDC8qXnmi/QBdCZWnzhGMiQaoda9cXi0uTgCMjCaROEYtD4/A3CXN3PnhXpgtHFTcd/8BTSaeE/2Nx7g/l4oZr2uQdegoYUw== 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 DBBPR04MB7642.eurprd04.prod.outlook.com (2603:10a6:10:207::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.19; Fri, 10 Mar 2023 09:26:28 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b%5]) with mapi id 15.20.6178.019; Fri, 10 Mar 2023 09:26:27 +0000 Message-ID: <5352e5fd-d1c5-4267-c802-73d6074e80ca@suse.com> Date: Fri, 10 Mar 2023 10:26:25 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: [PATCH v2 3/7] RISC-V: avoid redundant and misleading/wrong error messages Content-Language: en-US To: Binutils Cc: Palmer Dabbelt , Andrew Waterman , Jim Wilson , Nelson Chu References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0015.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a::25) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|DBBPR04MB7642:EE_ X-MS-Office365-Filtering-Correlation-Id: d5e2ed0e-7e33-4166-2556-08db2149867c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Nbl4Yiq98kMiZASwHVyGgCAuLbBrraCkW12EBLqVkust/2MlvdbH+haI5QoS72lC7H57JuRLc/r3pM1deL4rTWSW0il5Of+IyYiG0xGLjvq7En4Q8GdG89gwXQMaY31FYcf6te3vtak6Te90cx7UuKU5KzJKq1P7dM4sQxspn4z9OLAPmGo4PIomcAwD3kB6kw0xMSKtJ1fPgyqt/Ul7hSY0aqAhfXOTknQ1pG1NRt/bACx8s44aG1AcBSIM2x7jzNvo5S+YHADFjnoE5/u9QVmFhKWecCkGVjKDOkqC5fxlzZ/gvmp+FDBdlqxq1WRl8JM5L3VzUcyw+6t3Z3ghnor25Fhq3UfSgB4foROEsik2f/0f37s2uZxtBzA3dIxMDqcR4tPqYWofOSN8VFW4ZgI9f/qjO5/fkyehMHooBYP5FLDjyuWW6t1Nty4n0qmgCTI/W8+RkwMmKFJqquujd+Twu8MwEr6OzSSmPZtJs8r2K+R5J1DD+ihvXBzpIrG5mi5aagiAerlOUHW2zZApTSnF8BdNYAkyrfVXOFuHdb8RSufze2dxvyAg5nsfk0onDKX7WZL0szz0BOBvu9pdgk/ndo77JWYvJITjDKElEW8DeTzjz+tJWMkhN8yef+ApM81zUfV/8Wbp06A22l0y/yjWzbDpyk2Lct7VxK+wt0AH4z/RAXEwgmYeNtl9rld8wqLQCAY+jFQVoLrtO4lbOL6NPCpbN/N6viLtVbWJ9aA= 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)(346002)(396003)(136003)(366004)(39860400002)(376002)(451199018)(31686004)(83380400001)(36756003)(478600001)(54906003)(38100700002)(316002)(2616005)(6486002)(6512007)(186003)(8936002)(41300700001)(26005)(6506007)(15650500001)(66946007)(66556008)(8676002)(66476007)(5660300002)(31696002)(4326008)(2906002)(86362001)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VEY3UWc3dm9FeGJFbU9RL1pTY1NyVlM0ekx0UXJGKzUvVnhlTnZWWVdYc0gr?= =?utf-8?B?WjJ0VXdacGRJUTNWNDdwMDFFaDZiRGxsSDRlbkt0VWpLRHRENUUwOTZhaERR?= =?utf-8?B?aDlyVjZ4dWE5RHZ6WTE2V1J2eDdaOGhBMmU1aTRWUUR4MlNHYWMzNkUvc0lZ?= =?utf-8?B?dWxHSy9GYzFnS3hTdVVUWHp4dmgxdkZFenNXTVpHeW5Vc1JxTGtDMmx6ZE9V?= =?utf-8?B?RDE1WFRnVWdEQlZIcjNmMWRQZ0dHU3lFUUJ6bGxBMmRrVlAxT1hpRDVhY1Vj?= =?utf-8?B?cjhEVlhVeVRtbDgvclFXcG5zYVRYTlNGL2FDSDh5MkJ3YTRYNWgrUjdmSU5X?= =?utf-8?B?UWJ3MGZqcjBGSUVSaUF6Z003RWdON0JXYXk2Y09OUHR4RDgzWlh0bEZuN2t0?= =?utf-8?B?NGtsUG9jYlBLUUZ3eFJiTHp3VmJnSWFBMVZKVU4xREExMDFqQzFqZW94Z0Zn?= =?utf-8?B?V2tEdVQwR05iNXRVRVJ4MmdQd1FPbXFsQStKUUtIL2xJYU9yUG1ReVp4U2Er?= =?utf-8?B?MFlmYWNBdU5KY2crendNOStTdllKL0lzUnY2TDVIYWNrb3diNzI2ZG44dkF4?= =?utf-8?B?UGpXYnE0UEZ2bFBQdDJUOVFtcU4xNTlwaWxQbW14Ym1zTVdXOUduOEFJTFNh?= =?utf-8?B?eDBEWmpvNklvQU5NZ3ZRSnl6TlJrUCtEYUwzd1hCQUlRNGw3eVZIREtrbGZO?= =?utf-8?B?aFRjaS9xczcxZXJuK1I0MytpNWtOTk9vaEkxMmoxS0tyWTc5TzFkUkJ3TlBP?= =?utf-8?B?bWpnWVk2TWdyeFhvamJXK3Zld3NodU1wY1pxSyt0NXp2S0VRUVhTZFkva1g1?= =?utf-8?B?amxxNlpFbnptdXlaK21DekpHTkNmaDdVdGVIbW5QTFFzOC9vTDVZS3hzdGt3?= =?utf-8?B?YW5EL2IwMkcvN3JZOFlRVW9COElFcWIvTkcwRjMyMlhPZ3RkUVg4alcyUXZH?= =?utf-8?B?RkpCQm1VdHdKZWpGNGxMZkxVQ2xNY0tqZndoeWtWU05UVE04bS9QQjVlK2I3?= =?utf-8?B?QlJyWFRZNHZidWJDWVZCcU1xUHBETWFleFVMeDZXODdTQTdyUzJpVkdQQ0tG?= =?utf-8?B?OVdyVTdUTjdBYUFPK1FlNTg4UnRKWE4zUHdNY0x4VnpSRDdUMTJLeTlJMW94?= =?utf-8?B?WSs0VnJkdWoxbnVXQjBPU0VhV3BtZk1BeURrT0IraDJqampMc28raUFnNDBK?= =?utf-8?B?WlQ0QU5PUnlHcVFSYU4rRi9ReUZKTUl2bFdUMy9qODFicWFjZkVtMGhaODJX?= =?utf-8?B?ZFdWN1ZzNkpSNmFBUHZCNGZ0aWVIRWtzRDlBSEVETE9Wd21PZVJJbG44R0dn?= =?utf-8?B?M0hMb1hrby91b1pvOGF3VlppNnljbjcyRUFOUHlKNmRqSHAzUkxGZWZRUWxi?= =?utf-8?B?elIzN0R4NW5udFhuQmRqdHQ0MXo3MGJFSm51ZkQwbmJyeVEyQmdGK21tZENs?= =?utf-8?B?OFlhcjVHbEszKzFySnRzbTBLYXhrTFFMdHFqN3BEQ0JOaXFjWndYOW9tdE8v?= =?utf-8?B?amRHVzBOUjV1TnV4R3NZMUdXZGJpbTFxK2pMS2Q4ZTFhTWtnRFhFeW42NEph?= =?utf-8?B?SlA3Nmh2SnE3RytCZ2lvdnZETFRSSDdpbUtnblBTRlVvWmlndEFhVS85V0E2?= =?utf-8?B?TUdXMVdlR3IxSTFrUjBuc1ByTU94SlpydkRTWUpndlZDVGZRT01md2ptNFlr?= =?utf-8?B?VXU5cVBkU1JuMFJDMFAwRVVpVUd6NDc3eEcrYkU2UTlQb1FrdjNtZmtwSm8r?= =?utf-8?B?eVBrMVRNd1dqVjBiMm82azA0NytZUmJpTWJxSExidjFyaVBveFc3dUhUNkRE?= =?utf-8?B?cjV1K0dNWlhOZWVqUXZVQ2hZOWRIWTdCTTlUbUthSFk0LzZwTG5BUDlrQmxR?= =?utf-8?B?bm5zZGhtTHl0WVFtSkhMNHhqRDErRXVreXpNV0pHbTN6S0dSalVURkEwSTk0?= =?utf-8?B?bTltKzdCNGhwRVNnYjNESGFPbFM1QzY0YzliR05zSG9sdFR6WGVDb1FmRDhj?= =?utf-8?B?VlZkSWhHL3BXY0JMUGVnc1JFSDZaN2tNcnBCSDFaa2VFWEQwc2VOOTB3TlZI?= =?utf-8?B?K0pwdVBqc1hDWnRaM1JCaFBDRWxiWnhMSmVhcm5YQzV2Q2l6a1I5VXNYOHN6?= =?utf-8?Q?+otASqunNHs+36cjqkPlMQvkt?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: d5e2ed0e-7e33-4166-2556-08db2149867c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2023 09:26:27.8012 (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: CKCOVBRC/8p0W1h5DmiEViclVRsXJgUp+PLjQ11y/U/E97WBrAX+EJtreU07ZQqMwh1uyqqx7unotnzcq1Zlbw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7642 X-Spam-Status: No, score=-3028.2 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: The use of a wrong (for the insn) relocation operator (or a future one which simply isn't recognized by older gas yet) doesn't render the (rest of the) expression "bad". Furthermore alongside the error from expression() in most cases the parser would emit another error then anyway. Suppress the call to my_getExpression() in such a case, arranging for a guaranteed subsequent error message by marking the expression "illegal". --- Of course superfluous "bad expression" errors remain for format specifiers where my_getExpression() is used directly. I guess once the GPR special casing has disappeared from my_getSmallExpression() (see "RISC-V: adjust logic to avoid register name symbols"), both functions could be folded (which would also eliminate the unclear split between when which of the two is used). --- v2: New. --- a/gas/config/tc-riscv.c +++ b/gas/config/tc-riscv.c @@ -2265,6 +2265,15 @@ my_getSmallExpression (expressionS *ep, && reloc_index < 1 && parse_relocation (&str, reloc, percent_op)); + if (*str == '%') + { + /* expression() will choke on anything looking like an (unrecognized) + relocation specifier. Don't even call it, avoiding multiple (and + perhaps redundant) error messages; our caller will issue one. */ + ep->X_op = O_illegal; + return 0; + } + my_getExpression (ep, crux); str = expr_parse_end; --- a/gas/testsuite/gas/riscv/tprel-add.l +++ b/gas/testsuite/gas/riscv/tprel-add.l @@ -1,4 +1,3 @@ .*: Assembler messages: -.*: Error: bad expression .*: Error: illegal operands `amoadd.w x8,x9,%tprel_add\(i\)\(x10\)' .*: Error: illegal operands `add a5,a5,tp,0'