diff options
author | Alan Modra <amodra@gmail.com> | 2008-06-04 14:24:05 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2008-06-04 14:24:05 +0000 |
commit | 0f0a5e5880648f0c1c5177d00acd6505733e7aec (patch) | |
tree | c8c0af89798475024ab4bd1f1dec5b0bb9d530dc /bfd/elf.c | |
parent | 789169e5719949096310eb206da623ea4df5b3a0 (diff) | |
download | gdb-0f0a5e5880648f0c1c5177d00acd6505733e7aec.zip gdb-0f0a5e5880648f0c1c5177d00acd6505733e7aec.tar.gz gdb-0f0a5e5880648f0c1c5177d00acd6505733e7aec.tar.bz2 |
* elf.c (ignore_section_sym): Don't test section sym value here.
(elf_map_symbols): Instead check zero value here as was done prior
to 2006-05-26 change.
Diffstat (limited to 'bfd/elf.c')
-rw-r--r-- | bfd/elf.c | 11 |
1 files changed, 5 insertions, 6 deletions
@@ -3078,17 +3078,15 @@ sym_is_global (bfd *abfd, asymbol *sym) } /* Don't output section symbols for sections that are not going to be - output. Also, don't output section symbols for reloc and other - special sections. */ + output. */ static bfd_boolean ignore_section_sym (bfd *abfd, asymbol *sym) { return ((sym->flags & BSF_SECTION_SYM) != 0 - && (sym->value != 0 - || (sym->section->owner != abfd - && (sym->section->output_section->owner != abfd - || sym->section->output_offset != 0)))); + && !(sym->section->owner == abfd + || (sym->section->output_section->owner == abfd + && sym->section->output_offset == 0))); } static bfd_boolean @@ -3131,6 +3129,7 @@ elf_map_symbols (bfd *abfd) asymbol *sym = syms[idx]; if ((sym->flags & BSF_SECTION_SYM) != 0 + && sym->value == 0 && !ignore_section_sym (abfd, sym)) { asection *sec = sym->section; |