SuccessChanges

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

Summary

  1. Emit predefined macro for wavefront size for amdgcn (details)
  2. [TableGen] New backend to print detailed records. (details)
  3. [gn build] Port 0c1bb4f8851 (details)
  4. [compiler-rt] [netbsd] Improve the portability of ThreadSelfTlsTcb (details)
  5. Fix failure in test hip-macros.hip (details)
  6. [Statepoints][ISEL] visitGCRelocate: chain to current DAG root. (details)
  7. Fix interaction between stack alignment and inline-asm stack clash protection (details)
  8. [mlir] Attempt to appease gcc-5 const char* -> StringLiteral conversion issu (details)
  9. [mlir] Fix call op conversion in bare-ptr calling convention (details)
  10. [clangd] Add bencmark for measuring latency of DecisionForest model. (details)
  11. [AArch64] Generate dot for v16i8 sum reduction to i32 (details)
  12. TruncInstCombine.cpp - use auto * to fix llvm-qualified-auto clang-tidy warning. NFCI. (details)
  13. TruncInstCombine.cpp - fix header include ordering to fix llvm-include-order clang-tidy warning. NFCI. (details)
  14. [InstCombine] recognizeBSwapOrBitReverseIdiom - support for 'partial' bswap patterns (PR47191) (details)
  15. Revert "[WebAssembly] Emulate v128.const efficiently" (details)
  16. [CostModel] move default handling after switch; NFC (details)
  17. [MLIR] Better message for FuncOp type mismatch (details)
  18. [mlir] Add Float Attribute, Integer Attribute and Bool Attribute subclasses to python bindings. (details)
  19. [MemCpyOpt] Regnerate test checks (NFC) (details)
  20. [VPlan] Use isa<> instead of directly checking VPRecipeID (NFC). (details)
  21. [lldb] Fix bug in fallback logic for finding the resource directory. (details)
  22. [libc++] Remove unnecessary usage of <iostream> in the test suite (details)
  23. [InstCombine] Add trunc(bswap(trunc/zext(x))) vector tests (details)
  24. [mlir][vector] Add canonicalization patterns for extractMap/insertMap (details)
  25. Revert rG3d14a1e982ad27 - "[InstCombine] recognizeBSwapOrBitReverseIdiom - support for 'partial' bswap patterns (PR47191)" (details)
  26. [AlwaysInliner] Update BFI when inlining (details)
  27. Revert "[AlwaysInliner] Update BFI when inlining" (details)
  28. [gn build] Don't define CINDEX_EXPORTS (details)
  29. Reland [AlwaysInliner] Update BFI when inlining (details)
  30. scudo: Simplify AtomicOptions::setFillContentsMode. NFCI. (details)
  31. [DAE] MarkLive in MarkValue(MaybeLive) if any use is live (details)
  32. [MemCpyOpt] Add tests from D40802 (NFC) (details)
  33. [libc++] NFCI: Remove _LIBCPP_EXTERN_TEMPLATE2 (details)
  34. Update legalizer-info-validation.mir test to test all opcodes. (details)
  35. [llc] Initialize TargetOptions after Triple is available (details)
  36. [docs] Update ControlFlowIntegrity.rst. (details)
  37. [libc++] NFCI: Simplify macro definitions for the debug mode (details)
  38. [libc++] NFCI: Remove the _LIBCPP_DEBUG_MODE helper macro (details)
  39. [MLIR][SPIRV] Add initial support for OpSpecConstantComposite. (details)
  40. Relax newly added opcode alias check to check only for a number instead of a specific opcode. (details)
  41. [MemCpyOpt] Avoid double invalidation (NFCI) (details)
  42. [MemCpyOpt] Add helper to erase instructions (NFC) (details)
  43. [lldb] Add a "design" section to the documentation. (details)
  44. [flang][NFC] Fix mis-matched struct/class declarations (details)
  45. Release the shadow memory used by the mmap range at munmap (details)
  46. [llvm-objcopy][NFC] refactor error handling. part 3. (details)
  47. [Hexagon] Move selection of HVX multiply from lowering to patterns (details)
  48. [libc++] Allow retries on some slightly flaky mutex tests (details)
  49. [Driver] Move detectLibcxxIncludePath to ToolChain (details)
  50. [clang-tidy] Implement readability-function-cognitive-complexity check (details)
  51. [clang] Implement objc_non_runtime_protocol to remove protocol metadata (details)
  52. [NFC][MSAN] Extract llvm.abs handling into a function (details)
  53. [libc++] Fix the build with GCC < 10 (details)
  54. [HIP] Align device binary (details)
  55. Don't reject calls to MinGW's unusual _setjmp declaration. (details)
  56. [test][Coro][NewPM] Fix coro-elide.ll under NPM (details)
  57. [MetaRenamer][NewPM] Port metarenamer to NPM (details)
  58. Fix the test case from D88686 (details)
  59. [CUDA][HIP] Fix bound arch for offload action for fat binary (details)
  60. [fuzzer] Remove unused variable (details)
  61. Diagnose invalid target ID for AMDGPU toolchain for assembler (details)
  62. Revert "[Driver] Move detectLibcxxIncludePath to ToolChain" (details)
  63. [gn build] Port ace644030e6 (details)
  64. [CMake] Don't use CMakePushCheckState (details)
  65. [Sparc] Remove cast that truncates immediate operands to 32 bits. (details)
  66. Fix the test case in D88686 (details)
  67. [lsan] Share platform allocator settings between ASan and LSan (details)
  68. Revert "[lsan] Share platform allocator settings between ASan and LSan" (details)
  69. [X86] Add missing intrinsic test for aesdecwide128kl and aesdecwide256kl. Capture all output values in keylocker tests. NFC (details)
  70. [X86] Move MWAITX_DAG ISD opcode so it is not in the strict FP range. (details)
  71. [Driver] Move detectLibcxxIncludePath to ToolChain (details)
