From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on2062.outbound.protection.outlook.com [40.107.104.62]) by sourceware.org (Postfix) with ESMTPS id 7BB7B3858D32 for ; Mon, 13 Mar 2023 12:52:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7BB7B3858D32 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=OG9I500BwjBkoP2KBflRKPnzW4HFUsMCnps//YEom6YuRiJ2Hge+f1XilpLZ/fvt7hVKGFPTJ+9UrJUY1jFpmbFdJCxLt3mb+S6qCFesYOj/ogI7ezhocEZu3NMmh7QgwewNaNGBer0WUtIp3EOJvygAjpYmzSMfcnw7oWeyem7QZ7uscDX5RGWOh7q1epx1JK/Pa3pnO9OVkhWx/lXA6T1Tly4DY0JbITn6az0ebx2RQVIzPN/bl0nAALdgy528FANQgXhCOonBorhMFksH/QCvkz59PzI1QqQJk052f5WwOX2Gep6Iv+XrS97M7ym4WseotfwN/yYOc6GKn9/8gQ== 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=/Bjmv4tKtcEpOxaeHuP8mllKINB4yx+NfTvTdcBnJRg=; b=SSfyu7KZR54X5Dwl3lyCzAcWSzqcuscjSn7J3gTTHLQiEJ/fTHeOm/fX2nXglqbYSe98y7qdvTUXG0S5WBFoZbVjb9XYKxwY7+nuUgJEYYJzYu4/7o/Jg6rn5R3+DOlet3oY/avTt9k/c6R+/h2P68e5n6vPI6ITAt0+Vz8Y4gc56bSZ9i+I1DTQQzGznYZwfXN4BLarTo5m0OqvLtPWdM1G4g3/SVWsYROIEevLNI2S7fEFPEIsmnUQ8FF0NG/tAh2pIYg2Wl80DrEyXc8BALAqXvWP1Ne/bQtDirVuKTO69o4aXUaJUgnQxcm3eJEgAIdhNSbohVXhB7UnrKTqjA== 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=/Bjmv4tKtcEpOxaeHuP8mllKINB4yx+NfTvTdcBnJRg=; b=2FwIrBgnV46CGg7rFzch8kOSKvTKtdH7GrkqZIWkdVbqguBLepO3nNTzqKt+dUirnT0ThfTdAS3AveFc43OVQxhqkPvxauX1ne+CUHEMWl7MvPvuc/eWGy2p3CWqmC39YqBGKcnPXLePbpIppPLUi+7VxUaUaLkLXnetEs3yOvHl27aCnQHO9gxIDR3WOQ7WjEHZV0W6VKA5o/Nf67UBcmCP5pL9hZK44H0mrdj0l9GE2vAncxBQ+zpiN00HFO0GTtuLBogVG87IOE6ZBiD8+slc3nZqqruMCSY0E/JMQGS084JPeF3KQnBqigLumh51eONPXlu57vzHEUNv1jy8VQ== 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 PA4PR04MB7742.eurprd04.prod.outlook.com (2603:10a6:102:b9::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.24; Mon, 13 Mar 2023 12:52:07 +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.024; Mon, 13 Mar 2023 12:52:07 +0000 Message-ID: <0a576110-624b-6339-b24d-907d6df72e09@suse.com> Date: Mon, 13 Mar 2023 13:52:05 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH RFC] RISC-V: alter the special character used in FAKE_LABEL_NAME Content-Language: en-US To: Nick Clifton Cc: Palmer Dabbelt , Andrew Waterman , Jim Wilson , Nelson Chu , Binutils , Alan Modra References: <150b4184-62af-3f5c-c07b-24b0c2ae788f@suse.com> <9f769d26-f51c-4f85-f61b-330226c1cc2d@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR0P281CA0122.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:97::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PA4PR04MB7742:EE_ X-MS-Office365-Filtering-Correlation-Id: efe14c31-1f5f-40f8-d7fe-08db23c1c065 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qaQatBu025qZ7xxXVwJATMQry2rm0VvqEPejwZ8yLAzFZxlsz0dEB1r/Pk2RK6T91CrPZrWeGJzpMXqCba2qB9nZTyAfBeXQCghOiOVfaafDg9MPkzbj3ij54F2rhdww9zZZvII3dZoxPdtDmwYdd/qbuD8is9UONIWQTJvvNMHkw3E371pyYc8gkZi0tlbwiE5c8d2lqqTe96qzpqCdprZ+WRMNnwjXX6tTQbahlJmgGpApOlWDh9VleUxw+8H9lnlnRb8WZW5pRePtijplQUc4LP6FAPdi5GSSoQa02CW2iHdDykEH7bJk7a3Sow/0fqRJwkvjp0J2NfoyecDv7io4zPacLjngSam0vIOubCD5a/1htRmEF9jpMqrsNiqKnOtWSY+ZnFdQSLMbAt4SK201CC8LcGDQZr0sVPjmTPtqPhBP740A82yIawHfX+Kd1iAj9RgCnm8XEkcU/f021CK37NlY7GNmvhhqDFlYt8r6iFptdbfwjh5USK9xyWDq2eRSOQj3somQ8yk+tuWn+8dhDQOZVbEYd983MKDUc/YOjVmDcYHogp9bLBuVcHk1yu3MTtDOGzB9DbqrRgZfy5nkIJ6xNVCxW4vcd7SeaHY11FneK0oPkYiK84iQjBgB4jH38AHBGRZlHBn2KH8EmV6VYlTcs4WZFixwfk794G6W5mJGPdEwxEJodjKXowcyD0c38WwK9lTJ2XTRmGXDidmRTBhTkbwRywot1ET8GOI= 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)(396003)(366004)(346002)(136003)(376002)(39850400004)(451199018)(36756003)(86362001)(31696002)(6916009)(41300700001)(186003)(26005)(6506007)(53546011)(6512007)(5660300002)(4326008)(2616005)(8936002)(316002)(54906003)(478600001)(8676002)(66476007)(66556008)(66946007)(6486002)(38100700002)(2906002)(83380400001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?L25UWWNqS2t5Q1dQeWZFS2xsTUxmcWMyRXBhMUc2bk1jR2EvNUhNNHFUc3Yv?= =?utf-8?B?Y0lzdzBJengvOWQ5U3ZnbWRCUjkzb1IyTk8vVDEvaW5BaE9JRTlrSG5PSTFz?= =?utf-8?B?bi9TK1dRWUpKN3k4UVJYRDF0TjZpRW5IWmRnM2YrbnVPVEd3Uk9qODNrQXVi?= =?utf-8?B?WEFHUHVCSG9RNGhkNHEySW5lbmQ5YmRXREZCSEhZcWFhbjJYRitHamJMSXB4?= =?utf-8?B?MTZXZWRHckNyOFJzbmhXWXp6eWMzQU5ZbDVIYmJBMnRjM0l6VmNmVXZDdkt4?= =?utf-8?B?UWd3YXRlTy9PYkgyV2tzZU5tbENTR1djT2dKa1JITXdwRGtkSlRMbms2dE4w?= =?utf-8?B?VHBSeHB6MlV0VklRZ3hjN25lQTRPWUVuenRicmlzM0RxTTEwcmo5N3dTQW5v?= =?utf-8?B?Y1pBYjdHcmk4QjlWMnBiaU91eW54a2JMUVVVSzZXY0JFU0F0cllnckhFTnZ4?= =?utf-8?B?SElTVVI2NEpBSHZMZDEzVVYvVk5GS3JNa0doTjVwQmJvTTJLTnZXbHFEYUpn?= =?utf-8?B?akhsc1RwYlp0VGpVT3FPV1hIeDVnd004RHVJdmxUTUtuYmRINlVmOUl0SmdK?= =?utf-8?B?UTBhMVJyWktsSjlZTUg4SHVTc2wwbFhLbXM1YTZwMHZQcHhRalE2TFRaemNj?= =?utf-8?B?alJmVXpzeFhUZ1dvWE90NEphL1poNFlyczBndDVOYkFRUjBMeEFPMDVMbm9E?= =?utf-8?B?d09SUlFBa0xqb2doNFNiVkdFQTc2djBtRCtyRE9scnEySTVJTHdDbFMydE1l?= =?utf-8?B?SThZdHdQbyt2bHdhQ052Ujd2RTFEdGZFVDduSm90RDRIdFI3NWszcnM4SmhK?= =?utf-8?B?Z3ZnaC9XQm1nRlNGQjdkN0RKNGVmeVpGN3VqRUFZKy9kK1ZramJSRGk5MG5M?= =?utf-8?B?b2FNZm9HZExaQ0I0VjNEbVAyUC95TGROM1pzb2U1Z3NyNFo3MFJiVGM1K0hY?= =?utf-8?B?b21SOG1IRStKNEQ2bWN2bWoxRmp0bGVVSTZKNlFmdTE1eUhXQWpxRUZwQnlN?= =?utf-8?B?bFozK2JpdVdaaUswS25KZUtBdk9xZGxwaTJPQUU2YTJ0NmNaMlZNZncreGxr?= =?utf-8?B?Uzg0Y1hXRVVjSnMyVmNHQWRIMW5uR1YwaU1tOWp3K25NRHlMUUs4dnBVa2Ez?= =?utf-8?B?TDVxa0I0YjdaTjVkUU5POVN6MkFPMzhXS29GdDZ5RFEydGhkanVlZTNvNzlp?= =?utf-8?B?TzA4NkJCQkNRMWhtMTJzZkxSMU5XRGV4eFpLQWc3cnJKWkhkWXlXbU5nMXRm?= =?utf-8?B?RHM1Y3doTjI1UmJHQis2d2duU3ZxcVFVTUl2UzdVb2gzTkZTRXlxbjlTbHNk?= =?utf-8?B?enBFWGFmT2J5bFBwbk03T2xIa2txM3J2Ukl3M1lqTW5xUFdCQWRYQW1lK0lM?= =?utf-8?B?dDB2c0R4M1JyUmtXRlVXdGMxaXJoN2dwRlJwZDIyUE85bzZlR09hRkFQdElQ?= =?utf-8?B?ZkwvR0V6N1V0MEE2cXF4K0U1eE5hbi9OcXdRcUVXZ1VucnoxejNJMTFEWTBp?= =?utf-8?B?RndaOUs1cVdNcGJXNlpWelhraFI4SFAvSldHV3cxRTAyelVZbjR2TkJteElH?= =?utf-8?B?ZVh5WnhOWFlqajBLeUE2Y0RQZDZZQjMxNVRwOU5XUDBuaEU4NmVzSk81U1FQ?= =?utf-8?B?NGxYaDI0VTZFT1NJWjBQYUFpQ0NmNldFV25ZbG9vWVpXa1VVcnhXdGVtUm1y?= =?utf-8?B?MUpPSmQxdnYwNlNtazFJeW5QOTFWYlBIUXE1dWcrSEhYNE5JVW5TbU1NUXNW?= =?utf-8?B?Zko4VkR6QThwbVFtUlVIZWhnWitsYk5uRHp0ZWEyVjNza2N5d292L0w4M1U5?= =?utf-8?B?TzRXUnpDeWs5cE4vQmxwQ0lINThHeU1jWXphMDZNVUM1L3ZyaXA1WmdMa05R?= =?utf-8?B?TmlyZHczaUpqa0s4RUdXQjJSaXoydTdNUE43Yk44WDE4TXppSktxTkpXeFJl?= =?utf-8?B?cHNMYmtLZHNxTVdPcGJWUW54SlorUmJyVFNVTUxpZ3Rhb0ZYUEF6V05yYW9q?= =?utf-8?B?NE4yZGlBREhmV1BjR2dteEtFSnJWZDR1NWpzQ21NMUNwVzhySXlmWjB3M3RX?= =?utf-8?B?YlpFQytycHROWjc5NGU5WWJ4VnI0ZHpLbjNiTmJaTGJMenNNV0ExQkNXVUhE?= =?utf-8?Q?UH9UtKlYy7MR2ckc5rPINt3Po?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: efe14c31-1f5f-40f8-d7fe-08db23c1c065 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Mar 2023 12:52:06.8023 (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: NOmVkdWnbn96DHZlZqvrP28T55jrRgNY5Dl1r3fKFCh6FlI7vLoAiT1kTmACcub4XWHDAW6Xq5Qrlbz2E/qI4g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7742 X-Spam-Status: No, score=-3028.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,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: Nick, On 13.03.2023 13:06, Nick Clifton wrote: >> On 10.03.2023 10:36, Jan Beulich via Binutils wrote: >>> Considering the special casing of FAKE_LABEL_CHAR in read_symbol_name() >>> and get_symbol_name() I wonder in how far LOCAL_LABEL_CHAR and/or >>> DOLLAR_LABEL_CHAR don't also need recognizing there (and then also be >>> marked in lex[] just like done here). I can't point out a specific case >>> though where there could be a problem. >>> >>> The checking for *_LABEL_CHAR in S_IS_LOCAL() looks to collide with uses >>> of these characters in quoted symbol names. >> >> while the rest of the open questions is RISC-V specific, these two items >> are not, and since from the title I suppose you may not notice the generic >> aspects here, I thought I'd point them out explicitly. Just in case you >> have any thoughts there (if you don't, I'm not sure how to progress). > > Thanks for bringing this up, and you are right, I had not noticed these > generic questions. My thoughts on this topic are as follows: > > I think that the intention of FAKE_LABEL_CHAR is to allow backends to > generate labels contains characters that are not normally accepted as > part of a label's name, but which nevertheless should be treated as if > they were real user-provided names. The LOCAL_LABEL_CHAR and > DOLLAR_LABEL_CHAR characters on the other hand are intended solely for > internal assembler use and should never appear in user-generated, or > backend-generated labels. Hence it makes sense to check for > FAKE_LABEL_CHAR to be checked in functions that read user labels > (read.c:read_symbol_name(), expr.c:get_symbol_name()) and it also makes > sense to not check for - and by implication, reject - LOCAL_LABEL_CHAR > and DOLLAR_LABEL_CHAR. > > There is a special case however. If a backend does not define > FAKE_LABEL_NAME (and FAKE_LABEL_CHAR) then write.h will define them > instead and it will use the same default character as DOLLAR_LABEL_CHAR. > I am not sure why this was done, possibly it was a mistake - it might > have been better to use a different control character, eg '\0003' instead. > Anyway, the header is written that way at the moment, and this is why > there is a (not actually needed) check in S_IS_LOCAL() for DOLLAR_LABEL_ > CHAR and FAKE_LABEL_CHAR being the same. > > So in conclusion, I think that unless a backend wants to use a control > character as a fake label name character, there should be no problems. okay, this addresses the first of the two points raised and indicates that while things look somewhat odd, they really are okay in this regard. I have to admit though that I don't follow why you specially mention control character use by a backend as fake label name, not the least since it's the default that a control character is used. What I don't think you addressed is my 2nd observation wrt quoted symbol names. There all characters can appear in symbol names, and hence deriving "local" (or not) based on symbol name looks wrong to me. Jan