daily update
[deliverable/binutils-gdb.git] / bfd / elf32-metag.c
index b48ebb4905a8248b2d456a25b2dea2d6a9b0801e..47ca5debe830d90f42be11b50ad1e16187c63409 100644 (file)
@@ -1017,6 +1017,18 @@ metag_link_hash_newfunc (struct bfd_hash_entry *entry,
   return entry;
 }
 
+/* Free the derived linker hash table.  */
+
+static void
+elf_metag_link_hash_table_free (bfd *obfd)
+{
+  struct elf_metag_link_hash_table *htab
+    = (struct elf_metag_link_hash_table *) obfd->link.hash;
+
+  bfd_hash_table_free (&htab->bstab);
+  _bfd_elf_link_hash_table_free (obfd);
+}
+
 /* Create the derived linker hash table.  The Meta ELF port uses the derived
    hash table to keep information specific to the Meta ELF linker (without
    using static variables).  */
@@ -1043,23 +1055,15 @@ elf_metag_link_hash_table_create (bfd *abfd)
   /* Init the stub hash table too.  */
   if (!bfd_hash_table_init (&htab->bstab, stub_hash_newfunc,
                            sizeof (struct elf_metag_stub_hash_entry)))
-    return NULL;
+    {
+      _bfd_elf_link_hash_table_free (abfd);
+      return NULL;
+    }
+  htab->etab.root.hash_table_free = elf_metag_link_hash_table_free;
 
   return &htab->etab.root;
 }
 
-/* Free the derived linker hash table.  */
-
-static void
-elf_metag_link_hash_table_free (struct bfd_link_hash_table *btab)
-{
-  struct elf_metag_link_hash_table *htab
-    = (struct elf_metag_link_hash_table *) btab;
-
-  bfd_hash_table_free (&htab->bstab);
-  _bfd_elf_link_hash_table_free (btab);
-}
-
 /* Section name for stubs is the associated section name plus this
    string.  */
 #define STUB_SUFFIX ".stub"
@@ -4295,7 +4299,6 @@ elf_metag_plt_sym_val (bfd_vma i, const asection *plt,
 #define bfd_elf32_bfd_is_local_label_name      elf_metag_is_local_label_name
 #define bfd_elf32_bfd_link_hash_table_create \
        elf_metag_link_hash_table_create
-#define bfd_elf32_bfd_link_hash_table_free     elf_metag_link_hash_table_free
 #define elf_backend_relocate_section           elf_metag_relocate_section
 #define elf_backend_gc_mark_hook               elf_metag_gc_mark_hook
 #define elf_backend_gc_sweep_hook              elf_metag_gc_sweep_hook
This page took 0.025408 seconds and 4 git commands to generate.