diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf64-ppc.c | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c97976d..f546328 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2021-01-20 Alan Modra <amodra@gmail.com> + + * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume + section symbols are present. + 2021-01-19 Alan Modra <amodra@gmail.com> * elf64-ppc.c (elf_hash_entry): New inline function. Use diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index ed59507..f76830b 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -2299,7 +2299,8 @@ ppc64_elf_get_synthetic_symtab (bfd *abfd, sym->section directly. With separate debug info files, the symbols will be extracted from the debug file while abfd passed to this function is the real binary. */ - if (strcmp (syms[i]->section->name, ".opd") == 0) + if ((syms[i]->flags & BSF_SECTION_SYM) != 0 + && strcmp (syms[i]->section->name, ".opd") == 0) ++i; codesecsym = i; |