diff options
Diffstat (limited to 'gdb/elfread.c')
-rw-r--r-- | gdb/elfread.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gdb/elfread.c b/gdb/elfread.c index b9cfa13..2d589a4 100644 --- a/gdb/elfread.c +++ b/gdb/elfread.c @@ -412,7 +412,11 @@ elf_symtab_read (struct objfile *objfile, int type, else ms_type = mst_text; } - else if ((sym->name[0] == '.' && sym->name[1] == 'L') + /* The BSF_SYNTHETIC check is there to omit ppc64 function + descriptors mistaken for static functions starting with 'L'. + */ + else if ((sym->name[0] == '.' && sym->name[1] == 'L' + && (sym->flags & BSF_SYNTHETIC) == 0) || ((sym->flags & BSF_LOCAL) && sym->name[0] == '$' && sym->name[1] == 'L')) |