MIPS/BFD: Streamline hash table references in `mips_elf_sort_hash_table'
authorMaciej W. Rozycki <macro@imgtec.com>
Thu, 2 Feb 2017 21:30:27 +0000 (21:30 +0000)
committerMaciej W. Rozycki <macro@imgtec.com>
Thu, 2 Feb 2017 22:35:29 +0000 (22:35 +0000)
Make all hash table references throughout `mips_elf_sort_hash_table' use
`htab', simplifying code and improving readability.

bfd/
* elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout
to access the hash table.

bfd/ChangeLog
bfd/elfxx-mips.c

index fca45ac..ffb467c 100644 (file)
@@ -1,5 +1,10 @@
 2017-02-02  Maciej W. Rozycki  <macro@imgtec.com>
 
+       * elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout
+       to access the hash table.
+
+2017-02-02  Maciej W. Rozycki  <macro@imgtec.com>
+
        * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on
        non-NULL `htab' to the beginning.
 
index d1c0f80..eec10b4 100644 (file)
@@ -3835,7 +3835,7 @@ mips_elf_sort_hash_table (bfd *abfd, struct bfd_link_info *info)
   htab = mips_elf_hash_table (info);
   BFD_ASSERT (htab != NULL);
 
-  if (elf_hash_table (info)->dynsymcount == 0)
+  if (htab->root.dynsymcount == 0)
     return TRUE;
 
   g = htab->got_info;
@@ -3845,20 +3845,16 @@ mips_elf_sort_hash_table (bfd *abfd, struct bfd_link_info *info)
   hsd.low = NULL;
   hsd.max_unref_got_dynindx
     = hsd.min_got_dynindx
-    = (elf_hash_table (info)->dynsymcount - g->reloc_only_gotno);
+    = (htab->root.dynsymcount - g->reloc_only_gotno);
   hsd.max_non_got_dynindx = count_section_dynsyms (abfd, info) + 1;
-  mips_elf_link_hash_traverse (((struct mips_elf_link_hash_table *)
-                               elf_hash_table (info)),
-                              mips_elf_sort_hash_table_f,
-                              &hsd);
+  mips_elf_link_hash_traverse (htab, mips_elf_sort_hash_table_f, &hsd);
 
   /* There should have been enough room in the symbol table to
      accommodate both the GOT and non-GOT symbols.  */
   BFD_ASSERT (hsd.max_non_got_dynindx <= hsd.min_got_dynindx);
   BFD_ASSERT ((unsigned long) hsd.max_unref_got_dynindx
-             == elf_hash_table (info)->dynsymcount);
-  BFD_ASSERT (elf_hash_table (info)->dynsymcount - hsd.min_got_dynindx
-             == g->global_gotno);
+             == htab->root.dynsymcount);
+  BFD_ASSERT (htab->root.dynsymcount - hsd.min_got_dynindx == g->global_gotno);
 
   /* Now we know which dynamic symbol has the lowest dynamic symbol
      table index in the GOT.  */