From: Maciej W. Rozycki Date: Thu, 2 Feb 2017 20:53:16 +0000 (+0000) Subject: MIPS/BFD: Fix assertion in `mips_elf_sort_hash_table' X-Git-Tag: users/ARM/embedded-binutils-2_28-branch-2017q1~8 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6f9b43834dc8574066d6dd4fb4722dd7bb1cdd59;p=thirdparty%2Fbinutils-gdb.git 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) --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 244d1904333..8a594e48ff9 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2017-02-13 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on + non-NULL `htab' to the beginning. + 2017-02-03 Alan Modra * elf32-hppa.c (ensure_undef_weak_dynamic): New function. diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c index bda02b128ec..d1c0f804168 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;