SuccessChanges

Summary

  1. [JSON] Add ObjectMapper::mapOptional to validate optional data. (details)
  2. [clangd] Validate optional fields more strictly. (details)
  3. [mlir][Linalg] Add named Linalg ops on tensor to buffer support. (details)
  4. [mlir][Linalg] NFC - Automate the printing of canonicalizers and folders for nameds Linalg ops. (details)
  5. [nfc] [lldb] Simplify calling SymbolFileDWARF::GetDWARFCompileUnit (details)
  6. [clangd] Stop capturing trace args if the tracer doesn't need them. (details)
  7. [lldb/Utility] Introduce UnimplementedError (details)
  8. [VE] Support copysign math function (details)
  9. [mlir][gpu] Adding gpu runtime wrapper functions for async execution. (details)
  10. [clangd][NFC] Fix formatting in ClangdLSPServer (details)
  11. [clang-tidy] Fix IncludeInserter usage example in a comment. (details)
  12. [DAG][ARM][MIPS][RISCV] Improve funnel shift promotion to use 'double shift' patterns (details)
  13. [clangd] Introduce MemoryTrees (details)
  14. [clangd] Add a metric for tracking memory usage (details)
  15. [clangd] Introduce memory dumping to FileIndex, FileSymbols and BackgroundIndex (details)
  16. [clangd] Introduce memory usage dumping to TUScheduler, for Preambles and ASTCache (details)
  17. [clangd] Add a helper for exposing tracer status (details)
  18. [clangd] Record memory usages after each notification (details)
  19. [gn build] Port f9317f7bf6b (details)
  20. [NFC] Remove redundant isFullSet checks (details)
  21. Dump decl when the test matcher fails. (details)
Commit 31a575bbc0fc925c29bcd6fc49b5a100ad22ae63 by sam.mccall
[JSON] Add ObjectMapper::mapOptional to validate optional data.

Currently the idiom for mapping optional fields is:
  ObjectMapper O(Val, P);
  if (!O.map("required1", Out.R1) || !O.map("required2", Out.R2))
    return false;
  O.map("optional1", Out.O1); // ignore result
  return true;

If `optional1` is present but malformed, then we won't detect/report
that error. We may even leave `Out` in an incomplete state while returning true.
Instead, we'd often prefer to ignore `optional1` if it is absent, but otherwise
behave just like map().

Differential Revision: https://reviews.llvm.org/D89128
The file was modifiedllvm/unittests/Support/JSONTest.cpp
The file was modifiedllvm/include/llvm/Support/JSON.h
Commit c2d4280328e4f69fd9e1258196e9dbc8362fce95 by sam.mccall
[clangd] Validate optional fields more strictly.

Differential Revision: https://reviews.llvm.org/D89131
The file was modifiedclang-tools-extra/clangd/Protocol.cpp
Commit 422aaf31daa520899303adaf82ba76743624ee0a by nicolas.vasilache
[mlir][Linalg] Add named Linalg ops on tensor to buffer support.

This revision introduces support for buffer allocation for any named linalg op.
To avoid template instantiating many ops, a new ConversionPattern is created to capture the LinalgOp interface.

Some APIs are updated to remain consistent with MLIR style:
`OwningRewritePatternList * -> OwningRewritePatternList &`
`BufferAssignmentTypeConverter * -> BufferAssignmentTypeConverter &`

Differential revision: https://reviews.llvm.org/D89226
The file was modifiedmlir/docs/Tutorials/QuickstartRewrites.md
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRV.cpp
The file was modifiedmlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
The file was modifiedmlir/include/mlir/Transforms/Bufferize.h
The file was modifiedmlir/test/lib/Transforms/TestBufferPlacement.cpp
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/TensorsToBuffers.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
The file was modifiedmlir/include/mlir/Dialect/Shape/Transforms/Passes.h
The file was modifiedmlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
The file was addedmlir/integration_test/Dialect/Linalg/CPU/test-tensor-matmul.mlir
The file was modifiedmlir/lib/Dialect/Shape/Transforms/ShapeTypeConversion.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was modifiedmlir/lib/Transforms/BufferPlacement.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
Commit 69d3247f35a7d73af217d9ca33c3731640f3938e by nicolas.vasilache
[mlir][Linalg] NFC - Automate the printing of canonicalizers and folders for nameds Linalg ops.

This revision reduces the number of places that specific information needs to be modified when adding new named Linalg ops.

Differential Revision: https://reviews.llvm.org/D89223
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
Commit 54434dc4dce9d59c4d6cebfd87e5f67e2966573b by jan.kratochvil
[nfc] [lldb] Simplify calling SymbolFileDWARF::GetDWARFCompileUnit

Only SymbolFileDWARF::ParseCompileUnit creates a CompileUnit and it uses
DWARFCompileUnit for that.

Differential Revision: https://reviews.llvm.org/D89165
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
Commit 8f1de22c7681a21fcdbe2d8c39de7698baab724a by sam.mccall
[clangd] Stop capturing trace args if the tracer doesn't need them.

The tracer is now expected to allocate+free the args itself.

Differential Revision: https://reviews.llvm.org/D89135
The file was modifiedclang-tools-extra/clangd/support/Trace.cpp
The file was modifiedclang-tools-extra/clangd/unittests/support/TraceTests.cpp
The file was modifiedclang-tools-extra/clangd/support/Trace.h
Commit e2f1fe361a9c7616a1d6459b036d15f47da4a073 by pavel
[lldb/Utility] Introduce UnimplementedError

This is essentially a replacement for the PacketUnimplementedError
previously present in the gdb-remote server code.

