PowerPC64 synthetic symbols
If an assembler trims off unused section symbols there may be no section symbols. This means that testing for the .opd section symbol needs to test both the section name and symbol flags. * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume section symbols are present.
This commit is contained in:
parent
11321a0505
commit
8bd10d6b16
@ -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
|
||||
|
||||
@ -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;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user