]> Git Repo - binutils.git/blobdiff - bfd/elf32-m32r.c
* elflink.c (_bfd_elf_gc_mark_hook): New function.
[binutils.git] / bfd / elf32-m32r.c
index 7f4acac1c02ba316bfec4f67d0954ada596a9820..7456c1c9a81e4408a26279b7dc0b0ccfdb353e44 100644 (file)
@@ -3637,40 +3637,22 @@ m32r_elf_print_private_bfd_data (bfd *abfd, void * ptr)
 
 static asection *
 m32r_elf_gc_mark_hook (asection *sec,
-                      struct bfd_link_info *info ATTRIBUTE_UNUSED,
+                      struct bfd_link_info *info,
                       Elf_Internal_Rela *rel,
                       struct elf_link_hash_entry *h,
                       Elf_Internal_Sym *sym)
 {
   if (h != NULL)
-    {
-      switch (ELF32_R_TYPE (rel->r_info))
+    switch (ELF32_R_TYPE (rel->r_info))
       {
       case R_M32R_GNU_VTINHERIT:
       case R_M32R_GNU_VTENTRY:
       case R_M32R_RELA_GNU_VTINHERIT:
       case R_M32R_RELA_GNU_VTENTRY:
-        break;
-
-      default:
-        switch (h->root.type)
-          {
-          case bfd_link_hash_defined:
-          case bfd_link_hash_defweak:
-            return h->root.u.def.section;
-
-          case bfd_link_hash_common:
-            return h->root.u.c.p->section;
-
-         default:
-           break;
-          }
-       }
-     }
-   else
-     return bfd_section_from_elf_index (sec->owner, sym->st_shndx);
+       return NULL;
+      }
 
-  return NULL;
+  return _bfd_elf_gc_mark_hook (sec, info, rel, h, sym);
 }
 
 static bfd_boolean
This page took 0.025402 seconds and 4 git commands to generate.