The reason I am introducing a generic error is because I wanted the
native process classes to be able to signal that they do not support
some functionality. They could not use PacketUnimplementedError as they
are independent of a specific transport protocol. Putting the error
class in the the native process code was also not ideal because the
gdb-remote code is also used for lldb-server's platform mode, which does
not (should not) know how to debug individual processes.

I'm putting it under Utility, as I think it can be generally useful for
notifying about unsupported/unimplemented functionality (and in
particular, for programatically testing whether something is
unsupported).

Differential Revision: https://reviews.llvm.org/D89121
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
The file was modifiedlldb/source/Utility/CMakeLists.txt
The file was addedlldb/include/lldb/Utility/UnimplementedError.h
The file was addedlldb/source/Utility/UnimplementedError.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
The file was modifiedlldb/unittests/Process/gdb-remote/GDBRemoteCommunicationServerTest.cpp
Commit 66be2e00ef29f8a747df2f7a57682e112266f525 by marukawa
[VE] Support copysign math function

VE doesn't have instruction for copysign, so expand it.  Add a
regression test also.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D89228
The file was addedllvm/test/CodeGen/VE/fp_copysign.ll
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
Commit 01dc85c173cb72b7dc42971942eb00c0be88924f by csigg
[mlir][gpu] Adding gpu runtime wrapper functions for async execution.

Reviewed By: herhut

Differential Revision: https://reviews.llvm.org/D89037
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
The file was modifiedmlir/tools/mlir-cuda-runner/cuda-runtime-wrappers.cpp
The file was modifiedmlir/tools/mlir-rocm-runner/rocm-runtime-wrappers.cpp
Commit 9407686687907fa2af24219e1d6e57787872bef8 by kadircet
[clangd][NFC] Fix formatting in ClangdLSPServer
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
Commit 1968a6155fd5ef178598b204cc6a176719b99f2e by alexfh
[clang-tidy] Fix IncludeInserter usage example in a comment.
The file was modifiedclang-tools-extra/clang-tidy/utils/IncludeInserter.h
Commit c252200e4de4411478fb525e93cc7ae05b189a22 by llvm-dev
[DAG][ARM][MIPS][RISCV] Improve funnel shift promotion to use 'double shift' patterns

Based on a discussion on D88783, if we're promoting a funnel shift to a width at least twice the size as the original type, then we can use the 'double shift' patterns (shifting the concatenated sources).

Differential Revision: https://reviews.llvm.org/D89139
The file was modifiedllvm/test/CodeGen/ARM/funnel-shift.ll
The file was modifiedllvm/test/CodeGen/Mips/funnel-shift.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rv64Zbt.ll
Commit f9317f7bf6bdac10d6f8a1c106ef8d489da7efbf by kadircet
[clangd] Introduce MemoryTrees

A structure that can be used to represent memory usage of a nested
set of systems.

Differential Revision: https://reviews.llvm.org/D88411
The file was addedclang-tools-extra/clangd/support/MemoryTree.h
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/support/CMakeLists.txt
The file was addedclang-tools-extra/clangd/support/MemoryTree.cpp
The file was addedclang-tools-extra/clangd/unittests/support/MemoryTreeTests.cpp
Commit c9d2876da95c5a15c85de8473a0cb5fb44eb3289 by kadircet
[clangd] Add a metric for tracking memory usage

Differential Revision: https://reviews.llvm.org/D88413
The file was modifiedclang-tools-extra/clangd/unittests/support/MemoryTreeTests.cpp
The file was modifiedclang-tools-extra/clangd/support/MemoryTree.h
The file was modifiedclang-tools-extra/clangd/support/MemoryTree.cpp
Commit a74d594948611164f88a79ca0544721183a0b19c by kadircet
[clangd] Introduce memory dumping to FileIndex, FileSymbols and BackgroundIndex

File-granular information is considered details.

Depends on D88411

Differential Revision: https://reviews.llvm.org/D88414
The file was modifiedclang-tools-extra/clangd/index/Background.cpp
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
The file was modifiedclang-tools-extra/clangd/index/Background.h
The file was modifiedclang-tools-extra/clangd/unittests/FileIndexTests.cpp
The file was modifiedclang-tools-extra/clangd/index/FileIndex.h
The file was modifiedclang-tools-extra/clangd/index/FileIndex.cpp
Commit 23a53301c545b45a6c809cc3f444c5f4e577f6c0 by kadircet
[clangd] Introduce memory usage dumping to TUScheduler, for Preambles and ASTCache

File-granular information is considered details.

Depends on D88411

Differential Revision: https://reviews.llvm.org/D88415
The file was modifiedclang-tools-extra/clangd/unittests/ClangdTests.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.h
Commit 20f69ccfe64aeab9c32d1698df399bd864dda8b1 by kadircet
[clangd] Add a helper for exposing tracer status
The file was modifiedclang-tools-extra/clangd/support/Trace.h
The file was modifiedclang-tools-extra/clangd/support/Trace.cpp
Commit 35871fde55ac98b543edd2e7c62d1456a26562d8 by kadircet
[clangd] Record memory usages after each notification

Depends on D88415

Differential Revision: https://reviews.llvm.org/D88417
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.h
The file was modifiedclang-tools-extra/clangd/unittests/ClangdTests.cpp
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
Commit defd01bc596ef82adca637dc3dfef1b7e4e79c38 by llvmgnsyncbot
[gn build] Port f9317f7bf6b
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/support/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
Commit 28237c33d99042de10417ba3de38d53634317ebd by mkazantsev
[NFC] Remove redundant isFullSet checks

Full set case is handled inside intersection, no need to
litter the code with duplicating them outside.
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit b144cd867b6fdfbf0e80064cb67d06c267fa295c by hokein.wu
Dump decl when the test matcher fails.
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp