This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[committed] MIPS/BFD: Use `bfd_size_type' for dynamic symbol table indices


Use the `bfd_size_type' data type for dynamic symbol table indices in 
the MIPS backend, in line with generic code and removing the need to use 
a cast.

	bfd/
	* elfxx-mips.c (mips_elf_hash_sort_data): Convert the 
	`min_got_dynindx', `max_unref_got_dynindx' and 
	`max_non_got_dynindx' members to the `bfd_size_type' data type.
	(mips_elf_sort_hash_table): Adjust accordingly.
---
binutils-mips-bfd-elf-hash-sort-data-type.diff
Index: binutils/bfd/elfxx-mips.c
===================================================================
--- binutils.orig/bfd/elfxx-mips.c	2017-02-02 00:56:33.948175871 +0000
+++ binutils/bfd/elfxx-mips.c	2017-02-02 00:56:37.742249694 +0000
@@ -310,14 +310,14 @@ struct mips_elf_hash_sort_data
   struct elf_link_hash_entry *low;
   /* The least dynamic symbol table index corresponding to a non-TLS
      symbol with a GOT entry.  */
-  long min_got_dynindx;
+  bfd_size_type min_got_dynindx;
   /* The greatest dynamic symbol table index corresponding to a symbol
      with a GOT entry that is not referenced (e.g., a dynamic symbol
      with dynamic relocations pointing to it from non-primary GOTs).  */
-  long max_unref_got_dynindx;
+  bfd_size_type max_unref_got_dynindx;
   /* The greatest dynamic symbol table index not corresponding to a
      symbol without a GOT entry.  */
-  long max_non_got_dynindx;
+  bfd_size_type max_non_got_dynindx;
 };
 
 /* We make up to two PLT entries if needed, one for standard MIPS code
@@ -3852,8 +3852,7 @@ mips_elf_sort_hash_table (bfd *abfd, str
   /* 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
-	      == htab->root.dynsymcount);
+  BFD_ASSERT (hsd.max_unref_got_dynindx == 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]