[PATCH] ld: Don't check EI_OSABI value for input SHF_GNU_RETAIN section

Fangrui Song maskray@google.com
Sat Feb 27 06:29:05 GMT 2021


This is consistent with how ld handles STT_GNU_IFUNC/STB_GNU_UNIQUE and allows
other OSABI to adopt SHF_GNU_RETAIN.

	PR 27282
	* elflink.c (bfd_elf_gc_sections): Delete EI_OSABI check.
---
 bfd/elflink.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/bfd/elflink.c b/bfd/elflink.c
index 7b74f2653c2..150feb9c93f 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -14078,8 +14078,7 @@ bfd_elf_gc_sections (bfd *abfd, struct bfd_link_info *info)
 		|| (elf_section_data (o)->this_hdr.sh_type == SHT_NOTE
 		    && elf_next_in_group (o) == NULL
 		    && elf_linked_to_section (o) == NULL)
-		|| ((elf_tdata (sub)->has_gnu_osabi & elf_gnu_osabi_retain)
-		    && (elf_section_flags (o) & SHF_GNU_RETAIN))))
+		|| (elf_section_flags (o) & SHF_GNU_RETAIN)))
 	  {
 	    if (!_bfd_elf_gc_mark (info, o, gc_mark_hook))
 	      return FALSE;
-- 
2.30.1.766.gb4fecdf3b7-goog



More information about the Binutils mailing list