forked from Imagelibrary/binutils-gdb
bfd/
* elflink.c (elf_link_add_object_symbols): Don't set up merge section data here.. * elf.c (_bfd_elf_merge_sections): .. Do it here instead. * merge.c: Formatting. Remove unnecessary casts. Expand bfd_get_section_alignment macro. (struct sec_merge_sec_info): Rename "first" to "first_str". Update use throughout file. (_bfd_add_merge_section): Rename from _bfd_merge_section. Update comment. Abort on dynamic or non-SEC_MERGE input. Don't test section name to determine sinfo group, instead test output section and alignment. (_bfd_merge_sections): Add struct bfd_link_info param. Call _bfd_strip_section_from_output rather than just twiddling flags. * libbfd-in.h (_bfd_add_merge_section): Rename, update comment. (_bfd_merge_sections): Update prototype. * libbfd.h: Regenerate. ld/ * ldlang.c (lang_process): Call bfd_merge_sections later, and only when not a relocatable link. (print_input_section): Handle SEC_EXCLUDE sections. (size_input_section): Don't update dot on SEC_EXCLUDE sections. (lang_do_assignments_1): Likewise. * ldwrite.c (build_link_order): Ignore SEC_EXCLUDE input sections. * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Likewise. * emultempl/hppaelf.em (build_section_lists): Likewise. * emultempl/ppc64elf.em (build_toc_list): Likewise. (build_section_lists): Likewise.
This commit is contained in:
@@ -4127,28 +4127,6 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
|
||||
}
|
||||
}
|
||||
|
||||
if (! info->relocatable
|
||||
&& ! dynamic
|
||||
&& is_elf_hash_table (hash_table))
|
||||
{
|
||||
asection *s;
|
||||
|
||||
for (s = abfd->sections; s != NULL; s = s->next)
|
||||
if ((s->flags & SEC_MERGE) != 0
|
||||
&& !bfd_is_abs_section (s->output_section))
|
||||
{
|
||||
struct bfd_elf_section_data *secdata;
|
||||
|
||||
secdata = elf_section_data (s);
|
||||
if (! _bfd_merge_section (abfd,
|
||||
& hash_table->merge_info,
|
||||
s, &secdata->sec_info))
|
||||
goto error_return;
|
||||
else if (secdata->sec_info)
|
||||
s->sec_info_type = ELF_INFO_TYPE_MERGE;
|
||||
}
|
||||
}
|
||||
|
||||
if (is_elf_hash_table (hash_table))
|
||||
{
|
||||
/* Add this bfd to the loaded list. */
|
||||
|
||||
Reference in New Issue
Block a user