[all-commits] [llvm/llvm-project] 1506e4: [DWARFLinkerParallel] Add limited functionality to...

avl-llvm via All-commits all-commits at lists.llvm.org
Thu Aug 17 00:49:25 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1506e4c77624aa3d208658fd356b9caccc1a713f
      https://github.com/llvm/llvm-project/commit/1506e4c77624aa3d208658fd356b9caccc1a713f
  Author: Alexey Lapshin <a.v.lapshin at mail.ru>
  Date:   2023-08-17 (Thu, 17 Aug 2023)

  Changed paths:
    M llvm/include/llvm/CodeGen/DwarfStringPoolEntry.h
    M llvm/include/llvm/DWARFLinker/DWARFLinker.h
    M llvm/include/llvm/DWARFLinkerParallel/AddressesMap.h
    M llvm/include/llvm/DWARFLinkerParallel/DWARFFile.h
    M llvm/include/llvm/DWARFLinkerParallel/StringPool.h
    R llvm/include/llvm/DWARFLinkerParallel/StringTable.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugMacro.h
    M llvm/lib/DWARFLinker/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/DWARFLinkerCompileUnit.cpp
    A llvm/lib/DWARFLinkerParallel/ArrayList.h
    M llvm/lib/DWARFLinkerParallel/CMakeLists.txt
    A llvm/lib/DWARFLinkerParallel/DIEAttributeCloner.cpp
    A llvm/lib/DWARFLinkerParallel/DIEAttributeCloner.h
    A llvm/lib/DWARFLinkerParallel/DIEGenerator.h
    M llvm/lib/DWARFLinkerParallel/DWARFEmitterImpl.cpp
    M llvm/lib/DWARFLinkerParallel/DWARFEmitterImpl.h
    A llvm/lib/DWARFLinkerParallel/DWARFFile.cpp
    A llvm/lib/DWARFLinkerParallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinkerParallel/DWARFLinkerCompileUnit.h
    A llvm/lib/DWARFLinkerParallel/DWARFLinkerGlobalData.h
    M llvm/lib/DWARFLinkerParallel/DWARFLinkerImpl.cpp
    M llvm/lib/DWARFLinkerParallel/DWARFLinkerImpl.h
    A llvm/lib/DWARFLinkerParallel/DWARFLinkerUnit.cpp
    M llvm/lib/DWARFLinkerParallel/DWARFLinkerUnit.h
    A llvm/lib/DWARFLinkerParallel/DebugLineSectionEmitter.h
    A llvm/lib/DWARFLinkerParallel/DependencyTracker.cpp
    A llvm/lib/DWARFLinkerParallel/DependencyTracker.h
    A llvm/lib/DWARFLinkerParallel/IndexedValuesMap.h
    M llvm/lib/DWARFLinkerParallel/OutputSections.cpp
    M llvm/lib/DWARFLinkerParallel/OutputSections.h
    A llvm/lib/DWARFLinkerParallel/StringEntryToDwarfStringPoolEntryMap.h
    A llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/dwarf5-dwarf4-combination-macho.test
    A llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/dwarf5-macho.test
    A llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/fat-dylib-update.test
    A llvm/test/tools/dsymutil/ARM/DWARFLinkerParallel/obfuscated.test
    M llvm/test/tools/dsymutil/ARM/call-pc-reloc.test
    M llvm/test/tools/dsymutil/ARM/dwarf5-addr-base.test
    M llvm/test/tools/dsymutil/ARM/dwarf5-addrx-0x0-last.test
    M llvm/test/tools/dsymutil/ARM/dwarf5-str-offsets-base-strx.test
    M llvm/test/tools/dsymutil/ARM/empty-map.test
    M llvm/test/tools/dsymutil/ARM/extern-alias.test
    M llvm/test/tools/dsymutil/ARM/fat-arch-name.test
    M llvm/test/tools/dsymutil/ARM/fat-arch-not-found.test
    M llvm/test/tools/dsymutil/ARM/inlined-low_pc.c
    M llvm/test/tools/dsymutil/ARM/preload.test
    M llvm/test/tools/dsymutil/ARM/scattered.c
    M llvm/test/tools/dsymutil/ARM/thumb.c
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/basic-linking-bundle.test
    M llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/basic-linking-x86.test
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/basic-lto-dw4-linking-x86.test
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/basic-lto-linking-x86.test
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/basic-with-libfat-test.test
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/empty_range.s
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/frame-1.test
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/frame-2.test
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/multiple-inputs.test
    M llvm/test/tools/dsymutil/X86/alias.test
    M llvm/test/tools/dsymutil/X86/call-site-entry-linking.test
    M llvm/test/tools/dsymutil/X86/call-site-entry-reloc.test
    M llvm/test/tools/dsymutil/X86/common-sym-multi.test
    M llvm/test/tools/dsymutil/X86/common-sym.test
    M llvm/test/tools/dsymutil/X86/custom-line-table.test
    M llvm/test/tools/dsymutil/X86/darwin-bundle.test
    M llvm/test/tools/dsymutil/X86/dead-stripped.cpp
    M llvm/test/tools/dsymutil/X86/debug-loc-base-addr.test
    M llvm/test/tools/dsymutil/X86/dwarf4-linetable.test
    M llvm/test/tools/dsymutil/X86/dwarf5-addrx.test
    M llvm/test/tools/dsymutil/X86/dwarf5-call-site-entry-reloc.test
    M llvm/test/tools/dsymutil/X86/dwarf5-dw-op-addrx.test
    M llvm/test/tools/dsymutil/X86/dwarf5-linetable.test
    M llvm/test/tools/dsymutil/X86/dwarf5-loclists.test
    M llvm/test/tools/dsymutil/X86/dwarf5-rnglists.test
    M llvm/test/tools/dsymutil/X86/eh_frame.test
    M llvm/test/tools/dsymutil/X86/empty-CU.test
    M llvm/test/tools/dsymutil/X86/fat-archive-input-i386.test
    M llvm/test/tools/dsymutil/X86/fat-object-input-x86_64.test
    M llvm/test/tools/dsymutil/X86/fat-object-input-x86_64h.test
    M llvm/test/tools/dsymutil/X86/generate-empty-CU.test
    M llvm/test/tools/dsymutil/X86/global_downgraded_to_static.c
    M llvm/test/tools/dsymutil/X86/inlined-static-variable.cpp
    M llvm/test/tools/dsymutil/X86/keep-func.test
    M llvm/test/tools/dsymutil/X86/label.test
    M llvm/test/tools/dsymutil/X86/label2.test
    M llvm/test/tools/dsymutil/X86/lc_build_version.test
    M llvm/test/tools/dsymutil/X86/location-expression.test
    M llvm/test/tools/dsymutil/X86/mismatch.m
    M llvm/test/tools/dsymutil/X86/modules-dwarf-version.m
    M llvm/test/tools/dsymutil/X86/modules-empty.m
    M llvm/test/tools/dsymutil/X86/multiple-inputs.test
    M llvm/test/tools/dsymutil/X86/object-prefix-path.test
    M llvm/test/tools/dsymutil/X86/op-convert-offset.test
    M llvm/test/tools/dsymutil/X86/op-convert.test
    M llvm/test/tools/dsymutil/X86/papertrail-warnings.test
    M llvm/test/tools/dsymutil/X86/reflection-dump.test
    M llvm/test/tools/dsymutil/X86/remarks-linking-archive.text
    M llvm/test/tools/dsymutil/X86/remarks-linking-bundle-empty.test
    M llvm/test/tools/dsymutil/X86/remarks-linking-bundle.test
    M llvm/test/tools/dsymutil/X86/remarks-linking-fat-bundle.test
    M llvm/test/tools/dsymutil/X86/reproducer.test
    M llvm/test/tools/dsymutil/X86/statistics.test
    M llvm/test/tools/dsymutil/X86/swift-ast-x86_64.test
    M llvm/test/tools/dsymutil/X86/swift-dwarf-loc.test
    M llvm/test/tools/dsymutil/X86/tail-call-linking.test
    M llvm/test/tools/dsymutil/X86/thinlto.test
    M llvm/test/tools/dsymutil/X86/timestamp-mismatch.test
    M llvm/test/tools/dsymutil/X86/tls-variable.test
    M llvm/test/tools/dsymutil/X86/union-fwd-decl.test
    M llvm/test/tools/dsymutil/X86/verify.test
    R llvm/test/tools/llvm-dwarfutil/ELF/X86/DWARFLinkerParallel/gc-default.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf4-macro-short.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf4-macro.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-addresses.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-attributes.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-line-str.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-loclists.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-macro-opcodeop.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-macro-short.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-macro.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/dwarf5-rnglists.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-default.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-func-overlapping-address-ranges.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-maxpc.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-no-garbage.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/gc-unit-overlapping-address-ranges.test
    M llvm/test/tools/llvm-dwarfutil/ELF/X86/verify.test
    M llvm/tools/dsymutil/BinaryHolder.cpp
    M llvm/tools/dsymutil/BinaryHolder.h
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
    M llvm/unittests/CodeGen/DwarfStringPoolEntryRefTest.cpp
    M llvm/unittests/DWARFLinkerParallel/CMakeLists.txt
    M llvm/unittests/DWARFLinkerParallel/StringPoolTest.cpp
    R llvm/unittests/DWARFLinkerParallel/StringTableTest.cpp

  Log Message:
  -----------
  [DWARFLinkerParallel] Add limited functionality to DWARFLinkerParallel.

This patch is extracted from D96035, it adds support for the existing
DWARFLinker functionality. What is not supported yet:

1. Types deduplication(--odr mode).
2. Modules deduplication.
3. Generation of index tables.

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




More information about the All-commits mailing list