[llvm-dev] [lldb-dev] [LLD] How to get rid of debug info of sections deleted by garbage collector (original) (raw)

Davide Italiano via llvm-dev llvm-dev at lists.llvm.org
Thu Sep 20 07:54:47 PDT 2018


On Wed, Sep 19, 2018 at 8:35 PM Venkata Ramanaiah Nalamothu via lldb-dev <lldb-dev at lists.llvm.org> wrote:

Hi, After compiling an example.cpp file with "-c -ffunction-sections" and linking with "--gc-sections" (used ld.lld), I am still seeing debug info for the sections deleted by garbage collector in the generated executable. Are there any compiler/linker options and/or other tools in LLVM to get rid of the above mentioned unneeded debug info? If such options does not exist, what needs to be changed in the linker (lld)?

It's not easy. It's also format dependent. I assume you're talking about ELF here. In first approximation, the linker does not GC section marked without SHF_ALLOC. At some point we did an analysis and in practice it turns out most of them are debug info. I seem to recall that Cary Coutant had a proposal for ld.gold on how to reclaim them without breaking, but I can't find it easily (cc:ing him directly).

Thanks,

-- Davide



More information about the llvm-dev mailing list