[all-commits] [llvm/llvm-project] 1a5020: [DWARFLinker][DWARFv5] Add support for .debug_rngl...

avl-llvm via All-commits all-commits at lists.llvm.org
Sun Feb 26 10:28:38 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1a50207f4ea575da2a3e861369227ce9f1d885e7
      https://github.com/llvm/llvm-project/commit/1a50207f4ea575da2a3e861369227ce9f1d885e7
  Author: Alexey Lapshin <a.v.lapshin at mail.ru>
  Date:   2023-02-26 (Sun, 26 Feb 2023)

  Changed paths:
    M llvm/include/llvm/DWARFLinker/DWARFLinker.h
    M llvm/include/llvm/DWARFLinker/DWARFLinkerCompileUnit.h
    M llvm/include/llvm/DWARFLinker/DWARFStreamer.h
    M llvm/lib/DWARFLinker/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/DWARFStreamer.cpp
    A llvm/test/tools/dsymutil/Inputs/dwarf5-rnglists.o
    M llvm/test/tools/dsymutil/X86/dwarf5-addrx.test
    A llvm/test/tools/dsymutil/X86/dwarf5-rnglists.test
    M llvm/test/tools/dsymutil/X86/op-convert-offset.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-addrx.test
    A llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-rnglists.test
    R llvm/test/tools/llvm-dwarfutil/ELF/X86/warning-skipped-rnglists.test

  Log Message:
  -----------
  [DWARFLinker][DWARFv5] Add support for .debug_rnglists.

This patch adds support of DWARFv5 .debug_rnglists table.
As DWARFLinker resolves relocations, it is able to always
use DW_FORM_addr instead of DW_FORM_addrx. DW_FORM_addrx
helps to minimize number of relocations, it is also used for
split DWARF. Both of these cases are not relevant for the
DWARFLinker. Thus, this patch converts all DW_FORM_addrx
forms into the DW_FORM_addr. And, as the result, it converts
range lists of DW_FORM_rnglistx form into the DW_FORM_sec_offset.
For the --update case all DW_FORM_addrx, DW_FORM_rnglistx
are preserved as is.

Reviewed By: aprantl

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




More information about the All-commits mailing list