aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2017-02-02 20:53:16 +0000
committerMaciej W. Rozycki <macro@imgtec.com>2017-02-02 22:33:40 +0000
commit17a80fa80adbe79df39ba1fc70e611dff92df197 (patch)
tree719ce59f33c3cba548f5c132b25b77de04bb5ea2
parentfa93e3d3471aab48ae273437c3159ebb0205a592 (diff)
downloadgdb-17a80fa80adbe79df39ba1fc70e611dff92df197.zip
gdb-17a80fa80adbe79df39ba1fc70e611dff92df197.tar.gz
gdb-17a80fa80adbe79df39ba1fc70e611dff92df197.tar.bz2
MIPS/BFD: Fix assertion in `mips_elf_sort_hash_table'
Move the assertion on non-NULL `htab' in `mips_elf_sort_hash_table' to the beginning, before the pointer is dereferenced (`mips_elf_hash_table (info)' and `elf_hash_table (info)' both point to the same memory location, differently typed). bfd/ * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on non-NULL `htab' to the beginning.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elfxx-mips.c6
2 files changed, 8 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 62a3fea..fca45ac 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,10 @@
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.
+
+2017-02-02 Maciej W. Rozycki <macro@imgtec.com>
+
* elflink.c (elf_gc_sweep): Wrap overlong line.
2017-01-30 Maciej W. Rozycki <macro@imgtec.com>
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index bda02b1..d1c0f80 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -3832,12 +3832,12 @@ mips_elf_sort_hash_table (bfd *abfd, struct bfd_link_info *info)
struct mips_elf_hash_sort_data hsd;
struct mips_got_info *g;
- if (elf_hash_table (info)->dynsymcount == 0)
- return TRUE;
-
htab = mips_elf_hash_table (info);
BFD_ASSERT (htab != NULL);
+ if (elf_hash_table (info)->dynsymcount == 0)
+ return TRUE;
+
g = htab->got_info;
if (g == NULL)
return TRUE;