bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/27584] nm riscv: Suppress empty name symbols unless --spec


From: nelsonc1225 at sourceware dot org
Subject: [Bug binutils/27584] nm riscv: Suppress empty name symbols unless --special-syms?
Date: Tue, 16 Mar 2021 04:45:07 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=27584

--- Comment #3 from Nelson Chu <nelsonc1225 at sourceware dot org> ---
(In reply to Fangrui Song from comment #2)
> You can try any C file. Due to label differences, there are always lots of
> STB_LOCAL STT_NOTYPE symbols. It seems that GCC uses .L0 while clang uses an
> empty name.

OK, I didn't consider clang's behavior, so it makes sense to me now.  The .L0
(or empty name for clang) are used to mark the high part AUIPC for the low part
instructions, so even if we disable the relax by -mno-relax, they probably
still be there.

> The question is whether such symbols should be treated similar to arm
> $a/$d/$t and suppressed in normal nm output (can be displayed with
> --special-syms).

Sounds good to me.  Arm defines their mapping symbols in the
bfd_is_arm_special_symbol_name of bfd/cpu-arm.c, so we can define a new name
for those .L0 symbols (or keep the old one), then do the similar things as ARM
did.

Do you have any suggestions about the new symbol names (or keep the old one)? 
I don't have strong opinion about this.  I agree with you that they can be
suppressed, the idea is good.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]