FailedChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [lldb] Alphabetically sort test categories (NFC) (details)
  2. [lldb] Add instrumentation runtime category (details)
  3. [clangd] Try harder to get accurate ranges for documentSymbols in macros (details)
  4. [lldb] Handle alternative output in TestAbortExitCode (details)
  5. [lldb] Remove unused code in GetVersion (NFC) (details)
  6. [SemaTemplate] Stop passing insertion position around during VarTemplate instantiation (details)
  7. [llvm] Export LLVM_USE_SPLIT_DWARF in LLVMConfig.cmake (details)
  8. [AMDGPU] Update LiveVariables in convertToThreeAddress() (details)
  9. [lld][WebAssembly] Add support for -Bsymbolic flag (details)
  10. [llc] -filetype=null: don't create .null if -o is not specified (details)
  11. Add accessors. (NFC) (details)
  12. [X86] Add HRESET instruction. (details)
  13. [gn build] Port 412cdcf2edf (details)
  14. [WebAssembly] GC constructor functions in otherwise unused archive objects (details)
  15. [llvm-readobj] Don't print out section names for STABS symbols (details)
  16. Ensure that InheritedAttrs are properly inherited along a redeclaration (details)
  17. Canonicalize declaration pointers when forming APValues. (details)
  18. [mlir] Add async.await operation to async dialect (details)
  19. [lld][WebAssembly] Don't GC library objects under `--whole-archive` (details)
  20. Reland "[WebAssembly] Emulate v128.const efficiently"" (details)
  21. [X86][SelectionDAG] Add SADDO_CARRY and SSUBO_CARRY to support multipart signed add/sub overflow legalization. (details)
  22. [llvm-install-name-tool] Add -delete_all_rpaths option (details)
  23. [AMDGPU] Use lowercase for subtarget feature names in RUN lines (details)
  24. [Test] Use generated auto-checks to make further changes more visible (details)
  25. [InstCombine] Support uniform vector splats in ((((X >> C) & CC) + Y) << C) folds. (details)
  26. [X86] Convert integer _mm_reduce_* intrinsics to emit llvm.reduction intrinsics (PR47506) (details)
  27. [SCEV] BuildConstantFromSCEV(): properly handle SCEVZeroExtend from ptr (details)
  28. Add expected response time and escalation path to the security docs (details)
  29. [AMDGPU] v_mac_legacy_f32 does not support DPP (details)
  30. [SCEV] BuildConstantFromSCEV(): properly handle SCEVSignExtend from ptr (details)
Commit e465ddac880228b879b5a6549adbb9c8a7f335bf by Jonas Devlieghere
[lldb] Alphabetically sort test categories (NFC)
The file was modifiedlldb/packages/Python/lldbsuite/test/test_categories.py
Commit 360ab009e2b95629388cef132ebe639c120ed35e by Jonas Devlieghere
[lldb] Add instrumentation runtime category
The file was addedlldb/test/API/functionalities/ubsan/.categories
The file was addedlldb/test/API/functionalities/asan/.categories
The file was modifiedlldb/packages/Python/lldbsuite/test/test_categories.py
The file was addedlldb/test/API/functionalities/mtc/.categories
The file was addedlldb/test/API/functionalities/tsan/.categories
Commit b764edc59ff7768e052bc2b9e76e3bb69dd5147b by zeratul976
[clangd] Try harder to get accurate ranges for documentSymbols in macros

Fixes https://github.com/clangd/clangd/issues/500

Differential Revision: https://reviews.llvm.org/D88463
The file was modifiedclang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
The file was modifiedclang-tools-extra/clangd/FindSymbols.cpp
Commit a52cc9b4be362b12ca261000b723374d4b772a45 by davelee.com
[lldb] Handle alternative output in TestAbortExitCode

This test

On macOS, this test can instead return `status = 0 (0x00000000) Terminated due to signal 6`. This updates the `CHECK` accordingly.

Differential Revision: https://reviews.llvm.org/D89273
The file was modifiedlldb/test/Shell/Process/TestAbortExitCode.test
Commit 08924b54debcfd47bcf22a8213308cec7d22b975 by davelee.com
[lldb] Remove unused code in GetVersion (NFC)

Small cleanup to `lldb_private::GetVersion()`.

Differential Revision: https://reviews.llvm.org/D88939
The file was modifiedlldb/source/lldb.cpp
Commit cffb0dd54d41d8e249d2009467c4beb5b681ba26 by bruno.cardoso
[SemaTemplate] Stop passing insertion position around during VarTemplate instantiation

They can get stale at use time because of updates from other recursive
specializations. Instead, rely on the existence of previous declarations to add
the specialization.

Differential Revision: https://reviews.llvm.org/D87853
The file was modifiedclang/include/clang/Sema/Template.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/test/SemaTemplate/instantiate-var-template.cpp
Commit 7f8dc347c9552f339b4410b679d91bceb2cc456e by Jonas Devlieghere
[llvm] Export LLVM_USE_SPLIT_DWARF in LLVMConfig.cmake

Export LLVM_USE_SPLIT_DWARF in LLVMConfig.cmake so that it can be used
from standalone builds of clang and lldb. Currently, there is no way for
standalone builds to know whether this option was set which means that
it only applies to LLVM.

Differential revision: https://reviews.llvm.org/D89282
The file was modifiedllvm/cmake/modules/LLVMConfig.cmake.in
Commit b215a26628feae349d663f687efe475d622970b7 by ruiling.song
[AMDGPU] Update LiveVariables in convertToThreeAddress()

This can fix an asan failure like below.
==15856==ERROR: AddressSanitizer: use-after-poison on address ...
READ of size 8 at 0x6210001a3cb0 thread T0
    #0 llvm::MachineInstr::getParent()
    #1 llvm::LiveVariables::VarInfo::findKill()
    #2 TwoAddressInstructionPass::rescheduleMIBelowKill()
    #3 TwoAddressInstructionPass::tryInstructionTransform()
    #4 TwoAddressInstructionPass::runOnMachineFunction()

We need to update the Kills if we replace instructions. The Kills
may be later accessed within TwoAddressInstruction pass.

Differential Revision: https://reviews.llvm.org/D89092
The file was addedllvm/test/CodeGen/AMDGPU/stale-livevar-in-twoaddr-pass.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 2513407d39506edf2a98f647088a9e1789f8c418 by sbc
[lld][WebAssembly] Add support for -Bsymbolic flag

This flag works in a similar way to the ELF linker in that it
will resolve any defined symbols to their local definition with
a shared library or -pie executable.

This flag has no effect on static linking.

Differential Revision: https://reviews.llvm.org/D89152
The file was modifiedlld/wasm/Config.h
The file was modifiedlld/wasm/Writer.cpp
The file was modifiedlld/wasm/SyntheticSections.cpp
The file was modifiedlld/wasm/SyntheticSections.h
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/wasm/Options.td
The file was addedlld/test/wasm/bsymbolic.s
The file was modifiedlld/wasm/Relocations.cpp
Commit 85c779d256207fe82ba876d19724c497ee904be7 by i
[llc] -filetype=null: don't create .null if -o is not specified

The new behavior is consistent with llvm-mc -filetype=null.
The file was modifiedllvm/tools/llc/llc.cpp
The file was modifiedllvm/test/CodeGen/X86/null-streamer.ll
Commit ec2c2ad2a2dddf24b052625b5ff434704ea43e24 by Adrian Prantl
Add accessors. (NFC)

There's a place in swift-lldb where it is useful to create a copy of
an lldb_private::Variable. Adding these two accessors makes this
possible.
The file was modifiedlldb/include/lldb/Symbol/Variable.h
The file was modifiedlldb/include/lldb/Symbol/Type.h
Commit 412cdcf2edf2344632e01d5f71da4bbd9838ab7d by pengfei.wang
[X86] Add HRESET instruction.

For more details about these instructions, please refer to the latest ISE document: https://software.intel.com/en-us/download/intel-architecture-instruction-set-extensions-programming-reference.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D89102
The file was modifiedclang/lib/Headers/CMakeLists.txt
The file was modifiedllvm/lib/Target/X86/X86.td
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedllvm/include/llvm/Support/X86TargetParser.def
The file was modifiedclang/docs/ClangCommandLineReference.rst
The file was modifiedclang/test/Preprocessor/x86_target_features.c
The file was addedclang/lib/Headers/hresetintrin.h
The file was modifiedllvm/docs/ReleaseNotes.rst
The file was modifiedllvm/lib/Support/X86TargetParser.cpp
The file was modifiedllvm/test/MC/X86/x86-64.s
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrFormats.td
The file was modifiedclang/lib/Headers/immintrin.h
The file was addedclang/test/CodeGen/x86-hreset-intrin.c
The file was modifiedllvm/test/MC/Disassembler/X86/x86-64.txt
The file was modifiedllvm/test/MC/X86/x86-32-coverage.s
The file was modifiedclang/lib/Headers/cpuid.h
The file was modifiedclang/test/Driver/x86-target-features.c
The file was modifiedllvm/test/MC/Disassembler/X86/x86-32.txt
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.td
The file was modifiedclang/lib/Basic/Targets/X86.h
The file was modifiedllvm/lib/Support/Host.cpp
The file was modifiedllvm/lib/Target/X86/X86Subtarget.h
The file was addedclang/lib/Headers/x86gprintrin.h
Commit d938e6e3c24aab46b2d1578012acd11c41ff0d5d by llvmgnsyncbot
[gn build] Port 412cdcf2edf
The file was modifiedllvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Commit 950ae43091121ea357f735790f4042264cf40728 by Dev
[WebAssembly] GC constructor functions in otherwise unused archive objects

This allows `__wasilibc_populate_libpreopen` to be GC'd in more cases
where it isn't needed, including when linked from Rust's libstd.

Differential Revision: https://reviews.llvm.org/D85062
The file was modifiedlld/wasm/InputFiles.h
The file was addedlld/test/wasm/Inputs/ctor-setup.s
The file was addedlld/test/wasm/Inputs/ctor-lib.s
The file was addedlld/test/wasm/Inputs/ctor-start.s
The file was addedlld/test/wasm/ctor-gc-setup.test
The file was addedlld/test/wasm/ctor-gc.test
The file was modifiedlld/wasm/Symbols.cpp
The file was addedlld/test/wasm/ctor-no-gc.test
The file was modifiedlld/wasm/Writer.cpp
The file was addedlld/test/wasm/Inputs/ctor-setup-call-def.s
The file was modifiedlld/wasm/MarkLive.cpp
The file was addedlld/test/wasm/Inputs/ctor-ctor.s
Commit 84cc39c329f8d4910b8f558971d715f949ce1e94 by jezng
[llvm-readobj] Don't print out section names for STABS symbols

This diff is similar to what D71394 did for `llvm-objdump` -- it avoids
trying to look up a section name for STABS symbols, since some STABS
symbol types (like `N_OSO`) use the `n_sect` field to store other data
instead of a section index.

Differential Revision: https://reviews.llvm.org/D88468
The file was addedllvm/test/tools/llvm-readobj/MachO/stabs.yaml
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/symbol-table.test
Commit e2d4174e9c66251d1b408234b53f53d0903c0285 by richard
Ensure that InheritedAttrs are properly inherited along a redeclaration
chain for ObjCInterfaceDecls.

Only one such declaration can actually have attributes (the definition,
if any), but generally we assume that we can look for InheritedAttrs on
the most recent declaration.
The file was modifiedclang/test/CodeGenObjC/attr-availability.m
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
Commit 913f6005669cfb590c99865a90bc51ed0983d09d by richard
Canonicalize declaration pointers when forming APValues.

References to different declarations of the same entity aren't different
values, so shouldn't have different representations.

Recommit of e6393ee813178e9d3306b8e3c6949a4f32f8a2cb, most recently
reverted in 9a33f027ac7d73e14ae287e78ab554142d1cbc8f due to a bug caused
by ObjCInterfaceDecls not propagating availability attributes along
their redeclaration chains; that bug was fixed in
e2d4174e9c66251d1b408234b53f53d0903c0285.
The file was modifiedclang/test/CodeGenCXX/weak-external.cpp
The file was modifiedclang/lib/AST/DeclBase.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p9.cpp
The file was modifiedclang/test/OpenMP/ordered_messages.cpp
The file was modifiedclang/lib/CodeGen/CGExprConstant.cpp
The file was modifiedclang/include/clang/AST/APValue.h
The file was modifiedclang/lib/AST/APValue.cpp
The file was modifiedclang/lib/AST/Decl.cpp
Commit 61dce0f308e35df1edbd3061af339a3aff8d1f35 by ezhulenev
[mlir] Add async.await operation to async dialect

Add async.await operation to "unwrap" async.values

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D89137
The file was modifiedmlir/lib/Dialect/Async/IR/Async.cpp
The file was modifiedmlir/include/mlir/Dialect/Async/IR/AsyncOps.td
The file was modifiedmlir/test/Dialect/Async/ops.mlir
The file was addedmlir/test/Dialect/Async/verify.mlir
Commit b3b4cda104068e92b77f18c4e3fc0e0b8f3650e0 by sbc
[lld][WebAssembly] Don't GC library objects under `--whole-archive`

Followup on https://reviews.llvm.org/D85062 which ignores
entire library objects when no symbols are used within them.
This is shouldn't apply with `--whole-archive` since this
is specified to treat them like direct object inputs.

Differential Revision: https://reviews.llvm.org/D89290
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/wasm/InputFiles.cpp
The file was modifiedlld/test/wasm/ctor-gc.test
Commit 72c628e83580625ebd9e8521bab03abec4569d14 by tlively
Reland "[WebAssembly] Emulate v128.const efficiently""

This reverts commit 432e4e56d3d2, which reverted 542523a61a21. Two issues from
the original commit have been fixed. First, MSVC does not like when std::array
is initialized with only single braces, so this commit switches to using the
more portable double braces. Second, there was a subtle endianness bug that
prevented the original commit from working correctly on big-endian machines,
which has been fixed by switching to using endianness-agnostic bit twiddling
instead of type punning.

Differential Revision: https://reviews.llvm.org/D88773
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-build-vector.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
Commit 1687a8d83b702332c4aae4f2a95d27c16688418d by craig.topper
[X86][SelectionDAG] Add SADDO_CARRY and SSUBO_CARRY to support multipart signed add/sub overflow legalization.

This passes existing X86 test but I'm not sure if it handles all type
legalization cases it needs to.

Alternative to D89200

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D89222
The file was modifiedllvm/test/CodeGen/X86/ssub_sat.ll
The file was modifiedllvm/test/CodeGen/X86/vec_ssubo.ll
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/include/llvm/CodeGen/ISDOpcodes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/sadd_sat.ll
The file was modifiedllvm/test/CodeGen/X86/sadd_sat_plus.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/test/CodeGen/X86/vec_saddo.ll
The file was modifiedllvm/test/CodeGen/X86/ssub_sat_vec.ll
The file was modifiedllvm/test/CodeGen/X86/sadd_sat_vec.ll
The file was modifiedllvm/test/CodeGen/X86/ssub_sat_plus.ll
The file was modifiedllvm/test/CodeGen/X86/xaluo128.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/test/CodeGen/X86/known-bits.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
Commit 61133e0b1110d03e35d0acc9ccfda2b6d9fb03cd by alexshap
[llvm-install-name-tool] Add -delete_all_rpaths option

This diff adds an option to remove all rpaths from a Mach-O binary.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D88674
The file was modifiedllvm/docs/CommandGuide/llvm-install-name-tool.rst
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-delete-rpath.test
The file was modifiedllvm/tools/llvm-objcopy/InstallNameToolOpts.td
Commit acd0dd3a62d1a05bdc97d03a8a73326f7acb7c91 by jay.foad
[AMDGPU] Use lowercase for subtarget feature names in RUN lines
The file was modifiedllvm/test/CodeGen/AMDGPU/vcmpx-exec-war-hazard.mir
The file was modifiedllvm/test/MC/AMDGPU/expressions-gfx10.s
The file was modifiedllvm/test/CodeGen/AMDGPU/hsa.ll
The file was modifiedllvm/test/MC/AMDGPU/gfx10_unsupported.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_all.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_err.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_dpp16.s
The file was modifiedllvm/test/CodeGen/AMDGPU/hazard-hidden-bundle.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.wavefrontsize.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/hazard-in-bundle.mir
The file was modifiedllvm/test/MC/AMDGPU/vop3-literal.s
The file was modifiedllvm/test/CodeGen/AMDGPU/basic-branch.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/regbank-reassign-wave64.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/v_cndmask.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-elf.ll
The file was modifiedllvm/test/MC/AMDGPU/hsa-gfx10.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_dpp16.txt
The file was modifiedllvm/test/MC/AMDGPU/hsa_isa_version_attrs.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_dpp8.s
The file was modifiedllvm/test/CodeGen/AMDGPU/smem-war-hazard.mir
The file was modifiedllvm/test/MC/AMDGPU/wave_any.s
The file was modifiedllvm/test/MC/AMDGPU/hsa-wave-size.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_dpp8.txt
Commit 06a5e2f307891de2073f03fe3a1113384d1cccea by mkazantsev
[Test] Use generated auto-checks to make further changes more visible
The file was modifiedllvm/test/Transforms/IndVarSimplify/promote-iv-to-eliminate-casts.ll
Commit 5df61724a171710570f37938eb229401fa0176c7 by llvm-dev
[InstCombine] Support uniform vector splats in ((((X >> C) & CC) + Y) << C) folds.

Add support for uniform vector splats (no undefs).
The file was modifiedllvm/test/Transforms/InstCombine/pr19420.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
Commit 6c23cbc5603cf0011f8d57b0354954aeca695daf by llvm-dev
[X86] Convert integer _mm_reduce_* intrinsics to emit llvm.reduction intrinsics (PR47506)

Emit the equivalent integer reduction intrinsics in IR instead of expanding to shuffle+arithmetic sequences.

The fadd/fmul reductions might be trickier as they assume a similar bisection reduction while the generic intrinsics assume a sequential reduction (intel docs are ambiguous on the correct approach) - I'm not sure if we want to always tag them with reassoc? Anyway, that issue can wait until a separate fp patch along with the fmin/fmax reductions.

Differential Revision: https://reviews.llvm.org/D87604
The file was modifiedclang/test/CodeGen/X86/avx512-reduceIntrin.c
The file was modifiedclang/test/CodeGen/X86/avx512-reduceMinMaxIntrin.c
The file was modifiedclang/lib/Headers/avx512fintrin.h
The file was modifiedclang/include/clang/Basic/BuiltinsX86.def
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
Commit 7324616660fc0995fa8c166e3c392361222d5dbc by lebedev.ri
[SCEV] BuildConstantFromSCEV(): properly handle SCEVZeroExtend from ptr

As being reported in https://reviews.llvm.org/D88806#2326944,
this is pretty much the sibling problem of https://reviews.llvm.org/D88806#2325340,
with root cause being that SCEV now models `ptrtoint` as trunc/zext/self of unknown.

The appropriate (currently crashing) test coverage added.
The file was modifiedllvm/test/Analysis/ScalarEvolution/ptrtoint-constantexpr-loop.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 05ef552e5660d05cb6cd730c734e709d8323fd6f by kristof.beyls
Add expected response time and escalation path to the security docs

Following up on the discussion within the group during the roundtable at
the 2020 LLVM Developers Meeting, this commit adds to the security docs:

* How long we expect acknowledging security reports will take
* The escalation path the reporter can follow if they get no response

A temporary line inviting reporters to directly follow the escalation
path while the mailing list is being setup is also added.

Differential Revision: https://reviews.llvm.org/D89068
The file was modifiedllvm/docs/Security.rst
Commit cdf0214845a1230d424bfdab0bafa9c484aa34e0 by jay.foad
[AMDGPU] v_mac_legacy_f32 does not support DPP

Differential Revision: https://reviews.llvm.org/D89245
The file was modifiedllvm/lib/Target/AMDGPU/VOP2Instructions.td
The file was modifiedllvm/test/MC/AMDGPU/gfx10_unsupported.s
Commit aaafe350bb65dfc24c2cdad4839059ac81899fbe by lebedev.ri
[SCEV] BuildConstantFromSCEV(): properly handle SCEVSignExtend from ptr

Much similar to the ZExt/Trunc handling.
Thanks goes to Alexander Richardson for nudging towards noticing this one proactively.

The appropriate (currently crashing) test coverage added.
The file was modifiedllvm/test/Analysis/ScalarEvolution/ptrtoint-constantexpr-loop.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp