Changes

Summary

  1. Test commit to check access. (details)
  2. [CMake] Installable find modules for terminfo and libffi (details)
  3. [lld-macho] Unreferenced weak dylib symbols shouldn't fetch archive symbols (details)
  4. [GlobalISel] Allow DBG_VALUE to use undefined vregs before LiveDebugValues. (details)
Commit 296ebeb808a71e44a64e0f805cffc6e3a3bf6182 by jackoalan
Test commit to check access.
The file was modifiedclang/lib/Driver/Driver.cpp
Commit b66339575a9b541e67ce5ad2ba7e88da07cf9305 by jackoalan
[CMake] Installable find modules for terminfo and libffi

Improves cross-distro portability of LLVM cmake package by resolving paths for
terminfo and libffi via import targets.

When LLVMExports.cmake is generated for installation, it contains absolute
library paths which are likely to be a common cause of portability issues. To
mitigate this, the discovery logic for these dependencies is refactored into
find modules which get installed alongside LLVMConfig.cmake. The result is
cleaner, cmake-friendly management of these dependencies that respect the
environment of the LLVM package importer.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D114327
The file was addedllvm/cmake/modules/FindFFI.cmake
The file was modifiedllvm/cmake/config-ix.cmake
The file was addedllvm/cmake/modules/FindTerminfo.cmake
The file was modifiedllvm/cmake/modules/LLVMConfig.cmake.in
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/Interpreter/CMakeLists.txt
Commit 1b44364714981017302f182583a43fda4d28e0eb by jezng
[lld-macho] Unreferenced weak dylib symbols shouldn't fetch archive symbols

We were fetching archive symbols too eagerly, bloating binary size as well as
just screwing up binaries that expected to look up certain symbols only at
runtime.

Reviewed By: #lld-macho, oontvoo

Differential Revision: https://reviews.llvm.org/D115092
The file was modifiedlld/test/MachO/weak-definition-direct-fetch.s
The file was modifiedlld/MachO/SymbolTable.cpp
Commit f108c7f59dfae5fafbb00fbdef7a0cd31826dcfc by jackoalan
[GlobalISel] Allow DBG_VALUE to use undefined vregs before LiveDebugValues.

Expanding on D109750.

Since `DBG_VALUE` instructions have final register validity determined in
`LDVImpl::handleDebugValue`, there is no apparent reason to immediately prune
unused register operands as their defs are erased. Consequently, this renders
`MachineInstr::eraseFromParentAndMarkDBGValuesForRemoval` moot; gaining a
substantial performance improvement.

The only necessary changes involve making relevant passes consider invalid
DBG_VALUE vregs uses as valid.

Reviewed By: MatzeB

Differential Revision: https://reviews.llvm.org/D112852
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.h
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-dbg-value.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/uaddo-8-16-bits.mir
The file was modifiedllvm/include/llvm/CodeGen/MIRYamlMapping.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
The file was addedllvm/test/MachineVerifier/verify-selected-dbg-undef-use.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/fold-readlane.mir
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
The file was modifiedllvm/lib/CodeGen/MIRPrinter.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
The file was modifiedllvm/lib/CodeGen/DeadMachineInstructionElim.cpp
The file was addedllvm/test/CodeGen/X86/GlobalISel/x86-calllowering-dbg-trunc.ll
The file was modifiedllvm/lib/CodeGen/MIRParser/MIRParser.cpp
The file was addedllvm/test/CodeGen/Generic/live-debug-vars-undef-use.mir
The file was modifiedllvm/lib/Target/NVPTX/NVPTXPeephole.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
The file was addedllvm/test/MachineVerifier/verify-regbankselected-dbg-undef-use.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/Combiner.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineInstr.h
The file was modifiedllvm/lib/CodeGen/MachineCombiner.cpp
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp