OSDN Git Service

* elf-bfd.h (bfd_elf_match_symbols_in_sections): Don't declare.
authoramodra <amodra>
Wed, 31 Oct 2007 07:36:45 +0000 (07:36 +0000)
committeramodra <amodra>
Wed, 31 Oct 2007 07:36:45 +0000 (07:36 +0000)
* elflink.c (bfd_elf_match_symbols_in_sections): Make static.
Remove section name comparisons.

bfd/ChangeLog
bfd/elf-bfd.h
bfd/elflink.c

index 5484c4b..6647eae 100644 (file)
@@ -1,3 +1,9 @@
+2007-10-31  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf-bfd.h (bfd_elf_match_symbols_in_sections): Don't declare.
+       * elflink.c (bfd_elf_match_symbols_in_sections): Make static.
+       Remove section name comparisons.
+
 2007-10-30  Nick Clifton  <nickc@redhat.com>
 
        * reloc.c (BFD_RELOC_MN10300_ALIGN): Add.
index 959e8b3..6afd9d1 100644 (file)
@@ -1814,9 +1814,6 @@ extern bfd_boolean _bfd_elf_dynamic_symbol_p
 extern bfd_boolean _bfd_elf_symbol_refs_local_p
   (struct elf_link_hash_entry *, struct bfd_link_info *, bfd_boolean);
 
-extern bfd_boolean bfd_elf_match_symbols_in_sections
-  (asection *, asection *, struct bfd_link_info *);
-
 extern void bfd_elf_perform_complex_relocation
   (bfd *, asection *, bfd_byte *, Elf_Internal_Rela *, bfd_vma);
 
index ba2f540..084a6d2 100644 (file)
@@ -6923,7 +6923,7 @@ elf_create_symbuf (bfd_size_type symcount, Elf_Internal_Sym *isymbuf)
 /* Check if 2 sections define the same set of local and global
    symbols.  */
 
-bfd_boolean
+static bfd_boolean
 bfd_elf_match_symbols_in_sections (asection *sec1, asection *sec2,
                                   struct bfd_link_info *info)
 {
@@ -6942,13 +6942,6 @@ bfd_elf_match_symbols_in_sections (asection *sec1, asection *sec2,
   bfd1 = sec1->owner;
   bfd2 = sec2->owner;
 
-  /* If both are .gnu.linkonce sections, they have to have the same
-     section name.  */
-  if (CONST_STRNEQ (sec1->name, ".gnu.linkonce")
-      && CONST_STRNEQ (sec2->name, ".gnu.linkonce"))
-    return strcmp (sec1->name + sizeof ".gnu.linkonce",
-                  sec2->name + sizeof ".gnu.linkonce") == 0;
-
   /* Both sections have to be in ELF.  */
   if (bfd_get_flavour (bfd1) != bfd_target_elf_flavour
       || bfd_get_flavour (bfd2) != bfd_target_elf_flavour)
@@ -6957,15 +6950,6 @@ bfd_elf_match_symbols_in_sections (asection *sec1, asection *sec2,
   if (elf_section_type (sec1) != elf_section_type (sec2))
     return FALSE;
 
-  if ((elf_section_flags (sec1) & SHF_GROUP) != 0
-      && (elf_section_flags (sec2) & SHF_GROUP) != 0)
-    {
-      /* If both are members of section groups, they have to have the
-        same group name.  */
-      if (strcmp (elf_group_name (sec1), elf_group_name (sec2)) != 0)
-       return FALSE;
-    }
-
   shndx1 = _bfd_elf_section_from_bfd_section (bfd1, sec1);
   shndx2 = _bfd_elf_section_from_bfd_section (bfd2, sec2);
   if (shndx1 == -1 || shndx2 == -1)