Commit 36501b180a4f0194f0cfb4374d096ae660182827 by Yaxun.Liu
Emit predefined macro for wavefront size for amdgcn

Also fix the issue of multiple -m[no-]wavefrontsize64
options to make the last one wins.

Differential Revision: https://reviews.llvm.org/D88370
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
The file was addedclang/test/Driver/hip-macros.hip
The file was modifiedclang/test/Driver/amdgpu-macros.cl
The file was modifiedclang/lib/Basic/Targets/AMDGPU.cpp
The file was modifiedclang/test/Driver/hip-toolchain-features.hip
The file was modifiedclang/lib/Basic/Targets/AMDGPU.h
The file was modifiedclang/test/Driver/amdgpu-features.c
Commit 0c1bb4f8851b87224f33abafbaae805942009a7f by paul
[TableGen] New backend to print detailed records.
Pertinent lints are fixed.
The file was modifiedllvm/lib/TableGen/Main.cpp
The file was modifiedllvm/docs/TableGen/BackGuide.rst
The file was modifiedllvm/lib/Support/SourceMgr.cpp
The file was modifiedllvm/include/llvm/TableGen/Record.h
The file was modifiedllvm/lib/TableGen/CMakeLists.txt
The file was modifiedllvm/lib/TableGen/TableGenBackendSkeleton.cpp
The file was modifiedllvm/include/llvm/Support/SourceMgr.h
The file was addedllvm/lib/TableGen/DetailedRecordsBackend.cpp
The file was modifiedllvm/lib/TableGen/Record.cpp
The file was modifiedllvm/utils/TableGen/TableGen.cpp
Commit d9e397208002281322cb72383edff24e21dbeb27 by llvmgnsyncbot
[gn build] Port 0c1bb4f8851
The file was modifiedllvm/utils/gn/secondary/llvm/lib/TableGen/BUILD.gn
Commit 2a9ce60de98e53198047daaeeec3cf09ece4e693 by n54
[compiler-rt] [netbsd] Improve the portability of ThreadSelfTlsTcb

Use __lwp_gettcb_fast() and __lwp_getprivate_fast(), as _lwp_getprivate()
can be a biased pointer and invalid for use in this function on all CPUs.
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
Commit c87c017a4c47c47b002b9f55f25285298cd07093 by Yaxun.Liu
Fix failure in test hip-macros.hip

requires amdgpu-registered-target.
The file was modifiedclang/test/Driver/hip-macros.hip
Commit 7b19cd06d732e9c3db326dc9b9c82d66dc624fd2 by dantrushin
[Statepoints][ISEL] visitGCRelocate: chain to current DAG root.

This is similar to D87251, but for CopyFromRegs nodes.
Even for local statepoint uses we generate CopyToRegs/CopyFromRegs
nodes.  When generating CopyFromRegs in visitGCRelocate, we must chain
to current DAG root, not EntryNode, to ensure proper ordering of copy
w.r.t. statepoint node producing result for it.

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D88639
The file was modifiedllvm/test/CodeGen/X86/statepoint-vreg-details.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
Commit f2c6bfa350de142e4d63808d03335f69bd136d6a by sguelton
Fix interaction between stack alignment and inline-asm stack clash protection

As reported in https://github.com/rust-lang/rust/issues/70143 alignment is not
taken into account when doing the probing. Fix that by adjusting the first probe
if the stack align is small, or by extending the dynamic probing if the
alignment is large.

Differential Revision: https://reviews.llvm.org/D84419
The file was addedllvm/test/CodeGen/X86/stack-clash-large-large-align.ll
The file was removedllvm/test/CodeGen/X86/stack-clash-no-free-probe.ll
The file was addedllvm/test/CodeGen/X86/stack-clash-small-large-align.ll
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.h
The file was addedllvm/test/CodeGen/X86/stack-clash-small-alloc-medium-align.ll
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
Commit 86b14d0969ebdf51674df6d41c5e88a8d34879e8 by ntv
[mlir] Attempt to appease gcc-5 const char* -> StringLiteral conversion issu
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
Commit a611f9a5c689995f21204139eb2667b8ce4c9dd2 by diego.caballero
[mlir] Fix call op conversion in bare-ptr calling convention

We hit an llvm_unreachable related to unranked memrefs for call ops
with scalar types. Removing the llvm_unreachable since the conversion
should gracefully bail out in the presence of unranked memrefs. Adding
tests to verify that.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D88709
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-static-memref-ops.mlir
Commit db2a646c5f002cc16d02d6fac0b2d715cdd4a809 by usx
[clangd] Add bencmark for measuring latency of DecisionForest model.

Differential Revision: https://reviews.llvm.org/D88590
The file was addedclang-tools-extra/clangd/benchmarks/CompletionModel/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/benchmarks/CMakeLists.txt
The file was addedclang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
Commit f192594956281744f67c4535bf2cce922f155aff by david.green
[AArch64] Generate dot for v16i8 sum reduction to i32

Convert VECREDUCE_ADD( EXTEND(v16i8_type) ) to VECREDUCE_ADD( DOTv16i8(v16i8_type) ) whenever the result type is i32. This gains in one of the SPECCPU 2017 benchmark.

This partially solves the bug: https://bugs.llvm.org/show_bug.cgi?id=46888
Meta ticket: https://bugs.llvm.org/show_bug.cgi?id=46929

Differential Revision: https://reviews.llvm.org/D88577
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/neon-dot-product.ll
Commit 5e8e89d814817fac19c5a93e4ed7910e97401a3f by llvm-dev
TruncInstCombine.cpp - use auto * to fix llvm-qualified-auto clang-tidy warning. NFCI.
The file was modifiedllvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp
Commit 0347f3ea720b16305d77449f9868255496e0b27c by llvm-dev
TruncInstCombine.cpp - fix header include ordering to fix llvm-include-order clang-tidy warning. NFCI.
The file was modifiedllvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp
Commit 3d14a1e982ad27111346471564d575ad5efc6419 by llvm-dev
[InstCombine] recognizeBSwapOrBitReverseIdiom - support for 'partial' bswap patterns (PR47191)

If we're bswap'ing some bytes and zero'ing the remainder we can perform this as a bswap+mask which helps us match 'partial' bswaps as a first step towards folding into a more complex bswap pattern.

Differential Revision: https://reviews.llvm.org/D88578
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit 432e4e56d3d25c209b3336655aa374095e695956 by stilis
Revert "[WebAssembly] Emulate v128.const efficiently"

This reverts commit 542523a61a21c13e7f244bcf821b0fdeb8c6bb24.
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-build-vector.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
Commit 33fa3dbce91c8e75af57beeb013d82f08cccb733 by spatel
[CostModel] move default handling after switch; NFC

We will need to add intrinsics to the switch (such as
the ones that are currently in the switch above this
one) that deal with special cases and then break to
the default handling.
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit 34d12c15f7d8336c74bd4493e8d284dc169587b9 by stephen.neuendorffer
[MLIR] Better message for FuncOp type mismatch

Previously the actual types were not shown, which makes the message
difficult to grok in the context of long lowering chains.  Also, it
appears that there were no actual tests for this.

Differential Revision: https://reviews.llvm.org/D88318
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/test/IR/operand.mlir
Commit 2fc0d4a8e83807d57f8d586af82934f94dead5e3 by zhanghb97
[mlir] Add Float Attribute, Integer Attribute and Bool Attribute subclasses to python bindings.

Based on PyAttribute and PyConcreteAttribute classes, this patch implements the bindings of Float Attribute, Integer Attribute and Bool Attribute subclasses.
This patch also defines the `mlirFloatAttrDoubleGetChecked` C API which is bound with the `FloatAttr.get_typed` python method.

Differential Revision: https://reviews.llvm.org/D88531
The file was modifiedmlir/test/Bindings/Python/ir_attributes.py
The file was modifiedmlir/include/mlir-c/StandardAttributes.h
The file was modifiedmlir/lib/CAPI/IR/StandardAttributes.cpp
The file was modifiedmlir/lib/Bindings/Python/IRModules.cpp
Commit 64c54c5459cfae8478ce28710784f36b0d94fb2f by nikita.ppv
[MemCpyOpt] Regnerate test checks (NFC)
The file was modifiedllvm/test/Transforms/MemCpyOpt/smaller.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/invariant.start.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memset-memcpy-to-2x-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/crash.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/store-to-memset-is-nonzero-type.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/form-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/capturing-func.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/2011-06-02-CallSlotOverwritten.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/load-store-to-memcpy.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/align.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/callslot_aa.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/loadstore-sret.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/callslot_deref.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/lifetime.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/atomic.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/profitable-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/2008-02-24-MultipleUseofSRet.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/aggregate-type-crash.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/sret.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memcpy.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/store-to-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/2008-03-13-ReturnSlotBitcast.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/pr29105.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/fca2memcpy.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/pr37967.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memcpy-undef.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/process_store.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/vscale-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memcpy-to-memset.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memset-memcpy-oversized.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/callslot_throw.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/stackrestore.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/nontemporal.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memmove.ll
Commit 0867a9e85ace8ed0b11f6a7fc4c9e4bb1606263b by flo
[VPlan] Use isa<> instead of directly checking VPRecipeID (NFC).

getVPRecipeID is intended to be only used in `classof` helpers. Instead
of checking it directly, use isa<> with the correct recipe type.
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit 07c112574a324318a02ef29901a0d5aa1fd95144 by Jonas Devlieghere
[lldb] Fix bug in fallback logic for finding the resource directory.

Both of the if-clauses modify the raw_path variable and only one of them
was resetting the variable for the fallback. Avoid future bugs like that
by always resetting the variable.

Differential revision: https://reviews.llvm.org/D88704
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp
Commit aac2de1b1af07448483f8cdb3a588b9504def9ac by Louis Dionne
[libc++] Remove unnecessary usage of <iostream> in the test suite

Tests should strive to be as minimal as possible, since it makes them
relevant on platforms where <iostream> does not work.
The file was modifiedlibcxx/test/support/private_constructor.h
Commit d0dd7cadbd1f8fd57ac09dc9bb9c853ff0329988 by llvm-dev
[InstCombine] Add trunc(bswap(trunc/zext(x))) vector tests
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit d1c8e179d8773f82cdba818dac25667224a9e8d1 by thomasraoux
[mlir][vector] Add canonicalization patterns for extractMap/insertMap

Add basic canonicalization patterns for the extractMap/insertMap to allow them
to be folded into Transfer ops.
Also mark transferRead as memory read so that it can be removed by dead code.

Differential Revision: https://reviews.llvm.org/D88622
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/Dialect/Vector/vector-distribution.mlir
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
Commit 0364721e3ef2edca318e27b9453adf977911dbb1 by llvm-dev
Revert rG3d14a1e982ad27 - "[InstCombine] recognizeBSwapOrBitReverseIdiom - support for 'partial' bswap patterns (PR47191)"

This reverts commit 3d14a1e982ad27111346471564d575ad5efc6419.

This is breaking on some 2stage clang buildbots
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
Commit b1bf24667fc3ec5dc4b541148d0d722ffa28a6df by aeubanks
[AlwaysInliner] Update BFI when inlining

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D88324
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
The file was addedllvm/test/Transforms/Inline/prof-update-sample-alwaysinline.ll
The file was modifiedllvm/test/Transforms/Inline/prof-update-sample.ll
Commit 9b8c0b8b465f439226b5d2bd8f71d55436801bd9 by aeubanks
Revert "[AlwaysInliner] Update BFI when inlining"

This reverts commit b1bf24667fc3ec5dc4b541148d0d722ffa28a6df.
The file was modifiedllvm/test/Transforms/Inline/prof-update-sample.ll
The file was removedllvm/test/Transforms/Inline/prof-update-sample-alwaysinline.ll
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
Commit 354ba1cb8006c9126851e1b006f799de52ecb7bc by aeubanks
[gn build] Don't define CINDEX_EXPORTS

This causes
../../clang/include\clang-c/Platform.h(23,11): warning: 'CINDEX_EXPORTS' macro redefined [-Wmacro-redefined]
  #define CINDEX_EXPORTS
The file was modifiedllvm/utils/gn/secondary/clang/tools/libclang/BUILD.gn
Commit eb55735073d53f7816b9a4080e6f54dfeda5ae50 by aeubanks
Reland [AlwaysInliner] Update BFI when inlining

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D88324
The file was modifiedclang/test/CodeGen/lto-newpm-pipeline.c
The file was addedllvm/test/Transforms/Inline/prof-update-sample-alwaysinline.ll
The file was modifiedllvm/test/Transforms/Inline/prof-update-sample.ll
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
Commit a8938f3da319f4cc17b80ebab582a6c77efa6705 by peter
scudo: Simplify AtomicOptions::setFillContentsMode. NFCI.

Differential Revision: https://reviews.llvm.org/D88747
The file was modifiedcompiler-rt/lib/scudo/standalone/options.h
Commit 7468afe9ca135228f4c5a48f1b061ca57786fad6 by aeubanks
[DAE] MarkLive in MarkValue(MaybeLive) if any use is live

While looping through all args or all return values, we may mark a use
of a later iteration as live. Previously when we got to that later value
it would ignore that and continue adding to Uses instead of marking it
live. For example, when looping through arg#0 and arg#1,
MarkValue(arg#0, Live) may cause some use of arg#1 to be live, but
MarkValue(arg#1, MaybeLive) will not notice that and continue adding
into Uses.

Now MarkValue(RA, MaybeLive) will MarkLive(RA) if any use is live.

Fixes PR47444.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D88529
The file was modifiedllvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
The file was addedllvm/test/Transforms/DeadArgElim/preserve-used-ret.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h
Commit 84feca6a84d90c5c0b8ecbcffc68e8e4b1285f32 by nikita.ppv
[MemCpyOpt] Add tests from D40802 (NFC)

Even though that patch didn't stick, we should retain the test
coverage.
The file was addedllvm/test/Transforms/MemCpyOpt/merge-into-memset.ll
The file was addedllvm/test/Transforms/MemCpyOpt/memcpy-invoke-memcpy.ll
The file was addedllvm/test/Transforms/MemCpyOpt/mixed-sizes.ll
The file was addedllvm/test/Transforms/MemCpyOpt/nonlocal-memcpy-memcpy.ll
Commit 1a92de0064bcf9ef605ca9456812adf411e9ee4e by Louis Dionne
[libc++] NFCI: Remove _LIBCPP_EXTERN_TEMPLATE2

This seems to have been added a long time ago as a temporary help
for debugging some <regex> issue, but it's really the same as
_LIBCPP_EXTERN_TEMPLATE.
The file was modifiedlibcxx/include/__locale
The file was modifiedlibcxx/include/locale
The file was modifiedlibcxx/include/__config
Commit 1e020b2a1783b5db54d124923b975626e51ebeb1 by Amara Emerson
Update legalizer-info-validation.mir test to test all opcodes.

The test doesn't fail if we add opcodes to the end of the opcodes definition
list, so we were missing some.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
Commit 322519ee1276cd7cc5f32b3fe335d0b804c8b8c0 by i
[llc] Initialize TargetOptions after Triple is available

Some targets have different defaults. This patch defers initialization of `TargetOptions` so that a future patch can pass `TargetOptions` to `InitTargetOptionsFromCodeGenFlags`

Reviewed By: jasonliu

Differential Revision: https://reviews.llvm.org/D88748
The file was modifiedllvm/tools/llc/llc.cpp
Commit 66cf68ed46789217a8382bb419a0bda1c4e97650 by eugenis
[docs] Update ControlFlowIntegrity.rst.

Expand the list of targets that support cfi-icall.
Add ThinLTO everywhere LTO is mentioned. AFAIK all CFI features are
supported with ThinLTO.

Differential Revision: https://reviews.llvm.org/D87717
The file was modifiedclang/docs/ControlFlowIntegrity.rst
Commit 31e820378b8ae4d81e9d206a7dae64ccf4b4c97f by Louis Dionne
[libc++] NFCI: Simplify macro definitions for the debug mode

The debug mode always had three possibilities:
- _LIBCPP_DEBUG is undefined => no assertions
- _LIBCPP_DEBUG == 0         => some assertions
- _LIBCPP_DEBUG == 1         => some assertions + iterator checks

This was documented that way, however the code did not make this clear
at all. The discrepancy between _LIBCPP_DEBUG and _LIBCPP_DEBUG_LEVEL
was especially confusing. I reworked how the various macros are defined
without changing anything else to make the code clearer.
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/iterator
The file was modifiedlibcxx/include/locale
The file was modifiedlibcxx/include/list
The file was modifiedlibcxx/include/string
The file was modifiedlibcxx/include/unordered_set
The file was modifiedlibcxx/include/vector
The file was modifiedlibcxx/include/__debug
The file was modifiedlibcxx/include/__hash_table
The file was modifiedlibcxx/include/unordered_map
Commit 870827f65222ebb1a9701d4d0e916f315dc692a8 by Louis Dionne
[libc++] NFCI: Remove the _LIBCPP_DEBUG_MODE helper macro

It was used inconsistently and the name was pretty confusing, so we might
as well use `#if _LIBCPP_DEBUG_LEVEL == 2` consistently everywhere.
The file was modifiedlibcxx/include/__hash_table
The file was modifiedlibcxx/include/__debug
Commit 0c8f9b8099fd0500cd885bc699924e20371014ff by antiagainst
[MLIR][SPIRV] Add initial support for OpSpecConstantComposite.

This commit adds support to SPIR-V's composite specialization constants.
These are specialization constants which are composed of other spec
constants (whehter scalar or composite), regular constatns, or undef
values.

This commit adds support for parsing, printing, verification, and
(De)serialization.

A few TODOs are still in order:
- Supporting more types of constituents; currently, only scalar spec constatns are supported.
- Extending `spv._reference_of` to support composite spec constatns.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D88568
The file was modifiedmlir/test/Dialect/SPIRV/Serialization/spec-constant.mlir
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
The file was modifiedmlir/test/Dialect/SPIRV/structure-ops.mlir
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/Deserializer.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/Serializer.cpp
Commit 24f406e6d39bfd43eb1ce7fbee525256fa8adc4c by douglas.yung
Relax newly added opcode alias check to check only for a number instead of a specific opcode.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
Commit 87b63c1726e24214272cd6c04825c585635d1cdc by nikita.ppv
[MemCpyOpt] Avoid double invalidation (NFCI)

The removal of the cpy instruction is left to the caller of
performCallSlotOptzn(), including the invalidation of MD. Both
call-sites already do this.

Also handle incrementation of NumMemCpyInstr consistently at the
call-site. One of the call-site was already doing this, which
ended up incrementing the statistic twice.

This fix was part of D26739.
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
Commit 94704ed008f78e71aa42a452d8b03c122e0f78cd by nikita.ppv
[MemCpyOpt] Add helper to erase instructions (NFC)

Next to erasing the instruction, we also always want to remove
it from MSSA and MD. Use a common function to do so.

This is a refactoring split out from D26739.
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
Commit 128e999d63c41e54d5d73c8af47e1ce401e6a200 by Jonas Devlieghere
[lldb] Add a "design" section to the documentation.

Create a "Design" section for the LLDB documentation. The goal is to
have design documents that describe how the LLDB internals work.

Currently similar pages  are mixed together under the "Development". The
existing pages describing the architecture, the reproducers, the
structured data plugins, and the SB API could be housed here. I hope
we'd see more pages being added here in the future.

Differential revision: https://reviews.llvm.org/D88516
The file was addedlldb/docs/design/sbapi.rst
The file was removedlldb/docs/resources/architecture.rst
The file was addedlldb/docs/design/reproducers.rst
The file was modifiedlldb/docs/.htaccess
The file was removedlldb/docs/resources/reproducers.rst
The file was removedlldb/docs/resources/sbapi.rst
The file was modifiedlldb/docs/index.rst
The file was addedlldb/docs/design/structureddataplugins.md
The file was addedlldb/docs/design/overview.rst
The file was removedlldb/docs/resources/structureddataplugins.md
Commit 11622d0fed8c1fb99124ebf4a6aece4bcc83b367 by tkeith
[flang][NFC] Fix mis-matched struct/class declarations

The template `ListDirectedStatementState` was declared as a struct and then as a class.
Fix it so they match.

Differential Revision: https://reviews.llvm.org/D88711
The file was modifiedflang/runtime/io-stmt.h
Commit 045a620c455d2f27a536d687ee6a0299b9e2c734 by jianzhouzh
Release the shadow memory used by the mmap range at munmap

When an application does a lot of pairs of mmap and munmap, if we did
not release shadoe memory used by mmap addresses, this would increase
memory usage.

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D88686
The file was addedcompiler-rt/test/dfsan/munmap_release_shadow.c
The file was modifiedcompiler-rt/lib/dfsan/dfsan_interceptors.cpp
Commit 0373c768c56fc7ce6fe1efa48383f7b376e7bc2a by a.v.lapshin
[llvm-objcopy][NFC] refactor error handling. part 3.

Remove usages of special error reporting functions(error(),
reportError()). Errors are reported as Expected<>/Error returning
values. This part is for ELF subfolder of llvm-objcopy.

Testing: check-all.

Differential Revision: https://reviews.llvm.org/D87987
The file was modifiedllvm/tools/llvm-objcopy/wasm/WasmObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was removedllvm/tools/llvm-objcopy/llvm-objcopy.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
Commit f528816d586a42e4cf27af5b2fa9ba91213307aa by kparzysz
[Hexagon] Move selection of HVX multiply from lowering to patterns

Also, change i32*i32 to V6_vmpyieoh + V6_vmpyiewuh_acc, which works
on V60 as well.
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/arith.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatternsHVX.td
Commit f7e91e6cc7f35dd0dcc176463a355d78e1c020b1 by Louis Dionne
[libc++] Allow retries on some slightly flaky mutex tests
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp
Commit a594fd28e373cb7cd348cf01f6a90e055bf6cf6d by phosek
[Driver] Move detectLibcxxIncludePath to ToolChain

This helper method is useful even outside of Gnu toolchains, so move
it to ToolChain so it can be reused in other toolchains such as Fuchsia.

Differential Revision: https://reviews.llvm.org/D88452
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
The file was modifiedclang/include/clang/Driver/ToolChain.h
Commit ace644030e67506114d3ac9a221cf8eb5d10159c by lebedev.ri
[clang-tidy] Implement readability-function-cognitive-complexity check

Currently, there is basically just one clang-tidy check to impose
some sanity limits on functions - `clang-tidy-readability-function-size`.
It is nice, allows to limit line count, total number of statements,
number of branches, number of function parameters (not counting
implicit `this`), nesting level.

However, those are simple generic metrics. It is still trivially possible
to write a function, which does not violate any of these metrics,
yet is still rather unreadable.

Thus, some additional, slightly more complicated metric is needed.
There is a well-known [[ https://en.wikipedia.org/wiki/Cyclomatic_complexity | Cyclomatic complexity]], but certainly has its downsides.
And there is a [[ https://www.sonarsource.com/docs/CognitiveComplexity.pdf | COGNITIVE COMPLEXITY by SonarSource ]], which is available for opensource on https://sonarcloud.io/.

This check checks function Cognitive Complexity metric, and flags
the functions with Cognitive Complexity exceeding the configured limit.
The default limit is `25`, same as in 'upstream'.

The metric is implemented as per [[ https://www.sonarsource.com/docs/CognitiveComplexity.pdf | COGNITIVE COMPLEXITY by SonarSource ]] specification version 1.2 (19 April 2017), with two notable exceptions:
   * `preprocessor conditionals` (`#ifdef`, `#if`, `#elif`, `#else`,
     `#endif`) are not accounted for.
      Could be done. Currently, upstream does not account for them either.
   * `each method in a recursion cycle` is not accounted for.
      It can't be fully implemented, because cross-translational-unit
      analysis would be needed, which is not possible in clang-tidy.
      Thus, at least right now, i completely avoided implementing it.

There are some further possible improvements:
* Are GNU statement expressions (`BinaryConditionalOperator`) really free?
  They should probably cause nesting level increase,
  and complexity level increase when they are nested within eachother.
* Microsoft SEH support
* ???

Reviewed By: aaron.ballman, JonasToth, lattner

Differential Revision: https://reviews.llvm.org/D36836
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/list.rst
The file was addedclang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was addedclang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.h
The file was addedclang-tools-extra/docs/clang-tidy/checks/readability-function-cognitive-complexity.rst
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-function-cognitive-complexity.cpp
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit 14f6bfcb52e77867a6a84fcfd9e21bb5f1f5795c by nathan
[clang] Implement objc_non_runtime_protocol to remove protocol metadata

Summary:
Motivated by the new objc_direct attribute, this change adds a new
attribute that remotes metadata from Protocols that the programmer knows
isn't going to be used at runtime. We simply have the frontend skip
generating any protocol metadata entries (e.g. OBJC_CLASS_NAME,
_OBJC_$_PROTOCOL_INSTANCE_METHDOS, _OBJC_PROTOCOL, etc) for a protocol
marked with `__attribute__((objc_non_runtime_protocol))`.

There are a few APIs used to retrieve a protocol at runtime.
`@protocol(SomeProtocol)` will now error out of the requested protocol
is marked with attribute. `objc_getProtocol` will return `NULL` which
is consistent with the behavior of a non-existing protocol.

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75574
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.h
The file was modifiedclang/lib/AST/DeclObjC.cpp
The file was modifiedclang/include/clang/AST/DeclObjC.h
The file was addedclang/test/CodeGenObjC/non-runtime-protocol.m
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedclang/lib/CodeGen/CGObjCGNU.cpp
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/lib/CodeGen/CGObjCMac.cpp
Commit aff896dea13fed04d79bbd1ce20d5e49fec720bc by Vitaly Buka
[NFC][MSAN] Extract llvm.abs handling into a function

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D88519
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Commit 04fce1515b7ae2fcf7986d8578c18cfd559c68b2 by Louis Dionne
[libc++] Fix the build with GCC < 10

For now, we still need to support older GCCs, so work around the lack of
__is_constructible on older GCCs.
The file was modifiedlibcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp
The file was modifiedlibcxx/include/type_traits
Commit dc6a0b0ec7e3d72a4cc849af4e4aa6c6a29a53d2 by Yaxun.Liu
[HIP] Align device binary

To facilitate faster loading of device binaries and share them among processes,
HIP runtime favors their alignment being 4096 bytes. HIP runtime can load
unaligned device binaries, however, aligning them at 4096 bytes results in
faster loading and less shared memory usage.

This patch adds an option -bundle-align to clang-offload-bundler which allows
bundles to be aligned at specified alignment. By default it is 1, which is NFC
compared to existing format.

This patch then aligns embedded fat binary and device binary inside fat binary
at 4096 bytes.

It has been verified this change does not cause significant overall file size increase
for typical HIP applications (less than 1%).

Differential Revision: https://reviews.llvm.org/D88734
The file was modifiedclang/test/Driver/hip-toolchain-no-rdc.hip
The file was modifiedclang/test/CodeGenCUDA/device-stub.cu
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/test/Driver/clang-offload-bundler.c
The file was modifiedclang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
The file was modifiedclang/lib/CodeGen/CGCUDANV.cpp
The file was modifiedclang/test/Driver/hip-toolchain-rdc.hip
Commit 8fb2a235b0f22dedba72b8b559ba33171a8dcd09 by richard
Don't reject calls to MinGW's unusual _setjmp declaration.

We now recognize this function as a builtin despite it having an
unexpected number of parameters; make sure we don't enforce that it has
only 1 argument for its 2 parameters.
The file was modifiedclang/include/clang/Basic/Builtins.def
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/Sema/builtin-setjmp.c
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
Commit b113fa451061244e68af13328df9df46619bd0c3 by aeubanks
[test][Coro][NewPM] Fix coro-elide.ll under NPM
The file was modifiedllvm/test/Transforms/Coroutines/coro-elide.ll
Commit 321986fe68298ded3259bd1ffefe8cbdd60dbf18 by aeubanks
[MetaRenamer][NewPM] Port metarenamer to NPM

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D88690
The file was addedllvm/include/llvm/Transforms/Utils/MetaRenamer.h
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/test/Transforms/MetaRenamer/main.ll
The file was modifiedllvm/test/Transforms/MetaRenamer/metarenamer.ll
The file was modifiedllvm/lib/Transforms/Utils/MetaRenamer.cpp
Commit 3847986fd2c838026b9d883bb61f2e419988c1a5 by jianzhouzh
Fix the test case from D88686

It seems that one buildnot RSS value is much higher after munmap than
local run.
The file was modifiedcompiler-rt/test/dfsan/munmap_release_shadow.c
Commit cbd420c5ed8568774ace3ad8385b2346288e152c by Yaxun.Liu
[CUDA][HIP] Fix bound arch for offload action for fat binary

Currently CUDA/HIP toolchain uses "unknown" as bound arch
for offload action for fat binary. This causes -mcpu or -march
with "unknown" added in HIPToolChain::TranslateArgs or
CUDAToolChain::TranslateArgs.

This causes issue for https://reviews.llvm.org/D88377 since
HIP toolchain needs to check -mcpu in HIPToolChain::TranslateArgs.

The bound arch of offload action for fat binary is not really
used, therefore set it to CudaArch::UNUSED.

Differential Revision: https://reviews.llvm.org/D88524
The file was modifiedclang/test/Driver/hip-phases.hip
The file was modifiedclang/lib/Basic/Cuda.cpp
The file was modifiedclang/include/clang/Basic/Cuda.h
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
The file was addedclang/test/Driver/hip-toolchain-device-only.hip
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/lib/Basic/Targets/NVPTX.cpp
Commit c56bb45e839940fffabcbf928a3778cfffc31ddd by julian.lettner
[fuzzer] Remove unused variable

`TempAutoDictionary` is never used.  Maybe a leftover of a previous
experiment?

Differential Revision: https://reviews.llvm.org/D88763
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerMutate.h
Commit 2cd75f738ec6b150719a9468372d77b7064ff340 by Yaxun.Liu
Diagnose invalid target ID for AMDGPU toolchain for assembler

AMDGPU toolchain currently only diagnose invalid target ID for OpenCL
source compilation. Invalid target ID is not diagnosed for assembler.

This patch fixes that.

Differential Revision: https://reviews.llvm.org/D88377
The file was addedclang/test/Driver/amdgpu-invalid-target-id.s
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.h
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
Commit 9a48411f35a122ac8755a8453887b919c77daf3f by phosek
Revert "[Driver] Move detectLibcxxIncludePath to ToolChain"

This reverts commit a594fd28e373cb7cd348cf01f6a90e055bf6cf6d which
is failign on some bots.
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
The file was modifiedclang/include/clang/Driver/ToolChain.h
Commit c8e73920ee61951096909a1d3cbfe7f2fa5bf814 by llvmgnsyncbot
[gn build] Port ace644030e6
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Commit 64f2855f15d8496be2275ea82f8996868b618b15 by phosek
[CMake] Don't use CMakePushCheckState

When we call cmake_pop_check_state, we undo any changes to REQUIRED
variables performed by HandleLLVMOptions which is undesirable. Rather
use replacement which is what we've used prior to 8d26760a.

Differential Revision: https://reviews.llvm.org/D88756
The file was modifiedllvm/runtimes/CMakeLists.txt
Commit 9ae95a0f8f1bc9bd9e8eb30a5a9444fbdca5cc29 by brad
[Sparc] Remove cast that truncates immediate operands to 32 bits.

Patch by: Mark Kettenis

Test provided by Jessica Clarke.

Differential Revision: https://reviews.llvm.org/D87210
The file was modifiedllvm/lib/Target/Sparc/SparcAsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/SPARC/inlineasm-v9.ll
Commit 88c9162c9d47ef43a505bc5301dc626f3cd4f437 by jianzhouzh
Fix the test case in D88686

Adjusted when to check RSS.
The file was modifiedcompiler-rt/test/dfsan/munmap_release_shadow.c
Commit 1c897e9d72979730f7555e77dd54fe892a461637 by mcgrathr
[lsan] Share platform allocator settings between ASan and LSan

This moves the platform-specific parameter logic from asan into
lsan_common.h to lsan can share it.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D87795
The file was modifiedcompiler-rt/lib/lsan/lsan_allocator.h
The file was modifiedcompiler-rt/lib/asan/asan_allocator.h
The file was modifiedcompiler-rt/lib/lsan/lsan_common.h
Commit 5b0cfe93b6cdaf2e0383ed8edaa867430d7e6e4e by mcgrathr
Revert "[lsan] Share platform allocator settings between ASan and LSan"

This reverts commit 1c897e9d72979730f7555e77dd54fe892a461637.

It broke builds for 32-bit targets.

Differential Revision: https://reviews.llvm.org/D88768
The file was modifiedcompiler-rt/lib/lsan/lsan_common.h
The file was modifiedcompiler-rt/lib/asan/asan_allocator.h
The file was modifiedcompiler-rt/lib/lsan/lsan_allocator.h
Commit 63fc8499f305be192f0f9a62c43e0fcfdbdb7607 by craig.topper
[X86] Add missing intrinsic test for aesdecwide128kl and aesdecwide256kl. Capture all output values in keylocker tests. NFC

The aesdec/enc instructions produce a flag output and one or eight
xmm regsiter outputs. The test were not capturing the xmm outputs.

Also add nounwind to tests to remove .cfi directives
The file was modifiedllvm/test/CodeGen/X86/keylocker-intrinsics.ll
Commit 8ae4842669f1fee33d22cc3f0c895c7839d05aef by craig.topper
[X86] Move MWAITX_DAG ISD opcode so it is not in the strict FP range.

Add a comment to hopefully prevent anyone else from making the
same mistake.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
Commit e25bf2592060e7751f8b14522c97081ce2047175 by phosek
[Driver] Move detectLibcxxIncludePath to ToolChain

This helper method is useful even outside of Gnu toolchains, so move
it to ToolChain so it can be reused in other toolchains such as Fuchsia.

Differential Revision: https://reviews.llvm.org/D88452
The file was modifiedclang/include/clang/Driver/ToolChain.h
The file was addedclang/test/Driver/Inputs/basic_fuchsia_tree/include/c++/v1/.keep
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedclang/lib/Driver/ToolChain.cpp
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp