Changes

Summary

  1. [PowerPC] Add floating point overloads for vec_sldw (details)
  2. [clang][driver][darwin] use the deployment target version as the SDK version (details)
  3. [mlir][sparse] sparse tensor type encoding migration (new home, new builders) (details)
  4. [libc++] [LIBCXX-DEBUG-FIXME] <span>, like <string_view>, has no use for debug iterators. (details)
  5. Revert "Re-reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands"" (details)
  6. [libcxx] [test] Skip alloc counter checks for operations within the libc++ DLL (details)
  7. [clang-tidy][NFC] Remove redudnant expr and qualType matchers from bugprone-sizeof-expression. (details)
Commit bfd60b36f825c299971bb0c2bf973031e2e0fc09 by nemanja.i.ibm
[PowerPC] Add floating point overloads for vec_sldw

These are added for compatibility with XLC.
The file was modifiedclang/test/CodeGen/builtins-ppc-vsx.c (diff)
The file was modifiedclang/test/CodeGen/builtins-ppc-altivec.c (diff)
The file was modifiedclang/lib/Headers/altivec.h (diff)
Commit 8fc5f07fc0aee95ff9f79e91035d115690177dc1 by Alex Lorenz
[clang][driver][darwin] use the deployment target version as the SDK version
when passing -platform_version to the linker

The use of a valid SDK version is preferred over an empty SDK version
(0.0.0) as the system's runtime might expect the linked binary to contain
a valid SDK version in order for the binary to work correctly

rdar://66795188
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp (diff)
The file was modifiedclang/test/Driver/darwin-ld-platform-version-macos.c (diff)
Commit 0a2921993199fbf8af5078dce0dd933d6a50e25b by ajcbik
[mlir][sparse] sparse tensor type encoding migration (new home, new builders)

(1) migrates the encoding from TensorDialect into the new SparseTensorDialect
(2) replaces dictionary-based storage and builders with struct-like data

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D101669
The file was addedmlir/test/Dialect/SparseTensor/invalid_encoding.mlir
The file was modifiedmlir/include/mlir/Dialect/SparseTensor/IR/SparseTensor.h (diff)
The file was modifiedmlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp (diff)
The file was removedmlir/include/mlir/Dialect/Tensor/IR/TensorAttrDefs.td
The file was modifiedmlir/include/mlir/Dialect/SparseTensor/IR/CMakeLists.txt (diff)
The file was modifiedmlir/include/mlir/Dialect/Tensor/IR/TensorOps.td (diff)
The file was modifiedmlir/include/mlir/Dialect/Tensor/IR/CMakeLists.txt (diff)
The file was removedmlir/test/Dialect/Tensor/invalid_sparse_tensor.mlir
The file was removedmlir/test/Dialect/Tensor/valid_sparse.mlir
The file was modifiedmlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td (diff)
The file was modifiedmlir/lib/Dialect/Tensor/IR/CMakeLists.txt (diff)
The file was modifiedmlir/lib/Dialect/Tensor/IR/TensorDialect.cpp (diff)
The file was addedmlir/test/Dialect/SparseTensor/roundtrip_encoding.mlir
The file was modifiedmlir/lib/Dialect/SparseTensor/IR/CMakeLists.txt (diff)
The file was addedmlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
The file was modifiedmlir/include/mlir/Dialect/Tensor/IR/Tensor.h (diff)
Commit 6946f0ecca64f3af6b9e28cced9c982de2748f19 by arthur.j.odwyer
[libc++] [LIBCXX-DEBUG-FIXME] <span>, like <string_view>, has no use for debug iterators.

A span has no idea what container (if any) "owns" its iterators, nor
under what circumstances they might become invalidated.

However, continue to use `__wrap_iter<T*>` instead of raw `T*` outside
of debug mode, because we've been shipping `std::span` since Clang 7
and ldionne doesn't want to break ABI. (Namely, the mangling of functions
taking `span::iterator` as a parameter.) Permit using raw `T*` there,
but only under an ABI macro: `_LIBCPP_ABI_SPAN_POINTER_ITERATORS`.

Differential Revision: https://reviews.llvm.org/D101003
The file was modifiedlibcxx/test/std/containers/views/span.sub/last.pass.cpp (diff)
The file was modifiedlibcxx/test/std/containers/views/span.iterators/begin.pass.cpp (diff)
The file was modifiedlibcxx/test/std/containers/views/span.iterators/rend.pass.cpp (diff)
The file was modifiedlibcxx/include/__config (diff)
The file was modifiedlibcxx/test/std/containers/views/span.sub/first.pass.cpp (diff)
The file was modifiedlibcxx/test/std/containers/views/span.cons/deduct.pass.cpp (diff)
The file was modifiedlibcxx/test/std/containers/views/span.iterators/end.pass.cpp (diff)
The file was modifiedlibcxx/include/span (diff)
The file was modifiedlibcxx/test/std/containers/views/span.iterators/rbegin.pass.cpp (diff)
The file was modifiedlibcxx/test/std/containers/views/span.sub/subspan.pass.cpp (diff)
Commit 4397b7095d640f9b9426c4d0135e999c5a1de1c5 by nathan
Revert "Re-reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands""

This reverts commit 791930d74087b8ae8901172861a0fd21a211e436, as per
https://llvm.org/docs/DeveloperPolicy.html#patch-reversion-policy.

I observed breakage with the Linux kernel, as reported at
https://reviews.llvm.org/D91722#2724321

Fixes exist at
https://reviews.llvm.org/D101523
https://reviews.llvm.org/D101540

but they have not landed so to unbreak the tree for the weekend, revert
this commit.

Commit b11e4c990771 ("Revert "[DebugInfo] Drop DBG_VALUE_LISTs with an
excessive number of debug operands"") only reverted one follow-up fix,
not the original patch that broke the kernel.

e
The file was modifiedllvm/lib/IR/Instructions.cpp (diff)
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h (diff)
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp (diff)
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp (diff)
The file was modifiedllvm/include/llvm/IR/Operator.h (diff)
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll (diff)
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h (diff)
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp (diff)
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h (diff)
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp (diff)
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp (diff)
The file was removedllvm/test/DebugInfo/salvage-nonconst-binop.ll
The file was removedllvm/test/DebugInfo/salvage-gep.ll
The file was modifiedllvm/lib/IR/Operator.cpp (diff)
The file was modifiedllvm/include/llvm/IR/Instructions.h (diff)
The file was modifiedllvm/test/Transforms/InstCombine/debuginfo-sink.ll (diff)
The file was modifiedllvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll (diff)
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h (diff)
Commit 0e8f5e4a6864839d2292ec1ddfe48b6178c01f85 by martin
[libcxx] [test] Skip alloc counter checks for operations within the libc++ DLL

If libc++ is built as a DLL, calls to operator new within the DLL aren't
overridden if a user provides their own operator in calling code.
Therefore, the alloc counter doesn't pick up on allocations done within
std::string, so skip that check if running on windows. (Technically,
we could keep the checks if running on windows when not built as a DLL,
but trying to keep the conditionals simple.)

Differential Revision: https://reviews.llvm.org/D100219
The file was modifiedlibcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp (diff)
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.append.pass.cpp (diff)
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/move.pass.cpp (diff)
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/move.pass.cpp (diff)
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.concat.pass.cpp (diff)
The file was modifiedlibcxx/test/support/test_macros.h (diff)
The file was modifiedlibcxx/test/std/localization/locale.categories/category.ctype/facet.ctype.special/facet.ctype.char.dtor/dtor.pass.cpp (diff)
Commit 172a8016788c08fff6eed71f0a8eccf0ce1ef26d by n.james93
[clang-tidy][NFC] Remove redudnant expr and qualType matchers from bugprone-sizeof-expression.
The file was modifiedclang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp (diff)