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-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=17a80fa80adbe79df39ba1fc70e611dff92df197;p=binutils-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. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 62a3fea82fe..fca45acfb34 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2017-02-02 Maciej W. Rozycki + + * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on + non-NULL `htab' to the beginning. + 2017-02-02 Maciej W. Rozycki * elflink.c (elf_gc_sweep): Wrap overlong line. 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;