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 | |
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')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf.c | 11 |
2 files changed, 11 insertions, 6 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8b315a3..c61360e 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2008-06-04 Alan Modra <amodra@bigpond.net.au> + + * 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. + 2008-06-04 Nick Clifton <nickc@redhat.com> PR ld/6019 @@ -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; |