[all-commits] [llvm/llvm-project] e8e9a3: [LLVM][DWARF] Add compilation directory and dwo na...

Alexander Yermolovich via All-commits all-commits at lists.llvm.org
Tue Dec 12 07:01:33 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e8e9a335839350d444d1b90fa6727b3947708ab6
      https://github.com/llvm/llvm-project/commit/e8e9a335839350d444d1b90fa6727b3947708ab6
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2023-12-12 (Tue, 12 Dec 2023)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/CodeGen/X86/dwarf-headers.ll
    M llvm/test/DebugInfo/WebAssembly/dwarf-headers.ll
    M llvm/test/DebugInfo/X86/debug-names-types.ll

  Log Message:
  -----------
  [LLVM][DWARF] Add compilation directory and dwo name to TU in dwo section (#74909)

This adds support to help LLDB when binary is built with split dwarf,
has
.debug_names accelerator table and DWP file.
Final linked binary might have Type Units (TUs) with the same type
signature in multiple
compilation units. Although the signature is the same, TUs are not
guranted to
be bit identical. This is not a problem when they are in .o/.dwo files
as LLDB
can find them by looking at the right one based on
DW_AT_comp_dir/DW_AT_name in
skeleton CU. Once DWP is created, TUs are de-duplicated, and we need to
know
from which CU remaining one came from.

This approach allows LLDB to figure it out, with minimal changes to the
rest of
the tooling. As would have been the case if .debug_tu_index section in
DWP was
modified.




More information about the All-commits mailing list