From ecca98713a19ac7aac31886b4b15b806e63d9a99 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Sat, 15 Oct 2005 14:57:55 +0000 Subject: bfd/ 2005-10-15 H.J. Lu PR ld/1467 * elf-bfd.h (_bfd_elf_match_sections_by_type): New. (_bfd_generic_match_sections_by_type): New. Defined. * elf.c (_bfd_elf_match_sections_by_type): New. * libbfd-in.h (_bfd_generic_match_sections_by_type): New. * bfd-in2.h: Regenerated. * libbfd.h: Likewise. * libbfd.c (_bfd_generic_match_sections_by_type): New. * targets.c (BFD_JUMP_TABLE_LINK): Initialize _bfd_match_sections_by_type with _bfd_generic_match_sections_by_type. (bfd_target): Add _bfd_match_sections_by_type. ld/ 2005-10-15 H.J. Lu PR ld/1467 * emultempl/elf32.em: Include "elf-bfd.h". (gld${EMULATION_NAME}_place_orphan): Check section type and don't use section name for ELF input sections. * ld.texinfo: Document orphan section processing. * ldlang.c (lang_output_section_find_by_flags): Match section types by calling bfd_match_sections_by_type. --- bfd/bfd-in2.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'bfd/bfd-in2.h') diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index 3471081..1d93b0f 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -4926,6 +4926,7 @@ typedef struct bfd_target NAME##_bfd_link_split_section, \ NAME##_bfd_gc_sections, \ NAME##_bfd_merge_sections, \ + _bfd_generic_match_sections_by_type, \ NAME##_bfd_is_group_section, \ NAME##_bfd_discard_group, \ NAME##_section_already_linked \ @@ -4965,6 +4966,12 @@ typedef struct bfd_target /* Attempt to merge SEC_MERGE sections. */ bfd_boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *); +#define bfd_match_sections_by_type(abfd, asec, bbfd, bsec) \ + BFD_SEND (abfd, _bfd_match_sections_by_type, (abfd, asec, bbfd, bsec)) + /* Return TRUE if 2 section types are compatible. */ + bfd_boolean (*_bfd_match_sections_by_type) + (bfd *, const asection *, bfd *, const asection *); + /* Is this section a member of a group? */ bfd_boolean (*_bfd_is_group_section) (bfd *, const struct bfd_section *); -- cgit v1.1