[all-commits] [llvm/llvm-project] 789e25: [DWARF5][Debuginfo] Compilation unit type (DW_UT_s...

avl-llvm via All-commits all-commits at lists.llvm.org
Wed Dec 4 13:54:26 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 789e257ce0d84ef5ddbabfdf0c990b2878e67744
      https://github.com/llvm/llvm-project/commit/789e257ce0d84ef5ddbabfdf0c990b2878e67744
  Author: Alexey Lapshin <a.v.lapshin at mail.ru>
  Date:   2019-12-05 (Thu, 05 Dec 2019)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DIE.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/CodeGen/X86/dwarf-headers.ll
    M llvm/test/DebugInfo/X86/debug_addr.ll
    M llvm/test/DebugInfo/X86/string-offsets-table-order.ll
    M llvm/test/DebugInfo/X86/string-offsets-table.ll

  Log Message:
  -----------
  [DWARF5][Debuginfo] Compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) do not match.

That patch fixes incompatible compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) error.

cat split-dwarf.cpp
int main()
{
  int a = 1;
  return 0;
}

clang++ -O -g -gsplit-dwarf -gdwarf-5 split-dwarf.cpp; llvm-dwarfdump --verify ./a.out | grep skeleton
error: Compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) do not match.

The fix is to change DW_TAG_compile_unit into DW_TAG_skeleton_unit when skeleton file is generated.

Differential Revision: https://reviews.llvm.org/D70880




More information about the All-commits mailing list