diff options
author | Jiong Wang <jiong.wang@arm.com> | 2017-07-03 17:15:26 +0100 |
---|---|---|
committer | Jiong Wang <jiong.wang@arm.com> | 2017-07-04 09:24:10 +0100 |
commit | 564e46b795ea9ef95ec662f01139a97717de1603 (patch) | |
tree | b84ed01719012cf740270ee0380daf1fdea30419 /bfd/elfnn-aarch64.c | |
parent | 0041f7df741692954ebc112c69e5326afb0115ba (diff) | |
download | gdb-564e46b795ea9ef95ec662f01139a97717de1603.zip gdb-564e46b795ea9ef95ec662f01139a97717de1603.tar.gz gdb-564e46b795ea9ef95ec662f01139a97717de1603.tar.bz2 |
[AArch64] Remove useless and incorrect assertion
The outer caller elf_link_output_extsym in elflink.c is a traverse function on
all external symbol, and it will only call *finish_dynamic_symbol if some
conditions is meet. It is executed conditionally.
If the condition to trigger that assertion is satisified, it then won't satify
the outer check in finish_dynamic_symbol, so *finish_dynamic_symbol won't be
called that the assertion is expected to be dead code.
If elf_link_output_extsym is a traverse function that unconditionally called
on external symbols decided to be exported, then an assertion to make sure these
symbols are in sane status might make sense.
bfd/
* elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Remove the
sanity check at the head of this function.
Diffstat (limited to 'bfd/elfnn-aarch64.c')
-rw-r--r-- | bfd/elfnn-aarch64.c | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c index 1195448..86bae0e 100644 --- a/bfd/elfnn-aarch64.c +++ b/bfd/elfnn-aarch64.c @@ -8892,13 +8892,6 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd, struct elf_aarch64_link_hash_table *htab; htab = elf_aarch64_hash_table (info); - /* Sanity check to make sure no unexpected symbol reaches here. */ - if (h->dynindx == -1 - && !h->forced_local - && h->root.type != bfd_link_hash_undefweak - && bfd_link_pic (info)) - abort (); - if (h->plt.offset != (bfd_vma) - 1) { asection *plt, *gotplt, *relplt; |