[Lldb-commits] [lldb] Improve performance of .debug_names lookups when DW_IDX_parent attributes are used (PR #91808)
Greg Clayton via lldb-commits
lldb-commits at lists.llvm.org
Wed May 29 18:56:10 PDT 2024
clayborg wrote:
So I am trying to lookup `std::ios_base` in my example for a real definitions, but I end up with thousands of forward declarations due to the DWARF snippet in my original summary string.
So when I lookup `std::ios_base`, I found thousands of `DW_AT_declaration` entries for `std::ios_base` that I don't want to propagate beyond the DWARF index class handing out valid matches, so thus this patch. There _are_ entries in the name tables for `std::ios_base` that are declarations only and it would be great if these are not here, but someone is producing them somehow, I am not sure if this is clang or bolt.
The way I saw this was to enable DWARF logging in LLDB and if I did that I saw thousands of `ios_base` lookups that failed to produce real types and this was why I created this patch.
Thanks for the detailed explanations above everyone.
I would vote to get this in to reduce churn when doing type lookups, even if we do fix the compiler, linker, and or other tools to not produce them in the future, we still have such binaries floating around from past compilers, linkers and other tools.
https://github.com/llvm/llvm-project/pull/91808
More information about the lldb-commits
mailing list