[all-commits] [llvm/llvm-project] 8bb445: [Reland][DebugInfo][llvm-dwarfutil] Combine overla...

avl-llvm via All-commits all-commits at lists.llvm.org
Thu Jul 21 04:19:14 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8bb4451a651ac00432d04e020d83f43c445aaebb
      https://github.com/llvm/llvm-project/commit/8bb4451a651ac00432d04e020d83f43c445aaebb
  Author: Alexey Lapshin <a.v.lapshin at mail.ru>
  Date:   2022-07-21 (Thu, 21 Jul 2022)

  Changed paths:
    M llvm/include/llvm/ADT/AddressRanges.h
    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
    M llvm/lib/Support/AddressRanges.cpp
    A llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-func-overlapping-address-ranges.test
    A llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-unit-overlapping-address-ranges.test
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.h
    M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
    M llvm/unittests/Support/AddressRangeTest.cpp

  Log Message:
  -----------
  [Reland][DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.

DWARF files may contain overlapping address ranges. f.e. it can happen if the two
copies of the function have identical instruction sequences and they end up sharing.
That looks incorrect from the point of view of DWARF spec. Current implementation
of DWARFLinker does not combine overlapped address ranges. It would be good if such
ranges would be handled in some useful way. Thus, this patch allows DWARFLinker
to combine overlapped ranges in a single one.

Depends on D86539

Reviewed By: aprantl

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




More information about the All-commits mailing list