From 97da0e2677c4a38df2406576428ec27d1da26e7c Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 12 Jan 2022 23:42:23 +1030 Subject: tweak __ehdr_start visibility and flags for check_relocs bfd/ * elf-bfd.h (UNDEFWEAK_NO_DYNAMIC_RELOC): Test linker_def. ld/ * ldelf.c (ldelf_before_allocation): Don't force __ehdr_start local and hidden here.. * ldlang.c (lang_symbol_tweaks): ..do so here instead and set def_regular and linker_def for check_relocs. New function extracted from lang_process. --- ld/ldelf.c | 5 ----- 1 file changed, 5 deletions(-) (limited to 'ld/ldelf.c') diff --git a/ld/ldelf.c b/ld/ldelf.c index 799f779..121c25d 100644 --- a/ld/ldelf.c +++ b/ld/ldelf.c @@ -1607,11 +1607,6 @@ ldelf_before_allocation (char *audit, char *depaudit, || h->root.type == bfd_link_hash_undefweak || h->root.type == bfd_link_hash_common)) { - const struct elf_backend_data *bed; - bed = get_elf_backend_data (link_info.output_bfd); - (*bed->elf_backend_hide_symbol) (&link_info, h, true); - if (ELF_ST_VISIBILITY (h->other) != STV_INTERNAL) - h->other = (h->other & ~ELF_ST_VISIBILITY (-1)) | STV_HIDDEN; /* Don't leave the symbol undefined. Undefined hidden symbols typically won't have dynamic relocations, but we most likely will need dynamic relocations for -- cgit v1.1