diff options
author | Jakub Jelinek <jakub@redhat.com> | 2001-12-17 22:44:12 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2001-12-17 22:44:12 +0000 |
commit | ed4de5e2e022526c1d1294cefd2e3c1973d06c39 (patch) | |
tree | a496cf12d353b77f9385b28366c05a080d98f2b5 /bfd/elflink.h | |
parent | f94cac655291999adc7830dc28eebb1434337413 (diff) | |
download | gdb-ed4de5e2e022526c1d1294cefd2e3c1973d06c39.zip gdb-ed4de5e2e022526c1d1294cefd2e3c1973d06c39.tar.gz gdb-ed4de5e2e022526c1d1294cefd2e3c1973d06c39.tar.bz2 |
* elf-bfd.h (elf_discarded_section): Define.
* elflink.h (elf_link_input_bfd): Use it.
(elf_reloc_symbol_deleted_p): Likewise.
* elf64-alpha.c (elf64_alpha_relocate_section): Don't warn about
overflows for pc relative relocs against discarded sections.
Diffstat (limited to 'bfd/elflink.h')
-rw-r--r-- | bfd/elflink.h | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/bfd/elflink.h b/bfd/elflink.h index 13f10d2..f5eb277 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -6551,11 +6551,7 @@ elf_link_input_bfd (finfo, input_bfd) discarded section. */ if ((h->root.type == bfd_link_hash_defined || h->root.type == bfd_link_hash_defweak) - && ! bfd_is_abs_section (h->root.u.def.section) - && bfd_is_abs_section (h->root.u.def.section - ->output_section) - && (elf_section_data (h->root.u.def.section) - ->sec_info_type != ELF_INFO_TYPE_MERGE)) + && elf_discarded_section (h->root.u.def.section)) { #if BFD_VERSION_DATE < 20031005 if ((o->flags & SEC_DEBUGGING) != 0) @@ -6584,11 +6580,7 @@ elf_link_input_bfd (finfo, input_bfd) { asection *sec = finfo->sections[r_symndx]; - if (sec != NULL - && ! bfd_is_abs_section (sec) - && bfd_is_abs_section (sec->output_section) - && (elf_section_data (sec)->sec_info_type - != ELF_INFO_TYPE_MERGE)) + if (sec != NULL && elf_discarded_section (sec)) { #if BFD_VERSION_DATE < 20031005 if ((o->flags & SEC_DEBUGGING) != 0 @@ -8085,9 +8077,7 @@ elf_reloc_symbol_deleted_p (offset, cookie) if ((h->root.type == bfd_link_hash_defined || h->root.type == bfd_link_hash_defweak) - && ! bfd_is_abs_section (h->root.u.def.section) - && bfd_is_abs_section (h->root.u.def.section - ->output_section)) + && elf_discarded_section (h->root.u.def.section)) return true; else return false; @@ -8103,9 +8093,7 @@ elf_reloc_symbol_deleted_p (offset, cookie) if (isym.st_shndx < SHN_LORESERVE || isym.st_shndx > SHN_HIRESERVE) { isec = section_from_elf_index (rcookie->abfd, isym.st_shndx); - if (isec != NULL - && ! bfd_is_abs_section (isec) - && bfd_is_abs_section (isec->output_section)) + if (isec != NULL && elf_discarded_section (isec)) return true; } } |