[lld] [lld][ELF] Implement merged .debug_names section. (PR #86508)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 25 08:49:40 PDT 2024
cmtice wrote:
> How much does it add to linking time? Also did you measure reduction in section size by any chance?
I did some rough timing measurements on my workstation (no special quiescent environment), linking Clang. In both cases Clang was built with -gpubnames. In one case I passed --debug_names to the LLD, so it built the merged section; in the other case I didn't pass any special flags to LLD, so it appended the .debug_names sections together (current normal behavior). I linked 5 times in each case and took the average.
Linking Clang without --debug-names flag took, on average, 8.8 seconds. Linking Clang with --debug-names took, on average, 13.5 seconds.
The .debug_names section without merging is 0x99f8280 (161448576) bytes.
The .debug_names section WITH merging is 0x72483e0 (119833568) bytes.
So creating a merged section cost us ~ 5 seconds and saved us ~41.6 MB. It also saves us ~ 6 seconds in LLDB startup times on Clang.
https://github.com/llvm/llvm-project/pull/86508
More information about the llvm-commits
mailing list