[all-commits] [llvm/llvm-project] 96c45a: [MC] Rename temporary symbols of empty name to ".L...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Wed Apr 24 13:16:24 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 96c45a7fa12619c3abd6b81effe4c80f0916b78b
https://github.com/llvm/llvm-project/commit/96c45a7fa12619c3abd6b81effe4c80f0916b78b
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-24 (Wed, 24 Apr 2024)
Changed paths:
M lld/test/ELF/mips-eh_frame-pic.s
M llvm/include/llvm/Object/ELFObjectFile.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/test/CodeGen/RISCV/fixups-diff.ll
M llvm/test/DebugInfo/LoongArch/dwarf-loongarch-relocs.ll
M llvm/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll
M llvm/test/DebugInfo/RISCV/relax-debug-frame.ll
R llvm/test/DebugInfo/Symbolize/ELF/riscv-empty-name-symbol.s
A llvm/test/DebugInfo/Symbolize/ELF/riscv-temporary-symbol.s
M llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s
M llvm/test/MC/ELF/RISCV/gen-dwarf.s
M llvm/test/MC/RISCV/cfi-advance.s
M llvm/test/MC/RISCV/fde-reloc.s
M llvm/test/MC/RISCV/scoped-relaxation.s
Log Message:
-----------
[MC] Rename temporary symbols of empty name to ".L0 " (#89693)
Temporary symbols generated for .eh_frame and .debug_line have an empty
name, which appear in .symtab in the presence of RISC-V style linker
relaxation and will not be discarded by ld/objcopy --discard-locals
(-X).
In contrast, GNU assembler's riscv port assigns a fake name ".L0 " (with
a trailing space) to these symbols so that will be discarded by
ld/objcopy --discard-locals.
This patch matches the GNU behavior. Since Clang's RISC-V targets pass
-X to ld, and GNU ld defaults to -X for RISC-V targets, these ".L0 "
symbols will be discarded after linking by default, as expected by
users.
The llvm-symbolizer special case for RISC-V `SF_FormatSpecific` symbols
https://reviews.llvm.org/D98669 needs to be adjusted.
Note: `"":` in assembly currently crashes.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list