From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10olkn2013.outbound.protection.outlook.com [40.92.42.13]) by sourceware.org (Postfix) with ESMTPS id DE3F13858D20 for ; Wed, 1 May 2024 04:13:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DE3F13858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=maskray.me Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=maskray.me ARC-Filter: OpenARC Filter v1.0.0 sourceware.org DE3F13858D20 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.92.42.13 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714536807; cv=pass; b=CkdX9tCb1q5gclkPUE2A1f3P41/bMrTnDy+hjKT5O/SJ5cyBQ6BN4NMxADbIzUbqiX3QIdZE2XigqpbuDPyPDUHd7fJsaAs3PbKoUR1a8LSSwwsmGKEwXHEp4fuzUzld/MZ0ib9T2kXIDrf3izlzNJGGwWLZwxERQ6O1DyOGrsg= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714536807; c=relaxed/simple; bh=fyqLusY/WcX96D7Dp+5Ujo7BfmcRzw0NJWgj602zhOo=; h=From:Date:Message-ID:Subject:To:MIME-Version; b=UV1vDa1am06grfOWw392oi3br+4E3j58SbhHplR3Ff1+kq5Yp8Tkc74Eh5pERVwoke3F9P0AFY37gQkHvcL5EV3zShi1PRs51DzK5zKiGnI+q5NYE5N3gsX7SATlO7tFsrl5N3KASuTrF4g5BaOhD0wMXzECV6XUgFF+cx3E4JA= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c/NFn8BOyitbhs9+WPEC1KW1QeF6MxaqhFhP/VdoKlAN3T1LyjMWLpDjMVqruHyhLuXGJuC8+O/3T0JPvhRFLG4LH1NTU7VVEJRAa1qhOo1Tz6U52C/9VVUkYiz1LQlXTlNmPSm4xmScPwJrjl3Tw7IxicNttBVKbvpKahS6haaCYXjFNygqy2hcBncmcVzC8BlVtAf5TnSKMlivueUeKcoy2Qmu2dCLR0IMttLU9yHDLI7DDlSw4vIlMHZXU8AXVFLDNHHZXh2KebOMgVKIQvyFBpKBvUaDHrNwCI09MoR1ZPV2leIZukiMlheeJDA8QGBEhER/auABY6aN3jCVFQ== 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=vj2yjOFn4L93fzb3JEtSd9IZwiwcIHy+KQHPfXAtBzM=; b=SVvJJsN3zvTLWcvPv6PqgVRHi78vYd3NSuL7wsIEAkN3kOr4K7/pY/1MPq3E3CT7zF3F1USQj5A9fpnwO5gWOlsoDwqhNwkZyaCd1kjZdx6G9lm8xuImRP3fzi2qGiPEHWTZC9QBijqdUtku8SLbzz4E2DSJZ8+QKX1iej7rngLfVdZPnqWtm0l+kGvSRp8Z26/2BChBIXAb0drV1+Ag44XibJ57ElSnD4CxDl2wv1Jdizs6jQVT4LfjPScQ5ruGTv80iZ9iADVovXpzIGUGnbtLAZHhs8CrNP5PbD4vFL7QANtnn2F+U65cwrg7eRqbUxh9rvaVbjsSko0BZfhzHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) by LV8PR12MB9262.namprd12.prod.outlook.com (2603:10b6:408:1e7::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.35; Wed, 1 May 2024 04:13:20 +0000 Received: from DS7PR12MB5765.namprd12.prod.outlook.com ([fe80::3f49:9f92:3fcd:e374]) by DS7PR12MB5765.namprd12.prod.outlook.com ([fe80::3f49:9f92:3fcd:e374%3]) with mapi id 15.20.7519.031; Wed, 1 May 2024 04:13:20 +0000 X-Forwarded-Encrypted: i=1; AJvYcCXJsp10FXLzk0RpBmbUiqc1fj3SXe2YNYOfpS6DuH6WSEafi6JIf2zYZmDNeN5Ik9J3JnYNp+G9XB6UsEa6t6QNVjQAGKxcTQ== X-Gm-Message-State: AOJu0Yz3rQuYAxFttWW/U7dj6skda2YvSWl+RsJ2oum5NneDKMEGw8oR p3h6rFKzuR7SIkHlaXXk7YXyORevir5wSf4vX/19DRe3SVXglJz+74dpuOpL92BUV8VFTG0J4eV ZgG3loiVBOlIPDS+0Ytr3ZrnL2Hk= X-Google-Smtp-Source: AGHT+IFjzfjxe7X/CxyzvjEaR7VB2SjFLcNaNrx5f0eZt2mNBE3D9JdivHXoqsIUIv+Ri2pVRYuyAhUFLzX0gqgb/ps= X-Received: by 2002:a05:6122:3123:b0:4d4:2069:eafb with SMTP id cg35-20020a056122312300b004d42069eafbmr1639433vkb.9.1714536384620; Tue, 30 Apr 2024 21:06:24 -0700 (PDT) References: <20240322082915.3900449-1-mengqinggang@loongson.cn> <3f357195-d95d-4215-cbfb-d9259f660d45@loongson.cn> <4777a681-4d8c-9687-ef0a-85f9243b3dcd@loongson.cn> In-Reply-To: <4777a681-4d8c-9687-ef0a-85f9243b3dcd@loongson.cn> From: Fangrui Song Date: Tue, 30 Apr 2024 21:06:13 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2] BFD: Fix the bug of R_LARCH_AGLIN caused by discard section To: mengqinggang Cc: hejinyang@loongson.cn, Alan Modra , binutils@sourceware.org, xuchenghua@loongson.cn, chenglulu@loongson.cn, liuzhensong@loongson.cn, cailulu@loongson.cn, xry111@xry111.site, i.swmail@xen0n.name, maskray@google.com, luweining@loongson.cn, wanglei@loongson.cn Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-TMN: [7f/F+t9YL+MEZ1m5RFhd/fR3qeglqu4O] X-ClientProxiedBy: MW4PR03CA0070.namprd03.prod.outlook.com (2603:10b6:303:b6::15) To DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB5765:EE_|LV8PR12MB9262:EE_ X-MS-Office365-Filtering-Correlation-Id: c6e27950-85e9-4860-e2bb-08dc699508f6 X-Microsoft-Antispam: BCL:0;ARA:14566002|461199019|1602099003|3412199016|440099019; X-Microsoft-Antispam-Message-Info: 00Sa4GGJ4NmhVvuyrHlG+o+lEhE9pXVbzWGdknNlGq1c963mbJaIDiQ5Fl7oLos5jLF3hTCLNivRltMk19IEhkqhJoBhHhV/Z3tVCQxWI7cDRBWmmRmVEEFws3ExgnBbxhNvAvcvEnZdW/cFk/wbj31JT1lT7C7XPHEckK71bdhwlB5rrCbYlDdawwTMULs6iMh9BUU65erlrSSuZ2fNP/FMGNaLBmRJHPnGZoROiUC8wxFbDGoUg/XGuwC/8ewuIwpbJYr8taXlk6m6+Bksye9yRtXugQnSi8GCOyIB4u/I2g7KbcJDYGhDwMNfOIraV3zkinqtQhxSNpYEMhTY8xXGnxubh9yiSrnC842BMt2P8OeOeh19mIicF+Xv+lq8/IQjKARNPeqqF8UryalzhgiibdyRxhqzemmzE1IBAwt0YbU8r8h4gAHz+5Wi5iYQL37Yt0T//wTXEN0NnIPWqvNc8lmFrMEmsuytfDyzNYO4gkZdodEzuxzpXHxiBP/qvLWlR9i9C16vz9WTCgpE1jdueXz6r/CABy0bJudR2fWUXuddsru1MtFKyOqsFPGi62nrriFhh+y4L7ibx/NzQEsSrBVLLP2DGzHSmW0HB/rPKyoPNFn3QY2MVZ1z/EVC+4bA0FkYG41YurxLQ6FeiGayI0TzaAvGm/sNWPT/hOQ= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a3BWMVpBZDhoSCs5V21SWHV6WmI0Yk9nQkMyK3kycjU5SFM3SS9NdTFzWTlN?= =?utf-8?B?M3lpb2pnNHFJSXA0RHBXTlVmU3d5Smp2ay9ka0xjaG94Y0kreS9vYjVteTZW?= =?utf-8?B?QnpYZysrNEV5WkhrTkFvRXZ5ZGc5UXhqNUtnR0NrRFpZRmV1ckVnU3FmdnZx?= =?utf-8?B?Znd4RnJXRWJXR2NOM3FDYzRHSGVvdTF2d3BVM1pkeVlqSEIybEdzS1h3WFZB?= =?utf-8?B?RmJyMG1RdVkxSE9tNThSQ3dmbnlWczRWUS9VaSs2akNRaFI2TDVPQTQ4UHJC?= =?utf-8?B?bGNlMFE0VlZXcDVwYksvd0dHb1N2RW1YL0U3c1VidjFkVERES0RRN1B5OFVw?= =?utf-8?B?a3E3cVV1SEM2eUNjQmhSaGhzTW13dDJTZlJGRjNnUmFvcVhEdGw5Ym9VZE42?= =?utf-8?B?SjEyeHUvQkRNbkFJZmd1QWM3REt4ZGdhK2xGZFQ4MENHbjVJcnlSNmJyOGpV?= =?utf-8?B?OVkxbElxTExpNDJObk4wUTkxVU5BZnRxZ1FPYTFQL0RDT2gwRVkrbDhXZDBM?= =?utf-8?B?MWV4azVsMDdWcXp0Q0JBRjV0enRackR2dXB4dFFJTTR3VzlwellXMmhMQnhm?= =?utf-8?B?ZndvK3BzM0hkdUJGcmdhWTdWckMzSkptYy9MTUJyRE1WMFM4SWl5SncvUXVV?= =?utf-8?B?TVZGTGNqL0p1cy9kbDZjSkI4WURZK1JndVp1Q1RzOEgySTlLL1BPUDBJZkta?= =?utf-8?B?c1lOWG4rUC85dzBrR280YWZyc0xnNjllN3NWN1ByRjhwNGJld2VsSFBaa1hR?= =?utf-8?B?TWRZNUFQdHVMdDFrSzJHaVRqZ1gvT0RCQ2FGQUUyMUJlQWl3eHBuZ0FONDhN?= =?utf-8?B?TWFPQkU2ZTJ1OVkrQ0RTVW5YMERyNEpyM2srOE1qL1Q4Y2hTcG4xcXdER1J0?= =?utf-8?B?T1JwaHBKTHNyRXZvZEdpcm1KMVowRTYzSWZCUjFOSEMyM1E0ZE8xYUhSWDZY?= =?utf-8?B?Znlzbzd5c1U1QWxvRXZSekdQa2ZNaUpWOHFJMlRUeFlHL0FzNTh4Sit6bXhs?= =?utf-8?B?YmV6VUx3V05qOXk5SjB3R0Z5S3VDaTROY2NZQlhwbnRUSkRteGNIOStvVXVM?= =?utf-8?B?ZktNQVF1SWlQcXUxWS9UMHZJc2FaOVhBamx6RlNXRTBMMVliNnVBS081RDB0?= =?utf-8?B?ZU9VRHRObVlrTVAwMjQ2MHpNaWlNSkFsa25FbW1hc1lLUWR2bWtGNWJRWWp5?= =?utf-8?B?c0hWVUdOUFA3NExIbmVoeWRhQTRkNjhEbXBZMUxPeEx0KzFvc0o0S2xMZENj?= =?utf-8?B?WmQzVlRDcXNUZDRnWnA2UC9YaXMxMmwwZE9ya2dqL0Iyajcxa1J4TW83ZnVo?= =?utf-8?B?TVFNby8wY3lzMm45RFBsWGZRNnlVTTd4dWxpOFVleXRQb3F2bVlSb2ZsNk9R?= =?utf-8?B?NTlQSkpwaEZ0WldZVHAyd3ZWYXdnSnZpM3BJaHAxYThJNUlSVVNQSUE5bHQ1?= =?utf-8?B?N1RTRDd6SVNrR3l5RHZjUklOWnVEY2VnRU9Qc2xNRFdBOXBNT0d6RkdHbTc2?= =?utf-8?B?bDcxZmZBc0NPcVZCV1l0VzNTcnVwM3NlTDBjbFNrSjFERUpTS0lpNlcyR0Na?= =?utf-8?B?QkhwWTBYNTd1dENWc1poQXJFZWFrakgvVjVHUFhuRWFJY04wUEVzRE94aHkw?= =?utf-8?B?UXk5emoySXlmSzhScFRJc3RJU3BDSkE9PQ==?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-71ea3.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: c6e27950-85e9-4860-e2bb-08dc699508f6 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB5765.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 May 2024 04:13:20.3155 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9262 X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_INFOUSMEBIZ,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=no 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 Tue, Apr 30, 2024 at 4:30=E2=80=AFAM mengqinggang wrote: > > > =E5=9C=A8 2024/4/20 =E4=B8=8A=E5=8D=881:52, Fangrui Song =E5=86=99=E9=81= =93: > >>> On Thu, Apr 18, 2024 at 11:04=E2=80=AFPM Fangrui Song = wrote: > >>> I should make it clear that I think this R_LARCH_ALIGN referencing > >>> STT_SECTION with addend align+256*align_limit representation is > >>> questionable. > >>> Why do you break the regular semantics of STT_SECTION relocatable lin= king? > >>> > >>> Can an absolute symbol be used instead? > >> Here just some my thoughts about ABS symbol. It cause more symbol cost > >> in the "*.o" files. For ABS symbols, if several "*.o" files are linked > >> together, there will be several extra symbols. Llvm works OK by creati= ng > >> ABS symbol (I tried, but forgot the details), but GNU AS is not. Becau= se > >> it applies its ABS value to addend (, Qinggang has investigated before= .). > > Elf64_Sym is relatively smaller with just 24 bytes (unlike other > > control structures in ELF). > > To bypass a specific oddity in relocatable linking, consider using a > > SHN_ABS symbol. > > > > You can define a SHN_ABS STB_GLOBAL STV_HIDDEN symbol to avoid > > redundant copies within the link unit. > > Duplicate SHN_ABS symbols of the same st_value do not cause duplicate > > symbol definitions (except mold). > > Alternatively, use STB_WEAK to make the deduplication intention clearer= . > > > A SHN_ABS STB_GLOBAL/STB_GLOBAL STV_HIDDEN and non-zero symbol can be > referenced by a relocation. > A zero or local SHN_ABS symbol will directly add it's value to the > addend of the relocation. The SHN_ABS STB_GLOBAL STV_HIDDEN symbol can be undefined. The linker can define it like other special symbols (_GLOBAL_OFFSET_TABLE, .TOC., _TLS_MODULE_OFFSET_, _SDA_BASE_, __global_pointer$). > rela_normal can prevent common code from handling MIPS relocations in a > relocatable link. > R_LARCH_ALIGN does not need to handle in a relocatable link. I prefer to > use section symbol > instead of adding an SHN_ABS symbol. Then we can remove the special case for R_LARCH_ALIGN when copying relocations for -r / --emit-relocs. > > > > >>> On Fri, Mar 22, 2024 at 1:29=E2=80=AFAM mengqinggang wrote: > >>> I just saw this was pushed as commit daeda14191c1710ce967259a47ef4e0a= 3fb6eebf. > >>> > >>> The addition of the generic elf_backend_is_rela_normal flag seems lik= e > >>> something a global maintainer should take a closer look at. > >>> In particular, I'm curious if Alan, the author of the "rela_normal" > >>> commit (b491616acb5462a3694160ffef6413c160fed10a), has any thoughts o= n > >>> this. > >>> > >>> The idea appears to be > >>> (https://github.com/loongson/la-abi-specs/blob/release/laelf.adoc#:~:= text=3DR_LARCH_ALIGN) > >>> > >>> .text > >>> break 1 > >>> .p2align 4, , 8 // R_LARCH_ALIGN .text+0x0804 > >>> break 8 > >>> > >>> In a relocatable link, the addend associated with the STT_SECTION > >>> symbol is kept unchanged. > >> Relocatable link merge input file text sections into one text section. > >> If a relocation reference a section symbol, the addend would add the > >> section offset in the final one text section. > > This is exactly my concern. Using a STT_SECTION symbol requires a speci= al case. > > > > https://inbox.sourceware.org/binutils/20020506132720.GT3698@bubble.sa.b= igpond.net.au/ > > specifies > > > >> mips is the fly in the ointment here, and the reason for elf_backend_r= ela_normal. > > !rela_normal is weird, and we should not introduce more weird stuff > > (R_LARCH_ALIGN referencing STT_SECTION). >