diff --git a/bfd/elfnn-riscv.c b/bfd/elfnn-riscv.c index fa03d1a53ec..8b27e3b8d6a 100644 --- a/bfd/elfnn-riscv.c +++ b/bfd/elfnn-riscv.c @@ -5452,7 +5452,8 @@ riscv_maybe_function_sym (const asymbol *sym, bfd_vma *code_off) { if (sym->flags & BSF_LOCAL - && riscv_elf_is_mapping_symbols (sym->name)) + && (riscv_elf_is_mapping_symbols (sym->name) + || _bfd_elf_is_local_label_name (sec->owner, sym->name))) return 0; return _bfd_elf_maybe_function_sym (sym, sec, code_off);