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-13 14:27:41 +0000
commit6f9b43834dc8574066d6dd4fb4722dd7bb1cdd59 (patch)
tree4762b7fc45115a72e762faef08d2077fd28e549c
parent53e0feaeb41ce238fb9982160b9e72a26ff8325e (diff)
downloadgdb-6f9b43834dc8574066d6dd4fb4722dd7bb1cdd59.zip
gdb-6f9b43834dc8574066d6dd4fb4722dd7bb1cdd59.tar.gz
gdb-6f9b43834dc8574066d6dd4fb4722dd7bb1cdd59.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. (cherry picked from commit 17a80fa80adbe79df39ba1fc70e611dff92df197)
-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 244d190..8a594e4 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2017-02-13 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-03 Alan Modra <amodra@gmail.com>
* elf32-hppa.c (ensure_undef_weak_dynamic): New function.
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;