[all-commits] [llvm/llvm-project] 5a6c69: [LLVM][DebugInfo] Add accessor for NameIndex header.

Amir Ayupov via All-commits all-commits at lists.llvm.org
Thu Mar 21 16:37:31 PDT 2024


  Branch: refs/heads/users/aaupov/spr/main.bolt-add-number-of-basic-blocks-to-bat
  Home:   https://github.com/llvm/llvm-project
  Commit: 5a6c69132fb427d9ba71a72274c66ddb76ae66d5
      https://github.com/llvm/llvm-project/commit/5a6c69132fb427d9ba71a72274c66ddb76ae66d5
  Author: Caroline Tice <cmtice at google.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h

  Log Message:
  -----------
  [LLVM][DebugInfo] Add accessor for NameIndex header.

This is needed for pending LLD work to create a single unified .debug_names
index (rather than just appending all the indices from each .o file).


  Commit: 258091e76df69072e7088a5e251a2db7f8e3d0a9
      https://github.com/llvm/llvm-project/commit/258091e76df69072e7088a5e251a2db7f8e3d0a9
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp

  Log Message:
  -----------
  [mlir] Fix -Wunused-variable in XeGPUOps.cpp (NFC)

llvm-project/mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp:47:8:
error: unused variable 'ty' [-Werror,-Wunused-variable]
  auto ty = source.getType();
       ^
1 error generated.


  Commit: af90e1975c15edc9195f1a1a87269bed4c83887a
      https://github.com/llvm/llvm-project/commit/af90e1975c15edc9195f1a1a87269bed4c83887a
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M compiler-rt/test/dfsan/custom.cpp

  Log Message:
  -----------
  [dfsan] Use non-existent file in test for real


  Commit: aa7e4ba3cad0e00dd37d4baca680ed1633bbdb70
      https://github.com/llvm/llvm-project/commit/aa7e4ba3cad0e00dd37d4baca680ed1633bbdb70
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M bolt/lib/Profile/BoltAddressTranslation.cpp

  Log Message:
  -----------
  [BOLT] Fix an unused variable warning

This patch fixes:

  bolt/lib/Profile/BoltAddressTranslation.cpp:26:12: error: unused
  variable 'HotFuncAddress' [-Werror,-Wunused-variable]


  Commit: 893717446bbc8f31427b581af5fbaf4154b63402
      https://github.com/llvm/llvm-project/commit/893717446bbc8f31427b581af5fbaf4154b63402
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M libc/CMakeLists.txt

  Log Message:
  -----------
  [libc] Add an option to always build GPU loader utilities (#86040)

Summary:
Right now it's difficult to build these utilities standalone becayse
they're keyed off of the other GPU handling. if someone wants to *just*
build these utilities it's not possible without setting up the runtimes
build. Since we can't just build these by default add an option to
enable it.

We can't just use the handling like LIBC_HDRGEN does because this is
only for the GPU build, which isn't fully set up until way later. So
this is probably the easiest way to just allow people to build these
tools even without a GPU build setup.


  Commit: 3cd988914e53c4c94e48edd4b6bc7b97b2dd4b49
      https://github.com/llvm/llvm-project/commit/3cd988914e53c4c94e48edd4b6bc7b97b2dd4b49
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M bolt/test/X86/dwarf5-label-low-pc.s

  Log Message:
  -----------
  [BOLT][DWARF] Fix Test (#86042)

Test was not actually checking bolt binary, and had extra POSTCHECK-NEXT
lines.


  Commit: 71defe40b7df18508d63fb1b1233324e8a28688f
      https://github.com/llvm/llvm-project/commit/71defe40b7df18508d63fb1b1233324e8a28688f
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp

  Log Message:
  -----------
  [sanitizer_common] Suppress warning of cast from SignalHandlerType to sa_sigaction_t (#86046)

Some buildbots (e.g.,
https://lab.llvm.org/buildbot/#/builders/18/builds/16061/steps/10/logs/stdio)
have recently started complaining about
```
cast from 'SignalHandlerType' (aka 'void (*)(int, void *, void *)') to 'sa_sigaction_t' (aka 'void (*)(int, siginfo_t *, void *)') converts to incompatible function type [-Werror,-Wcast-function-type-strict]
  219 |   sigact.sa_sigaction = (sa_sigaction_t)handler;
  ```
This patch does an intermediate cast to `'(void (*) (void))'` to suppress the warning.

N.B. SignalHandlerType has `'void*'` instead of `'siginfo_t*'` because it is typedef'ed in sanitizer_common/sanitizer_common.h, which does not have access to the header (signal.h) that defines siginfo_t; we therefore cannot fix SignalHandlerType.


  Commit: 631248dcd26fdec772cedb569be94ff8f12d0901
      https://github.com/llvm/llvm-project/commit/631248dcd26fdec772cedb569be94ff8f12d0901
  Author: hstk30-hw <hanwei62 at huawei.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/X86.cpp
    A clang/test/CodeGenCXX/x86_64-vaarg.cpp

  Log Message:
  -----------
  [X86_64] fix empty structure vaarg in c++ (#77907)

SizeInBytes of empty structure is 0 in C, while 1 in C++. And empty
structure argument of the function is ignored in X86_64 backend.As a
result, the value of variable arguments in C++ is incorrect. fix #77036

Co-authored-by: Longsheng Mou <moulongsheng at huawei.com>


  Commit: 35a66f965c0ea3b806b2b1736bfe4e6eb61d3613
      https://github.com/llvm/llvm-project/commit/35a66f965c0ea3b806b2b1736bfe4e6eb61d3613
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A llvm/test/CodeGen/X86/domain-reassignment-ndd.mir

  Log Message:
  -----------
  Precommit test for #85737 (#86056)

Copied from llvm/test/CodeGen/X86/domain-reassignment.mir


  Commit: 44a81af510801edce842e9574ec4d52cc7bd0ae9
      https://github.com/llvm/llvm-project/commit/44a81af510801edce842e9574ec4d52cc7bd0ae9
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll

  Log Message:
  -----------
  [AArch64] Run LoopSimplifyPass in byte-compare-index.ll (#86053)

Make this test case work on both new and legacy pass manager. See also
#85215


  Commit: 0d08282310e4007dfb748132e5c196765b1ffcd2
      https://github.com/llvm/llvm-project/commit/0d08282310e4007dfb748132e5c196765b1ffcd2
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt

  Log Message:
  -----------
  [MLIR][XeGPU] Fix shared build. NFC


  Commit: 0e3fbfd1e106dd027aab9ea4a9a6f116d05a0987
      https://github.com/llvm/llvm-project/commit/0e3fbfd1e106dd027aab9ea4a9a6f116d05a0987
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp

  Log Message:
  -----------
  Revert "[sanitizer_common] Suppress warning of cast from SignalHandlerType to sa_sigaction_t"

This reverts commit 9d79589e7c8b728a592a4b6b3dee53ac471d7946
because it failed to suppress the warning.


  Commit: 5c95484061a58250de7e5abe150c6ebb25898523
      https://github.com/llvm/llvm-project/commit/5c95484061a58250de7e5abe150c6ebb25898523
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/AliasSet/intrinsics.ll

  Log Message:
  -----------
  [Analysis] Use implicit-check-not in test


  Commit: 07a5e31cb3836bf1f00d2f56f03db70145f536c1
      https://github.com/llvm/llvm-project/commit/07a5e31cb3836bf1f00d2f56f03db70145f536c1
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A llvm/test/CodeGen/X86/apx/domain-reassignment.mir
    R llvm/test/CodeGen/X86/domain-reassignment-ndd.mir

  Log Message:
  -----------
  Move pre-commit test for #85737 (#86062)


  Commit: deefe3fbc93b3bdc77fbaf718403a45dae983d12
      https://github.com/llvm/llvm-project/commit/deefe3fbc93b3bdc77fbaf718403a45dae983d12
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-overflow.mir
    M llvm/test/CodeGen/AArch64/arm64-xaluo.ll
    M llvm/test/CodeGen/AArch64/overflow.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll

  Log Message:
  -----------
  [GlobalIsel] Post-review combine ADDO (#85961)

https://github.com/llvm/llvm-project/pull/82927


  Commit: 29bf32efbb646b2ab3dec25f100419fc75635878
      https://github.com/llvm/llvm-project/commit/29bf32efbb646b2ab3dec25f100419fc75635878
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A llvm/include/llvm/Passes/TargetPassRegistry.inc
    A llvm/lib/Target/AArch64/AArch64PassRegistry.def
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll

  Log Message:
  -----------
  [NewPM][AArch64] Add AArch64PassRegistry.def (#85215)

PR #83567 ports `SelectionDAGISel` to the new pass manager, then each
backend should provide `<Target>DagToDagISel()` in new pass manager
style. Then each target should provide `<Target>PassRegistry.def` to
register backend passes in `registerPassBuilderCallbacks` to reduce
duplicate code.
This PR adds `AArch64PassRegistry.def` to AArch64 backend and
boilerplate code in `registerPassBuilderCallbacks`.


  Commit: a5d7fc1d1000ffb1d21796f5d587f277c2957d66
      https://github.com/llvm/llvm-project/commit/a5d7fc1d1000ffb1d21796f5d587f277c2957d66
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir

  Log Message:
  -----------
  [mlir][sparse] Fix typos in comments (#86074)


  Commit: 7bb87d533891c2bcfa1c9132605f0d3e8227d444
      https://github.com/llvm/llvm-project/commit/7bb87d533891c2bcfa1c9132605f0d3e8227d444
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-abs.mir
    M llvm/test/CodeGen/AArch64/abs.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Take abs scalar codegen closer to SDAG (#84886)

This patch improves codegen for scalar (<128bits) version
of llvm.abs intrinsic by using the existing non-XOR based lowering.
This takes the generated code closer to SDAG.

codegen with GISel for > 128 bit types is not very good
with these method so not doing so.


  Commit: 35d3b3430eff16403d004d9f0b0369f0814cf140
      https://github.com/llvm/llvm-project/commit/35d3b3430eff16403d004d9f0b0369f0814cf140
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
    M mlir/test/Dialect/Arith/one-shot-bufferize.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-allow-return-allocs.mlir
    A mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-analysis-bottom-up-from-terminators.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-partial.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-allow-return-allocs.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-analysis.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
    M mlir/test/Dialect/Linalg/one-shot-bufferize.mlir
    M mlir/test/Dialect/SCF/one-shot-bufferize-analysis.mlir
    M mlir/test/Dialect/SCF/one-shot-bufferize.mlir
    M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir

  Log Message:
  -----------
  [mlir][bufferization] Add "bottom-up from terminators" analysis heuristic (#83964)

One-Shot Bufferize currently does not support loops where a yielded
value bufferizes to a buffer that is different from the buffer of the
region iter_arg. In such a case, the bufferization fails with an error
such as:
```
Yield operand #0 is not equivalent to the corresponding iter bbArg
    scf.yield %0 : tensor<5xf32>
```

One common reason for non-equivalent buffers is that an op on the path
from the region iter_arg to the terminator bufferizes out-of-place. Ops
that are analyzed earlier are more likely to bufferize in-place.

This commit adds a new heuristic that gives preference to ops that are
reachable on the reverse SSA use-def chain from a region terminator and
are within the parent region of the terminator. This is expected to work
better than the existing heuristics for loops where an iter_arg is
written to multiple times within a loop, but only one write is fed into
the terminator.

Current users of One-Shot Bufferize are not affected by this change.
"Bottom-up" is still the default heuristic. Users can switch to the new
heuristic manually.

This commit also turns the "fuzzer" pass option into a heuristic,
cleaning up the code a bit.


  Commit: 733640d29ede70585e0e3e1dcc47b935981f791e
      https://github.com/llvm/llvm-project/commit/733640d29ede70585e0e3e1dcc47b935981f791e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/align.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll

  Log Message:
  -----------
  Attributor: Handle inferring align from use by atomics (#85762)


  Commit: df9ed9cf52f82aed023adc968ca2a0e7f7cccc69
      https://github.com/llvm/llvm-project/commit/df9ed9cf52f82aed023adc968ca2a0e7f7cccc69
  Author: srcarroll <50210727+srcarroll at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Dialect/Linalg/flatten-elementwise.mlir

  Log Message:
  -----------
  [mlir][transform] Fix failure in flattening already flattened linalg ops (#86037)

The previous implementation was doing an early successful return on
`rank <= 1` without adding the original op to transform results. This
resulted in errors about number of returns. This patch fixes this by
adding the original op to results. Additionally, we first check if op is
elementwise and return a slienceable failure early if not.


  Commit: 26c290b46ac6b4a81feb28ae1862fac961138a24
      https://github.com/llvm/llvm-project/commit/26c290b46ac6b4a81feb28ae1862fac961138a24
  Author: Nathan Lanza <nathanlanza at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/tools/CMakeLists.txt

  Log Message:
  -----------
  [cmake] Place clang behind mlir in the list of external projects (#86050)

In preparation for the initial ClangIR upstreaming process, move clang
behind MLIR in the list of external projects. Otherwise, cmake will
attempt to build clang before MLIR.


  Commit: d59730d7060f33dd1607be1fd7813be78759a953
      https://github.com/llvm/llvm-project/commit/d59730d7060f33dd1607be1fd7813be78759a953
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M clang/CMakeLists.txt
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [CMake] Change GCC_INSTALL_PREFIX from warning to fatal error (#85891)

unless USE_DEPRECATED_GCC_INSTALL_PREFIX (temporary escape hatch) is
set. Setting GCC_INSTALL_PREFIX leads to a warning for Clang 18.1
(#77537) and will be completely removed for Clang 20.

Link:
discourse.llvm.org/t/add-gcc-install-dir-deprecate-gcc-toolchain-and-remove-gcc-install-prefix/65091
Link:
discourse.llvm.org/t/correct-cmake-parameters-for-building-clang-and-lld-for-riscv/72833


  Commit: ce8e86971036cb34c3d32cf0b70169379c85ae2f
      https://github.com/llvm/llvm-project/commit/ce8e86971036cb34c3d32cf0b70169379c85ae2f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp

  Log Message:
  -----------
  [RISCV] Convert an assertion to an if condition in getRegAllocationHints (#85998)

With GPR pairs from Zdinx, we can't guarantee there are no subregisters
on integer instruction operands. I've been able to get these assertions
to fire after some other recent PRs.

I've added a FIXME to support this properly. I just wanted to prevent
the assertion failure for now.

No test case because my other patch #85982 that allowed me to fail the assert
hasn't been approved yet, and I don't know for that that patch is
required to hit this assert. It's just what exposed it for me. So I
think this patch is a good precaution regardless.


  Commit: cbcdf126ccc774c063b5d5140c1393ff5305dded
      https://github.com/llvm/llvm-project/commit/cbcdf126ccc774c063b5d5140c1393ff5305dded
  Author: Nathan Lanza <nathanlanza at gmail.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M llvm/tools/CMakeLists.txt

  Log Message:
  -----------
  Revert "[cmake] Place clang behind mlir in the list of external projects (#86050)"

This reverts commit 26c290b46ac6b4a81feb28ae1862fac961138a24.


  Commit: 8fb2160a76b5f051f4cc8f5c8c097830bc91c22c
      https://github.com/llvm/llvm-project/commit/8fb2160a76b5f051f4cc8f5c8c097830bc91c22c
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFoldMasks.cpp

  Log Message:
  -----------
  [RISCV] Use DenseMap to track V0 definition. NFC (#84465)

Reviving some of the progress on #71764. To recap, we explored removing
the V0 register copies to simplify the pass, but hit a limitation with
the register allocator due to our use of the vmv0 singleton reg class
and early-clobber constraints.

So since we will have to continue to track the definition of V0
ourselves, this patch simplifies it by storing it in a map. It will
allow us to move about copies to V0 in #71764 without having to do extra
bookkeeping.


  Commit: adda597388dc148ac235e755b3e8bbd0a12a3e15
      https://github.com/llvm/llvm-project/commit/adda597388dc148ac235e755b3e8bbd0a12a3e15
  Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/docs/DataLayout.md
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Dialect/LLVMIR/layout.mlir
    M mlir/test/Interfaces/DataLayoutInterfaces/module.mlir
    M mlir/test/Interfaces/DataLayoutInterfaces/query.mlir
    M mlir/test/Interfaces/DataLayoutInterfaces/types.mlir
    M mlir/test/Target/LLVMIR/data-layout.mlir
    M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp

  Log Message:
  -----------
  [MLIR] Add index bitwidth to the DataLayout (#85927)

When importing from LLVM IR the data layout of all pointer types
contains an index bitwidth that should be used for index computations.
This revision adds a getter to the DataLayout that provides access to
the already stored bitwidth. The function returns an optional since only
pointer-like types have an index bitwidth. Querying the bitwidth of a
non-pointer type returns std::nullopt.

The new function works for the built-in Index type and, using a type
interface, for the LLVMPointerType.


  Commit: a29e9e32c50273abffc53e3700bbc23985f0a7af
      https://github.com/llvm/llvm-project/commit/a29e9e32c50273abffc53e3700bbc23985f0a7af
  Author: Roberto Bampi <gigaroby at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/docs/ClangFormat.rst
    A clang/test/Format/fail-on-incomplete.cpp
    M clang/tools/clang-format/ClangFormat.cpp

  Log Message:
  -----------
  [clang-format] Add --fail-on-incomplete-format. (#84346)

At the moment clang-format will return exit code 0 on incomplete
results. In scripts it would sometimes be useful if clang-format would
instead fail in those cases, signalling that there was something wrong
with the code being formatted.

---------

Co-authored-by: Björn Schäpers <github at hazardy.de>
Co-authored-by: Owen Pan <owenpiano at gmail.com>


  Commit: 1404640533fdeda5fb381019a436e4ee84bb2174
      https://github.com/llvm/llvm-project/commit/1404640533fdeda5fb381019a436e4ee84bb2174
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel

  Log Message:
  -----------
  [mlir][Bazel] Add target for index dialect python bindings


  Commit: b6b703b2dfc1d1ba45ebc64ed6b53a3a46f531f5
      https://github.com/llvm/llvm-project/commit/b6b703b2dfc1d1ba45ebc64ed6b53a3a46f531f5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    M llvm/test/CodeGen/AMDGPU/copy-vgpr-clobber-spill-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs-inreg-hints.ll
    M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll

  Log Message:
  -----------
  AMDGPU: Infer no-agpr usage in AMDGPUAttributor (#85948)

SIMachineFunctionInfo has a scan  of the function body for inline asm
which may use AGPRs, or callees in SIMachineFunctionInfo. Move this
into the attributor, so it actually works interprocedurally.
    
Could probably avoid most of the test churn if this bothered to avoid
adding this on subtargets without AGPRs. We should also probably
try to delete the MIR scan in usesAGPRs but it seems to be trickier
to eliminate.


  Commit: b433076fcbacba8a3b91446390bbea5843322bcd
      https://github.com/llvm/llvm-project/commit/b433076fcbacba8a3b91446390bbea5843322bcd
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/test/CodeGen/aapcs-align.cpp
    M clang/test/CodeGen/aapcs64-align.cpp
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGenCXX/auto-var-init.cpp
    M clang/test/CodeGenOpenCL/amdgpu-printf.cl
    M clang/test/OpenMP/bug54082.c

  Log Message:
  -----------
  [clang][CodeGen] Allow `memcpy` replace with trivial auto var init

When emitting the storage (or memory copy operations) for constant
initializers, the decision whether to split a constant structure or
array store into a sequence of field stores or to use `memcpy` is
based upon the optimization level and the size of the initializer.
In afe8b93ffdfef5d8879e1894b9d7dda40dee2b8d, we extended this by
allowing constants to be split when the array (or struct) type does
not match the type of data the address to the object (constant) is
expected to contain. This may happen when `emitStoresForConstant` is
called by `EmitAutoVarInit`, as the element type of the address gets
shrunk. When this occurs, let the initializer be split into a bunch
of stores only under `-ftrivial-auto-var-init=pattern`.

Fixes: https://github.com/llvm/llvm-project/issues/84178.


  Commit: 9fb85b09946122aa5793b647d7939ac17817c5f5
      https://github.com/llvm/llvm-project/commit/9fb85b09946122aa5793b647d7939ac17817c5f5
  Author: Christian Sigg <csigg at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [mlir][bazel] Update BUILD after 29bf32efbb646b2ab3dec25f100419fc75635878.


  Commit: 7b5a5be2a7216906c20f9bcac2209ea3502a7a73
      https://github.com/llvm/llvm-project/commit/7b5a5be2a7216906c20f9bcac2209ea3502a7a73
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] visitSUB/visitSUBO - move getAsNonOpaqueConstant into the if() where its used. NFC.

Noticed while beginning some cleanup for moving to pattern matchers


  Commit: ee5e027cc64957c0e18b8c38ce10d4b84314511c
      https://github.com/llvm/llvm-project/commit/ee5e027cc64957c0e18b8c38ce10d4b84314511c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll

  Log Message:
  -----------
  [X86] getShuffleCost - recognise concat_vector(X,Y) shuffle as InsertSubvector instead of PermuteTwoSrc

We don't have a concat_vector shuffle kind and improveShuffleKindFromMask won't alter the base type to match it as InsertSubvector.

But since this is how X86 will lower concat_vector anyhow, just recognise it explicitly.

Another step for #67803


  Commit: a6a9215b93bcbf901cd11d2dd02cce1a245d3ffe
      https://github.com/llvm/llvm-project/commit/a6a9215b93bcbf901cd11d2dd02cce1a245d3ffe
  Author: Johannes Reifferscheid <jreiffers at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir

  Log Message:
  -----------
  Lower shuffle to single-result form if possible. (#84321)

We currently always lower shuffle to the struct-returning variant. I saw
some cases where this survived all the way through ptx, resulting in
increased register usage. The easiest fix is to simply lower to the
single-result version when the predicate is unused.


  Commit: 11aa95f83b7bf980ea13f1bb75e09af89a733acb
      https://github.com/llvm/llvm-project/commit/11aa95f83b7bf980ea13f1bb75e09af89a733acb
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] visitSUB - pull out repeated getScalarSizeInBits() calls. NFC.


  Commit: 23de3862dce582ce91c1aa914467d982cb1a73b4
      https://github.com/llvm/llvm-project/commit/23de3862dce582ce91c1aa914467d982cb1a73b4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] visitSUB - use sd_match to match SUB(MAX,MIN) -> ABD pattern. NFC.

Seriously simplifies the commutation matching logic.


  Commit: ccb3a8feaa5b132dc829e55e069dde62008df4a8
      https://github.com/llvm/llvm-project/commit/ccb3a8feaa5b132dc829e55e069dde62008df4a8
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    A llvm/test/CodeGen/AMDGPU/lds-mixed-absolute-addresses-unused.ll
    M llvm/test/CodeGen/AMDGPU/lds-reject-mixed-absolute-addresses.ll

  Log Message:
  -----------
  [AMDGPU][LowerModuleLDS] Refactor partially lowered module detection (#85793)

Refactor the logic that checks if a module contains mixed
absolute/non-lowered LDS GVs.

The check now happens latter when the "worklists" are formed. This is
because in some cases (OpenMP) we can have non-lowered GVs in a lowered
module, and this is normal because those GVs are just unused and removed
from the list at some point before the end of `getUsesOfLDSByFunction`.

Doing the check later ensures that if a mixed module is spotted, then
it's a _real_ mixed module that needs rejection, not a module containing
an intentionally ignored GV.


  Commit: 8ecc377c88ba32978ace6a67de895403eeba3a22
      https://github.com/llvm/llvm-project/commit/8ecc377c88ba32978ace6a67de895403eeba3a22
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/test/tools/llvm-lib/arm64ec-implib.test

  Log Message:
  -----------
  [llvm-lib] Use ARM64EC machine type for import libraries when -machine:arm64x is used. (#85972)

This is compatible with MSVC, `-machine:arm64x` is essentially an alias
to `-machine:arm64ec`. To make a type library that exposes both native
and EC symbols, an additional `-defArm64Native` argument is needed in
both cases.


  Commit: 0124e0821dd87bb021f31d1d9aecc2e0f3a52514
      https://github.com/llvm/llvm-project/commit/0124e0821dd87bb021f31d1d9aecc2e0f3a52514
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/COFF.h
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp

  Log Message:
  -----------
  [Object][COFF][NFC] Introduce Arm64ECThunkType enum. (#85936)

And use it in EC lowering code. It will be useful for LLD too.


  Commit: 95a834a16c3de0de615d0cfa20a6c8bd973b6a1d
      https://github.com/llvm/llvm-project/commit/95a834a16c3de0de615d0cfa20a6c8bd973b6a1d
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    A llvm/test/CodeGen/AMDGPU/lto-lower-module-lds.ll

  Log Message:
  -----------
  (Reland) [AMDGPU] Run LowerLDS at the end of the fullLTO pipeline (#85626)

Reland of #75333


  Commit: 2096f37d7a580a4b4ddce2a44abb80ff90f273ee
      https://github.com/llvm/llvm-project/commit/2096f37d7a580a4b4ddce2a44abb80ff90f273ee
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libcxx/include/__string/char_traits.h

  Log Message:
  -----------
  [libc++][NFC] Use __constexpr_memmove instead of copy_n in <__string/char_traits.h> (#85920)

`copy_n` has been used to allow constant evaluation of `char_traits`. We
now have `__constexpr_memmove`, which `copy_n` just forwards to. We can
call `__constexpr_memmove` directly, avoiding a bunch of instantiations.
This reduces the time it takes to include `<string>` from 321ms to
285ms.


  Commit: cb071942f881e743b8131688a873dab760c7b88d
      https://github.com/llvm/llvm-project/commit/cb071942f881e743b8131688a873dab760c7b88d
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/host/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP] Fix SystemZ build failure

Commit a7d5f73a03c81cab8df64dbd099e8acb40f5dfe1 introduced an
error in a target_compile_definitions on the SystemZ, causing
the build to break.  Fixed by adding the missing "PRIVATE".


  Commit: e8cf1754988cf281e76ae463b3e1f3c0cda3f230
      https://github.com/llvm/llvm-project/commit/e8cf1754988cf281e76ae463b3e1f3c0cda3f230
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [runtimes] Fix OpenMP dependencies (#85977)

When building the OpenMP runtime with libomptarget support, the runtimes
configure step needs to have a dependency on various tools, in
particular opt, so that cmake configure checks yield the correct
results.

This did not work correctly, as the dependencies were only added if the
OPENMP_ENABLE_LIBOMPTARGET was set - but that variable is only set by
the openmp/CMakeLists.txt file, which isn't even parsed during the
initial cmake run (in fact, it is only parsed when executing the
runtimes configure step itself, but then it is too late).

Fixed by just adding those dependencies always.

In addition, the list of dependencies collected in ${extra_deps},
including those required for OpenMP, was only actually used when
configuring runtimes for the default set of targets - when the user
specifies a non-default LLVM_RUNTIME_TARGETS, those extra dependencies
were ignored (with the exception of ${hdrgen_deps}).

Fixed by passing the full ${extra_deps} in this case as well.

Fixes: https://github.com/llvm/llvm-project/issues/85933


  Commit: 8779edb8b33e8ae7e021c8fa7fff80d77567b28c
      https://github.com/llvm/llvm-project/commit/8779edb8b33e8ae7e021c8fa7fff80d77567b28c
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/__system_error/errc.h
    M libcxx/include/cerrno
    M libcxx/src/random.cpp
    A libcxx/test/std/depr.cerro/cerrno.syn.verify.cpp
    A libcxx/test/std/depr.cerro/system.error.syn.verify.cpp
    M libcxx/test/std/diagnostics/syserr/errc.pass.cpp

  Log Message:
  -----------
  [libc++] Deprecates std::errc constants. (#80542)

Implements:
- LWG3869 Deprecate std::errc constants related to UNIX STREAMS


  Commit: 7e72cafd68335e45d95ea6b7705bb5b9e7e442c8
      https://github.com/llvm/llvm-project/commit/7e72cafd68335e45d95ea6b7705bb5b9e7e442c8
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/X86/dagcombine-shifts.ll

  Log Message:
  -----------
  [SelectionDAG] Add MaskedValueIsZero check to allow folding of zero extended variables we know are safe to extend (#85573)

Add ones for every high bit that will cleared.

This will allow us to evaluate variables that have their bits known to
see if they have no risk of overflow despite the shift amount being
greater than the difference between the two types.


  Commit: 83e5a1239242d64110e3dfa96ed3889170ab96b2
      https://github.com/llvm/llvm-project/commit/83e5a1239242d64110e3dfa96ed3889170ab96b2
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch5/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch6/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch7/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel

  Log Message:
  -----------
  [mlir][bazel] Don't expose interface headers from //mlir:IR. (#85867)

Move 3 interface headers in `//mlir:IR` from `hdrs` to `srcs`.

Header files should not be added to multiple targets, but this is hard
to avoid because CMake is less strict with headers. But we should at
least avoid exposing them as headers by multiple targets because it
confuses tooling.


  Commit: 3ac243bc0d7922d083af2cf025247b5698556062
      https://github.com/llvm/llvm-project/commit/3ac243bc0d7922d083af2cf025247b5698556062
  Author: SahilPatidar <patidarsahil2001 at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/schedule-addrspaces.ll
    M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll

  Log Message:
  -----------
  Update amdgpu_gfx functions to use s0-s3 for inreg SGPR arguments on targets using scratch instructions for stack #78226 (#81394)

Resolve #78226


  Commit: 34f0a8aaba11bf703ddd2de92eee8ecbb77be5c8
      https://github.com/llvm/llvm-project/commit/34f0a8aaba11bf703ddd2de92eee8ecbb77be5c8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/orig-btiwidth-les-projected.ll

  Log Message:
  -----------
  [SLP]Fix comparison in bitwidth check.

Projected bitwidth should be less than the original, not greater.


  Commit: df6a1d44094e187d7d5ea3ee5b54b9bccc8a4798
      https://github.com/llvm/llvm-project/commit/df6a1d44094e187d7d5ea3ee5b54b9bccc8a4798
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/TensorEncoding.td

  Log Message:
  -----------
  [mlir][tensor] NFC: fully qualify verifyEncoding arguments.


  Commit: 2699072b4bc8d8d5e84eb66af38face73ceeb4d3
      https://github.com/llvm/llvm-project/commit/2699072b4bc8d8d5e84eb66af38face73ceeb4d3
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseInit.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/Lexer/has_extension_cxx.cpp
    M clang/test/OpenMP/declare_reduction_messages.cpp
    M clang/test/OpenMP/openmp_check.cpp
    A clang/test/Parser/cxx03-lambda-extension.cpp
    M clang/test/Parser/cxx0x-lambda-expressions.cpp
    M clang/test/Parser/cxx2b-lambdas.cpp
    M clang/test/Parser/objcxx-lambda-expressions-neg.mm
    M clang/test/ParserHLSL/group_shared.hlsl
    M clang/test/SemaCXX/cxx2a-template-lambdas.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp
    M clang/test/SemaCXX/lambda-implicit-this-capture.cpp
    M clang/test/SemaCXX/lambda-invalid-capture.cpp
    M clang/test/SemaCXX/new-delete.cpp

  Log Message:
  -----------
  [clang] Accept lambdas in C++03 as an extensions (#73376)

Implements
https://discourse.llvm.org/t/rfc-allow-c-11-lambdas-in-c-03-as-an-extension/75262


  Commit: 4946cc37f4865b89fbebcfa0120183a11ae8d4ab
      https://github.com/llvm/llvm-project/commit/4946cc37f4865b89fbebcfa0120183a11ae8d4ab
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/lib/ObjCopy/ConfigManager.cpp
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    A llvm/test/tools/llvm-objcopy/ELF/skip-symbol.test
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td

  Log Message:
  -----------
  [llvm-objcopy] Add --skip-symbol and --skip-symbols options (#80873)

Add --skip-symbol and --skip-symbols options that allow to skip symbols
when executing other options that can change the symbol's name, binding
or visibility, similar to an existing option --keep-symbol that keeps a
symbol from being removed by other options.


  Commit: 02cb89b36a7ae9be4ab657306b69dc9d2830d0d5
      https://github.com/llvm/llvm-project/commit/02cb89b36a7ae9be4ab657306b69dc9d2830d0d5
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Passes/TargetPassRegistry.inc

  Log Message:
  -----------
  [NewPM] Handle error in TargetPassRegistry.inc (#86112)

Mistakenly believing that checking Expected is sufficient.


  Commit: 734026347cca85cf0e242ef5f04896f55e0ac113
      https://github.com/llvm/llvm-project/commit/734026347cca85cf0e242ef5f04896f55e0ac113
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    A flang/test/Lower/OpenMP/wsloop-reduction-multi.f90

  Log Message:
  -----------
  Reapply "[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)" (#85807)

This patch contains slight modifications to the reverted PR #85258 to
avoid issues with constructs containing multiple reduction clauses,
uncovered by a test on the gfortran testsuite.

This reverts commit 9f80444c2e669237a5c92013f1a42b91b5609012.


  Commit: fa6e4338369c787710f1fe682cf6bd62348b9104
      https://github.com/llvm/llvm-project/commit/fa6e4338369c787710f1fe682cf6bd62348b9104
  Author: Spenser Bauman <sbauman at mathworks.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix assertion failure in tosa-layerwise-constant-fold (#85670)

The existing implementation of tosa-layerwise-constant-fold only works
for constant values backed by DenseElementsAttr. For constants which
hold DenseResourceAttrs, the folder will end up asserting at runtime, as
it assumes that the backing data can always be accessed through
ElementsAttr::getValues.

This change reworks the logic so that types types used to perform
folding are based on whether the ElementsAttr can be converted to a
range of that particular type.

---------

Co-authored-by: Spenser Bauman <sabauma at mathworks.com>
Co-authored-by: Tina Jung <tinamaria.jung at amd.com>


  Commit: 49b520856967c2354339d3c2a05fcf1d2d637f30
      https://github.com/llvm/llvm-project/commit/49b520856967c2354339d3c2a05fcf1d2d637f30
  Author: Paul T Robinson <paul.robinson at sony.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h

  Log Message:
  -----------
  [X86][Headers] Specify result of NaN comparisons (#85862)

Make sure all float/double comparison intrinsics specify what happens
with a NaN input. Update some existing descriptions of comparison
results to make them all consistent.

Also replace "yields" with "returns" throughout.


  Commit: aa4cbaba1dd3882932ab8772392325242f3c7bee
      https://github.com/llvm/llvm-project/commit/aa4cbaba1dd3882932ab8772392325242f3c7bee
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/store-abs-minbitwidth.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with @llvm.abs nodes, which can be analyzed for
better bitwidth.


  Commit: 538257bf00960f6134a51a17c8477b298ff87c30
      https://github.com/llvm/llvm-project/commit/538257bf00960f6134a51a17c8477b298ff87c30
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][bazel] Update BUILD after 61b24c61a90802e06e40a7ab0aa5e2138486bd73


  Commit: 0aa6d57e575dd920db81bef7ff509c4d3a9c6891
      https://github.com/llvm/llvm-project/commit/0aa6d57e575dd920db81bef7ff509c4d3a9c6891
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
    A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitCPass.h
    M mlir/include/mlir/Conversion/Passes.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/lib/Conversion/CMakeLists.txt
    A mlir/lib/Conversion/MemRefToEmitC/CMakeLists.txt
    A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
    A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
    A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR] Add initial convert-memref-to-emitc pass (#85389)

This converts `memref.alloca`, `memref.load` & `memref.store` to
`emitc.variable`, `emitc.subscript` and `emitc.assign`.


  Commit: 276283d8641f13b6ecde736ab1a8720f742d9d02
      https://github.com/llvm/llvm-project/commit/276283d8641f13b6ecde736ab1a8720f742d9d02
  Author: chrulski-intel <christopher.m.chrulski at intel.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lld/MinGW/Driver.cpp
    M lld/MinGW/Options.td
    M lld/test/MinGW/driver.test

  Log Message:
  -----------
  [LLD] [MinGW] Implement the -lto-sample-profile option (#85841)

This has been a supported option for ELF and is added to the COFF Linker
in #85701


  Commit: 5344a370fe85d9119729d9036540bbd91956da38
      https://github.com/llvm/llvm-project/commit/5344a370fe85d9119729d9036540bbd91956da38
  Author: Kirill Chibisov <contact at kchibisov.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
    M mlir/test/Dialect/EmitC/transforms.mlir

  Log Message:
  -----------
  [mlir][emitc] Fix form-expressions inside expression (#86081)

Make form-expressions not create `emitc.expression`s for operations
inside the `emitc.expression`s, since they are invalid.


  Commit: 15eba9c12a1486ee600e35ecb83b1f2c8459416e
      https://github.com/llvm/llvm-project/commit/15eba9c12a1486ee600e35ecb83b1f2c8459416e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp

  Log Message:
  -----------
  [VectorCombine] Add DataLayout to VectorCombine class instead of repeated calls to getDataLayout(). NFC.


  Commit: 686f4599cfa444aa62db4e22bf752f3d9614c30d
      https://github.com/llvm/llvm-project/commit/686f4599cfa444aa62db4e22bf752f3d9614c30d
  Author: David Green <david.green at arm.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/ARM/arm-and-tst-peephole.ll
    M llvm/test/CodeGen/ARM/select.ll

  Log Message:
  -----------
  [ARM] Regenerate some check lines. NFC


  Commit: 2bfa7d0e1691dcff095c602a0387a6d13213dc91
      https://github.com/llvm/llvm-project/commit/2bfa7d0e1691dcff095c602a0387a6d13213dc91
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/fpcast.ll

  Log Message:
  -----------
  [InstCombine] Fold `fmul X, -0.0` into `copysign(0.0, -X)` (#85772)

`fneg + copysign` is better than fmul for analysis/codegen.
godbolt: https://godbolt.org/z/eEs6dGd1G
Alive2: https://alive2.llvm.org/ce/z/K3M5BA


  Commit: 857161c367a1cdca926dbe0d2601e3afc52f03f9
      https://github.com/llvm/llvm-project/commit/857161c367a1cdca926dbe0d2601e3afc52f03f9
  Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
    A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    A llvm/test/MC/AMDGPU/hsa-amdgpu-exprs.s
    A llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
    A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
    A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
    A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
    A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
    A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
    A llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
    A llvm/test/MC/AMDGPU/hsa-tg-split.s

  Log Message:
  -----------
  [AMDGPU] MCExpr-ify MC layer kernel descriptor (#80855)

Kernel descriptor attributes, with their respective emit and asm parse functionality, converted to MCExpr.


  Commit: 26c3d018b1f57b33779c53d4fed5ea895810c314
      https://github.com/llvm/llvm-project/commit/26c3d018b1f57b33779c53d4fed5ea895810c314
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/MCTargetDesc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 857161c367a1


  Commit: a11d9b463966d31ecedb373115abdcca54f704c3
      https://github.com/llvm/llvm-project/commit/a11d9b463966d31ecedb373115abdcca54f704c3
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/test/Driver/clang-offload-bundler-asserts-on.c
    M clang/test/Driver/clang-offload-bundler-standardize.c
    M clang/test/Driver/clang-offload-bundler.c
    M clang/test/Driver/fat-archive-unbundle-ext.c

  Log Message:
  -----------
  Disable driver tests on macosx that are currently disabled on darwin (#85990)

macosx and darwin in triples are equivalent.

rdar://124246653


  Commit: 2152094a45af98c9ccfef6d5913f38c66ab8b165
      https://github.com/llvm/llvm-project/commit/2152094a45af98c9ccfef6d5913f38c66ab8b165
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/modules-print-library-module-manifest-path.cpp

  Log Message:
  -----------
  [clang] Improves -print-library-module-manifest-path. (#85943)

This adds a libc++ to modules.json as is currently used by libc++. When
libc++.so is not found the function will search for libc++.a as
fallback.


  Commit: 2861856baf16e43a5e465e87022c6c2c2d238969
      https://github.com/llvm/llvm-project/commit/2861856baf16e43a5e465e87022c6c2c2d238969
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.h
    A mlir/include/mlir/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
    M mlir/lib/Dialect/Vector/IR/CMakeLists.txt
    A mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
    A mlir/lib/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
    A mlir/test/Dialect/Vector/test-scalable-bounds.mlir
    M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp

  Log Message:
  -----------
  [mlir][Vector] Add utility for computing scalable value bounds (#83876)

This adds a new API built with the `ValueBoundsConstraintSet` to compute
the bounds of possibly scalable quantities. It uses knowledge of the
range of vscale (which is defined by the target architecture), to solve
for the bound as either a constant or an expression in terms of vscale.

The result is an `AffineMap` that will always take at most one
parameter, vscale, and returns a single result, which is the bound of
`value`.

The API is defined as follows:

```c++
FailureOr<ConstantOrScalableBound>
vector::ScalableValueBoundsConstraintSet::computeScalableBound(
  Value value, std::optional<int64_t> dim,
  unsigned vscaleMin, unsigned vscaleMax,
  presburger::BoundType boundType, 
  bool closedUB = true,
  StopConditionFn stopCondition = nullptr);
```

Note: `ConstantOrScalableBound` is a thin wrapper over the `AffineMap`
with a utility for converting the bound to a single quantity (i.e. a
size and scalable flag).

We believe this API could prove useful downstream in IREE (which uses a
similar analysis to hoist allocas, which currently fails for scalable
vectors).


  Commit: d1f182c895728d89c5c3d198b133e212a5d9d4a3
      https://github.com/llvm/llvm-project/commit/d1f182c895728d89c5c3d198b133e212a5d9d4a3
  Author: Joe Nash <Sisyph at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    R llvm/test/MC/AMDGPU/gfx11_asm_vinterp.s
    A llvm/test/MC/AMDGPU/vinterp-fake16.s
    R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vinterp.txt
    A llvm/test/MC/Disassembler/AMDGPU/vinterp-fake16.txt

  Log Message:
  -----------
  [AMDGPU][MC][True16] Rename and combine VINTERP MC tests (#85949)

NFC.
gfx11_asm_vinterp.s already contained GFX12 run lines. Rename the
assembler and disassembler tests to be sorted based on real16 or fake16
instead of gfxip. Note, both GFX11 and GFX12 currently only have fake16
(fake16 in encoding, but not by name) upstream, so that is why the test
files have a -fake16 suffix.

One test input is changed, and that is the disassembler test for
unsupported bits in the instruction. It is now an input that is valid on
both GFX11 and GFX12. This was necessary because the size of the opcode
field changed.


  Commit: 44278f2326e0df463f6d5dd43820858ee4cffc6f
      https://github.com/llvm/llvm-project/commit/44278f2326e0df463f6d5dd43820858ee4cffc6f
  Author: Joe Nash <joseph.nash at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt

  Log Message:
  -----------
  [AMDGPU][MC] Fix GFX12 check line typo and move test

NFC.
Fix CHECK lines that seem to have a copy paste error.
Move the test that was formerly in gfx12_dasm_vinterp.txt (see #85949).


  Commit: b4b5e8277a86d441830dbba54917bf22b0ad8608
      https://github.com/llvm/llvm-project/commit/b4b5e8277a86d441830dbba54917bf22b0ad8608
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/FinalizeISel.cpp
    A llvm/test/CodeGen/SystemZ/frame-adjstack.ll

  Log Message:
  -----------
  Check for all frame instructions in finalize isel. (#85945)

Check for all frame instructions in finalize isel, not just for the
frame setup opcode. This was proven necessary, see #78001 
for discussion.


  Commit: 6898147b9f38c3bb46be5704bdad22abed7af339
      https://github.com/llvm/llvm-project/commit/6898147b9f38c3bb46be5704bdad22abed7af339
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A llvm/docs/InstCombineContributorGuide.md
    M llvm/docs/UserGuides.rst

  Log Message:
  -----------
  [InstCombine] Add contributor guide (#79007)

Document expectations for contributions to InstCombine, especially
regarding test coverage and alive2 proofs.


  Commit: 8d7a6e2fd8beadc54a2e54fa361d35c66fdb40a4
      https://github.com/llvm/llvm-project/commit/8d7a6e2fd8beadc54a2e54fa361d35c66fdb40a4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/gather-nodes-different-bb.ll

  Log Message:
  -----------
  [SLP]Fix a crash for gather node with instructions from different bbs,
if cost threshold is very low.


  Commit: e4fa2e3562f20106f0fe4a4d09df03a548db4eae
      https://github.com/llvm/llvm-project/commit/e4fa2e3562f20106f0fe4a4d09df03a548db4eae
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  [DAG] isGuaranteedNotToBeUndefOrPoisonForTargetNode - add fallback implementation (#86125)

Allow targets to rely on TargetLowering::isGuaranteedNotToBeUndefOrPoisonForTargetNode to test nodes for canCreateUndefOrPoisonForTargetNode + all arguments are isGuaranteedNotToBeUndefOrPoison.

Targets can still perform this themselves for specific special case nodes (e.g. target shuffles).

Matches the fallback in SelectionDAG::isGuaranteedNotToBeUndefOrPoison


  Commit: 7678e6e562811688b472ad19900fa64cd00b7c06
      https://github.com/llvm/llvm-project/commit/7678e6e562811688b472ad19900fa64cd00b7c06
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    A llvm/test/CodeGen/RISCV/zdinx-large-spill.mir

  Log Message:
  -----------
  [RISCV] Lower the alignment requirement for a GPR pair spill for Zdinx on RV32. (#85871)

I believe we can use XLen alignment as long as eliminateFrameIndex
limits the maximum folded offset to 2043. This way when we split
the load/store into two 2 instructions we'll be able to add 4
without overflowing simm12.


  Commit: c04807c84e2a2653ab325f1b8ec73916565e6c54
      https://github.com/llvm/llvm-project/commit/c04807c84e2a2653ab325f1b8ec73916565e6c54
  Author: aniplcc <aniplccode at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdio.rst
    M libc/spec/stdc.td
    M libc/src/stdio/CMakeLists.txt
    M libc/src/stdio/linux/CMakeLists.txt
    A libc/src/stdio/linux/rename.cpp
    A libc/src/stdio/rename.h
    M libc/test/src/stdio/CMakeLists.txt
    A libc/test/src/stdio/rename_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][c11] Add stdio.h's rename() function (#85068)

Adds stdio.h's rename() function as defined in n3096. Fixes  #84980.


  Commit: 50801f1095d33e712c3a51fdeef82569bd09007f
      https://github.com/llvm/llvm-project/commit/50801f1095d33e712c3a51fdeef82569bd09007f
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libcxx/modules/CMakeLists.txt

  Log Message:
  -----------
  Reapply [libcxx] [modules] Fix relative paths with absolute LIBCXX_INSTALL_MODULES_DIR (#86020)

This reapplies 272d1b44efdedb68c194970a610f0ca1b7b769c5 (from #85756),
which was reverted in
407937036fa7640f61f225474b1ea6623a40dbdd.

In the previous attempt, empty CMAKE_INSTALL_PREFIX was handled by
quoting them, in d209d1340b99d4fbd325dffb5e13b757ab8264ea. That made the
calls to cmake_path(ABSOLUTE_PATH) succeed, but the output paths of that
weren't actually absolute, which was required by file(RELATIVE_PATH).

Avoid this issue by constructing a non-empty base directory variable
to use for calculating the relative path.


  Commit: 7650a01927b8488b1d6d0930109e78c695193faf
      https://github.com/llvm/llvm-project/commit/7650a01927b8488b1d6d0930109e78c695193faf
  Author: timoh-ba <t.habighorst at beckhoff.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    A llvm/test/MC/COFF/dwarf5lineinfo.s

  Log Message:
  -----------
  [DWARF5][COFF] Emit section-relative .debug_line_str relocations (#83773)

Dwarf 5 allows separating filenames from .debug_line into a separate
.debug_line_str section. The strings are referenced relative to the
start of the .debug_line_str section. Previously, on COFF, the
relocation information instead caused offsets to be relocated to the
base address of the COFF-File. This lead  to wrong offsets in linked
COFF (PE) files which caused the debugger to be unable to find the
correct source files.

This patch fixes this problem by making the offsets relative to the
start of the .debug_line_str section instead. There should be no
changes for ELF-Files as everything seems to be working there.

A test is also added to ensure that the correct relocation entries are
emitted.


  Commit: 0c8dfc85c3740bd8905e21642f616e6fd54854e0
      https://github.com/llvm/llvm-project/commit/0c8dfc85c3740bd8905e21642f616e6fd54854e0
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/rename_test.cpp

  Log Message:
  -----------
  [libc][stdio][test] fixup rename test (#86136)

Link: #84980
Link: #85068


  Commit: 556fe5f290ea88dcbb7ced16b0f057dcebce1fd0
      https://github.com/llvm/llvm-project/commit/556fe5f290ea88dcbb7ced16b0f057dcebce1fd0
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/include/lldb/Symbol/LineEntry.h
    M lldb/include/lldb/Utility/SupportFile.h
    M lldb/source/API/SBLineEntry.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Core/Address.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/SourceManager.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Symbol/Function.cpp
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Symbol/LineTable.cpp
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/TraceDumper.cpp
    M lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp

  Log Message:
  -----------
  [lldb] Reland: Store SupportFile in FileEntry (NFC) (#85892)

This is another step towards supporting DWARF5 checksums and inline
source code in LLDB. This is a reland of #85468 but without the
functional change of storing the support file from the line table (yet).


  Commit: 6295e677220bb6ec1fa8abe2f4a94b513b91b786
      https://github.com/llvm/llvm-project/commit/6295e677220bb6ec1fa8abe2f4a94b513b91b786
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/Float2Int/pr79158.ll

  Log Message:
  -----------
  [Float2Int] Pre-commit test for SIToFP/UIToFP ConstantRange bug. NFC

The range for these operations is being constructed without the
maximum value for the range due to an incorrect usage of the
ConstantRange constructor.

This causes Float2Int to think the range for 'uitofp i1' only
contains 0 instead of 0 and 1.


  Commit: 38f8a3cf0d75cd25e13d3757027f7356e4466cb9
      https://github.com/llvm/llvm-project/commit/38f8a3cf0d75cd25e13d3757027f7356e4466cb9
  Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/test/Conversion/GPUToSPIRV/load-store.mlir
    M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir
    M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
    M mlir/test/Conversion/SCFToSPIRV/for.mlir
    M mlir/test/Conversion/TensorToSPIRV/tensor-ops-to-spirv.mlir
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Improve folding of MemRef to SPIRV Lowering (#85433)

Investigate the lowering of MemRef Load/Store ops and implement
additional folding of created ops

Aims to improve readability of generated lowered SPIR-V code.

Part of work llvm#70704


  Commit: 6317c780d81327bd06701a6aa374fc92aa3d73ad
      https://github.com/llvm/llvm-project/commit/6317c780d81327bd06701a6aa374fc92aa3d73ad
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/Progress.h

  Log Message:
  -----------
  [lldb][progress][NFC] Clarify Doxygen comments for `details` field (#86002)

The Doxygen comments for the `details` field of a progress report
currently does not specify that this field will act as the initial set
of details for a progress report that gets updated with
`Progress::Increment()`. This commit clarifies this.


  Commit: f5c90f3000bc75a344bf01bd4e0401e3fb7f9453
      https://github.com/llvm/llvm-project/commit/f5c90f3000bc75a344bf01bd4e0401e3fb7f9453
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/inline-asm-d-constraint-f.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
    M llvm/test/CodeGen/RISCV/spill-fill-fold.ll

  Log Message:
  -----------
  [RISCV] Use BuildPairF64 and SplitF64 for bitcast i64<->f64 on rv32 regardless of Zfa. (#85982)

Previously we used BuildPairF64 and SplitF64 only if Zfa was supported
since they will select register file moves that are only available with
Zfa.

We recently changed the handling of BuildPairF64/SplitF64 for Zdinx to
not go through memory so we should use that for bitcast.

That leaves the D without Zfa case that does need to go through memory.
Previously we let type legalization expand to loads and stores using a
new stack temporary created for each bitcast. After this patch we will
create the loads ands stores in the custom inserter and share the same
stack slot for all. This also allows DAGCombiner to optimize when
bitcast is mixed with BuildPairF64/SplitF64.


  Commit: 81bd799819f498a55e32599bce51fa98b2e73238
      https://github.com/llvm/llvm-project/commit/81bd799819f498a55e32599bce51fa98b2e73238
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lldb/source/Symbol/LineEntry.cpp

  Log Message:
  -----------
  [lldb] Add missing initialization in LineEntry ctor


  Commit: d8b0d8d6713d474cfd622e03090a7ad5206ee574
      https://github.com/llvm/llvm-project/commit/d8b0d8d6713d474cfd622e03090a7ad5206ee574
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td

  Log Message:
  -----------
  AMDGPU: Use defset to cleanup marking MFMA intrinsics as divergent (#85915)


  Commit: d9f0d9a1452ed78e943423c9fbbd63674625f7f5
      https://github.com/llvm/llvm-project/commit/d9f0d9a1452ed78e943423c9fbbd63674625f7f5
  Author: Tarun Prabhu <tarun at lanl.gov>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M flang/include/flang/Common/Version.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Frontend/LangOptions.h

  Log Message:
  -----------
  [flang][NFC] Fix header guards

Some header guards conflicted with clang. Fix a few others to follow the
convention in the rest of the headers in flang.


  Commit: 12836467b76c56872b4c22a6fd44bcda696ea720
      https://github.com/llvm/llvm-project/commit/12836467b76c56872b4c22a6fd44bcda696ea720
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/IR/ConstantRange.cpp
    M llvm/test/Transforms/Float2Int/pr79158.ll
    M llvm/unittests/IR/ConstantRangeTest.cpp

  Log Message:
  -----------
  [ConstantRange] Fix off by 1 bugs in UIToFP and SIToFP handling. (#86041)

We were passing the min and max values of the range to the ConstantRange
constructor, but the constructor expects the upper bound to 1 more than
the max value so we need to add 1.

We also need to use getNonEmpty so that passing 0, 0 to the constructor
creates a full range rather than an empty range. And passing smin,
smax+1 doesn't cause an assertion.

I believe this fixes at least some of the reason #79158 was reverted.


  Commit: 9a87d4d546a4382879b1beb96687acbad0ef4cc0
      https://github.com/llvm/llvm-project/commit/9a87d4d546a4382879b1beb96687acbad0ef4cc0
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/type_traits.h
    A libc/src/__support/CPP/type_traits/is_constant_evaluated.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Add `is_constant_evaluated` type_traits (#86139)

This will replace `__builtin_is_constant_evaluated` in math_extras.h.


  Commit: c1c2551a2876f536b5a06f48fa809aeedbc3d7ba
      https://github.com/llvm/llvm-project/commit/c1c2551a2876f536b5a06f48fa809aeedbc3d7ba
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/builtins.c
    M clang/test/CodeGen/ubsan-builtin-checks.c
    R clang/test/Sema/builtin-popcountg.c
    A clang/test/Sema/count-builtins.c

  Log Message:
  -----------
  [clang] Implement __builtin_{clzg,ctzg} (#83431)


Fixes #83075, fixes #83076.


  Commit: 6eff53b4f07c1d8f6ae271254499ec087f40cc83
      https://github.com/llvm/llvm-project/commit/6eff53b4f07c1d8f6ae271254499ec087f40cc83
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libc/src/stdio/linux/rename.cpp
    M libc/test/src/stdio/rename_test.cpp

  Log Message:
  -----------
  [libc][stdio] implement rename via SYS_renameat2 (#86140)

SYS_rename may be unavailable on architectures such as aarch64 and
riscv.
rename can be implemented in terms of SYS_rename, SYS_renameat, or
SYS_renameat2. I don't have a full picture of the history here, but it
seems
that SYS_renameat might also be unavailable on some platforms.

`man 2 rename` mentions that SYS_renameat2 was added in Linux 3.15. We
don't
need to support such ancient kernel versions prior.

Link: #84980
Link: #85068


  Commit: 69429276098df2f2cf67dcab1c96ce8f56280c11
      https://github.com/llvm/llvm-project/commit/69429276098df2f2cf67dcab1c96ce8f56280c11
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] combineConcatVectorOfScalars - stop always creating UNDEF nodes. NFC.

Noticed in debug logs - most calls to visitVECTOR_SHUFFLE resulted into wasteful UNDEF node creations, despite almost never being used.


  Commit: 4bf8dc1a0f9546afb2c13c121e34237ce16cfca6
      https://github.com/llvm/llvm-project/commit/4bf8dc1a0f9546afb2c13c121e34237ce16cfca6
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/UsingLibcxx.rst
    M libcxx/include/__config
    M libcxx/include/__memory/allocator.h
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx2a.pass.cpp
    M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.verify.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.pass.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.verify.cpp
    M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.depr_in_cxx17.verify.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx2a.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx2a.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx20.pass.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx2a.pass.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/enable_removed_allocator_members.deprecated.verify.cpp
    R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_allocator_void_no_members.verify.cpp
    R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_with_removed_members.compile.pass.cpp
    M libcxx/test/std/containers/sequences/deque/types.pass.cpp
    M libcxx/test/std/containers/sequences/list/types.pass.cpp
    M libcxx/test/std/containers/sequences/vector/types.pass.cpp

  Log Message:
  -----------
  [libc++] Remove macros for keeping std::allocator members and void specialization after C++20 (#85806)

Fixes #75975.

Remove `_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS` for the LLVM 19
release, it was previously marked as deprecated in LLVM 18.

I believe that
`_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_VOID_SPECIALIZATION` was only
used by Google in conjunction with
`_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS`.

Removing both macros together should not cause any issues in practice,
even though we did not announce the removal of
`_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_VOID_SPECIALIZATION` before.


  Commit: 797336b1278cb7a8b788e467f8fbbc11939143a8
      https://github.com/llvm/llvm-project/commit/797336b1278cb7a8b788e467f8fbbc11939143a8
  Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    R llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
    R llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    R llvm/test/MC/AMDGPU/hsa-amdgpu-exprs.s
    R llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
    R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
    R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
    R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
    R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
    R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
    R llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s
    R llvm/test/MC/AMDGPU/hsa-tg-split.s

  Log Message:
  -----------
  Revert "[AMDGPU] MCExpr-ify MC layer kernel descriptor" (#86151)

Reverts llvm/llvm-project#80855


  Commit: c8772940ee4d85b1a4578b3faea7c825300ce59f
      https://github.com/llvm/llvm-project/commit/c8772940ee4d85b1a4578b3faea7c825300ce59f
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/test/Analysis/inlining/false-positive-suppression.cpp

  Log Message:
  -----------
  [analyzer] Wrap SymbolicRegions by ElementRegions before getting a FieldRegion (#85211)

Inside the ExprEngine when we process the initializers, we create a
PostInitializer program-point, which will refer to the field being
initialized, see `FieldLoc` inside `ExprEngine::ProcessInitializer`.

When a constructor (of which we evaluate the initializer-list) is
analyzed in top-level context, then the `this` pointer will be
represented by a `SymbolicRegion`, (as it should be).

This means that we will form a `FieldRegion{SymbolicRegion{.}}` as the
initialized region.

```c++
class Bear {
public:
  void brum() const;
};
class Door {
public:
  // PostInitializer would refer to "FieldRegion{SymRegion{this}}"
  // whereas in the store and everywhere else it would be:
  // "FieldRegion{ELementRegion{SymRegion{Ty*, this}, 0, Ty}".
  Door() : ptr(nullptr) {
    ptr->brum(); // Bug
  }
private:
  Bear* ptr;
};
```

We (as CSA folks) decided to avoid the creation of FieldRegions directly
of symbolic regions in the past:

https://github.com/llvm/llvm-project/commit/f8643a9b31c4029942f67d4534c9139b45173504

---

In this patch, I propose to also canonicalize it as in the mentioned
patch, into this: `FieldRegion{ElementRegion{SymbolicRegion{Ty*, .}, 0,
Ty}`

This would mean that FieldRegions will/should never simply wrap a
SymbolicRegion directly, but rather an ElementRegion that is sitting in
between.

This patch should have practically no observable effects, as the store
(due to the mentioned patch) was made resilient to this issue, but we
use `PostInitializer::getLocationValue()` for an alternative reporting,
where we faced this issue.

Note that in really rare cases it suppresses now dereference bugs, as
demonstrated in the test. It is because in the past we failed to follow
the region of the PostInitializer inside the StoreSiteFinder visitor -
because it was using this code:
```c++
// If this is a post initializer expression, initializing the region, we
// should track the initializer expression.
if (std::optional<PostInitializer> PIP =
        Pred->getLocationAs<PostInitializer>()) {
  const MemRegion *FieldReg = (const MemRegion *)PIP->getLocationValue();
  if (FieldReg == R) {
    StoreSite = Pred;
    InitE = PIP->getInitializer()->getInit();
  }
}
```
Notice that the equality check didn't pass for the regions I'm
canonicalizing in this patch.

Given the nature of this change, we would rather upstream this patch.

CPP-4954


  Commit: 86d479fd7c837e97be116ffb9e4c92812b87360f
      https://github.com/llvm/llvm-project/commit/86d479fd7c837e97be116ffb9e4c92812b87360f
  Author: T-Gruber <100079402+T-Gruber at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    M clang/unittests/StaticAnalyzer/CMakeLists.txt
    A clang/unittests/StaticAnalyzer/MemRegionDescriptiveNameTest.cpp
    M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn

  Log Message:
  -----------
  Adapted MemRegion::getDescriptiveName to handle ElementRegions (#85104)

Fixes https://github.com/llvm/llvm-project/issues/84463

Changes:
- Adapted MemRegion::getDescriptiveName
- Added unittest to check name for a given clang::ento::ElementRegion
- Some format changes due to clang-format

---------

Co-authored-by: Andreas Steinhausen <andreas.steinhausen at concenrio.io>
Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: aa571a1e8f03faa311fb135ea4b24b9414db1b74
      https://github.com/llvm/llvm-project/commit/aa571a1e8f03faa311fb135ea4b24b9414db1b74
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/MCTargetDesc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 797336b1278c


  Commit: e84a985cbf4b26c10812e9bd339db9cfd037f581
      https://github.com/llvm/llvm-project/commit/e84a985cbf4b26c10812e9bd339db9cfd037f581
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M flang/lib/Lower/ConvertConstant.cpp
    A flang/test/Lower/HLFIR/procedure-pointer-component-structure-constructor.f90

  Log Message:
  -----------
  [Flang] Support for NULL() and procedure in structure constructor for procedure pointer component. (#85991)

This PR fixes a subset of procedure pointer component initialization in
structure constructor.
It covers
  1. NULL()
  2. procedure
  
 For example:
 ```
   MODULE M
    TYPE :: DT
      !PROCEDURE(Fun), POINTER, NOPASS :: pp1
      PROCEDURE(Fun), POINTER :: pp1
    END TYPE

    CONTAINS

    INTEGER FUNCTION Fun(Arg)
     class(dt) :: arg
    END FUNCTION

  END MODULE

  PROGRAM MAIN
  USE M
  IMPLICIT NONE
  TYPE (DT), PARAMETER :: v1 = DT(NULL())
  TYPE (DT) :: v2
  v2 = DT(fun)
  END
  ```
  
Passing a procedure pointer itself or reference to a function that
returns a procedure pointer is TODO.


  Commit: 3218570620a320573dfd3315da8277600a010bc1
      https://github.com/llvm/llvm-project/commit/3218570620a320573dfd3315da8277600a010bc1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/oddshuffles.ll

  Log Message:
  -----------
  [X86] Add shuffle test case for Issue #86068


  Commit: aa7f8200ac29823e6c662d1f41763c2509514161
      https://github.com/llvm/llvm-project/commit/aa7f8200ac29823e6c662d1f41763c2509514161
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h

  Log Message:
  -----------
  [IR] Add helpers for `NUWAddLike` and `NSWAddLike` to also match `or disjoint`; NFC

`or disjoint` implies `add nuw nsw`: https://alive2.llvm.org/ce/z/VABhDA


  Commit: ac13e5c0f698c1e3f759e622d2d3cf36ab3b77f3
      https://github.com/llvm/llvm-project/commit/ac13e5c0f698c1e3f759e622d2d3cf36ab3b77f3
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/div.ll
    M llvm/test/Transforms/InstCombine/sadd-with-overflow.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll

  Log Message:
  -----------
  [InstCombine] Add tests for integrating `N{U,S}WAddLike`; NFC


  Commit: b3ee127e7dead25fa284b26d2c5a067671d0e896
      https://github.com/llvm/llvm-project/commit/b3ee127e7dead25fa284b26d2c5a067671d0e896
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/div.ll
    M llvm/test/Transforms/InstCombine/sadd-with-overflow.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll

  Log Message:
  -----------
  [InstCombine] integrate `N{U,S}WAddLike` into existing folds

Just went a quick replacement of `N{U,S}WAdd` with the `Like` variant
that old matches `or disjoint`

Closes #86082


  Commit: 796efa8cd5800a42eb8362564be64f3d72512a05
      https://github.com/llvm/llvm-project/commit/796efa8cd5800a42eb8362564be64f3d72512a05
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Float2Int.cpp

  Log Message:
  -----------
  [Float2Int] Fix pessimization in the MinBW calculation. (#86051)

The MinBW was being calculated using the significant bits of the upper
and lower bounds. The upper bound is 1 past the last value in the range
so I don't think it should be included. Instead use ConstantRange::getMinSignedBits.

I'm still not sure if the +1 is needed after the getMinSignedBits call.


  Commit: f5ef9bd26d531d104f44f9e5b283bd2f80c024be
      https://github.com/llvm/llvm-project/commit/f5ef9bd26d531d104f44f9e5b283bd2f80c024be
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/ProfileData/RawMemProfReader.cpp

  Log Message:
  -----------
  [memprof] Call SmallVector::reserve (#86055)

With one raw memprof file I have, NumPCs averages about 41.  Given the
default number of inline elements being 8 for SmallVector<uint64_t>,
we should reserve the storage in advance.


  Commit: 999d4f840777bf8de26d45947192aa0728edc0fb
      https://github.com/llvm/llvm-project/commit/999d4f840777bf8de26d45947192aa0728edc0fb
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/test/Sema/warn-cast-function-type-strict.c
    M clang/test/SemaCXX/warn-cast-function-type-strict.cpp

  Log Message:
  -----------
  Split -Wcast-function-type into a separate group (#86131)

We want to add -Wcast-function-type to -Wextra (as done in
1de7e6c8cba27296f3fc16d107822ea0ee856759), but we do not want to add
-Wcast-function-type-strict in at the same time
(https://lab.llvm.org/buildbot/#/builders/57/builds/33601/steps/5/logs/stdio).

This moves the existing warning to a new group
(-Wcast-function-type-mismatch), puts the new group under the existing
-Wcast-function-type warning group, and adds
-Wcast-function-type-mismatch to -Wextra.


  Commit: 3fefeafa49299ef924414bfa1b678e0f656b3618
      https://github.com/llvm/llvm-project/commit/3fefeafa49299ef924414bfa1b678e0f656b3618
  Author: dmaclach <dmaclach at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaType.cpp
    A clang/test/SemaObjC/attr-objc-NSObject.m

  Log Message:
  -----------
  [OBJC] Allow __attribute__((NSObject)) types be used as lightweight generic specifiers (#84593)

As per
https://clang.llvm.org/docs/AutomaticReferenceCounting.html#retainable-object-pointers,
types with `__attribute__((NSObject))` are retainable, and thus should
be eligible to be used as lightweight generic specifiers.

Fix for #84592 84592


  Commit: 22e7e68a40b8b1aac8b44137685d21ac4b98bd17
      https://github.com/llvm/llvm-project/commit/22e7e68a40b8b1aac8b44137685d21ac4b98bd17
  Author: lorenzo chelini <lchelini at nvidia.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp

  Log Message:
  -----------
  [mlir][Affine] Fix unused variable warning (NFC)


  Commit: c96b61adc33b9d4ab26e2d0e4bce929b31c48768
      https://github.com/llvm/llvm-project/commit/c96b61adc33b9d4ab26e2d0e4bce929b31c48768
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libc/src/__support/CPP/iterator.h

  Log Message:
  -----------
  [libc] Add reverse_iterator comparisons (#86147)

https://en.cppreference.com/w/cpp/iterator/reverse_iterator/operator_cmp


  Commit: 3eb58d15b353534fd42a3a0d1eeb7cd33d128b34
      https://github.com/llvm/llvm-project/commit/3eb58d15b353534fd42a3a0d1eeb7cd33d128b34
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M libc/src/__support/CPP/iterator.h

  Log Message:
  -----------
  Revert "[libc] Add reverse_iterator comparisons" (#86186)

Reverts llvm/llvm-project#86147


  Commit: 536cb1fad3ea3edaba8264992c8de2f4b07abc84
      https://github.com/llvm/llvm-project/commit/536cb1fad3ea3edaba8264992c8de2f4b07abc84
  Author: Michele Scandale <michele.scandale at gmail.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/test/Transforms/InstCombine/shuffle_select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/shuffle_select.ll

  Log Message:
  -----------
  [InstCombine] Fix for folding select-like `shufflevector` into floating point binary operators. (#85452)

Folding a select-like `shufflevector` into a floating point binary
operators can only be done if the result is preserved for both case. In
particular, if the common operand of the `shufflevector` and the
floating point binary operator can be a NaN, then the transformation
won't preserve the result value.


  Commit: 85ccfb5ed5389a5fb2d58eab12a9266e7ea064ce
      https://github.com/llvm/llvm-project/commit/85ccfb5ed5389a5fb2d58eab12a9266e7ea064ce
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp

  Log Message:
  -----------
  [HWASan] [NFC] pull logic to get sanitizer ptr out of hwasan (#86024)

Also some drive by cleanup removing an unnnecessary argument and a
redundant condition.


  Commit: 6d939a6ec69adf284cdbef2034b49fd02ba503fc
      https://github.com/llvm/llvm-project/commit/6d939a6ec69adf284cdbef2034b49fd02ba503fc
  Author: Kevin Frei <kevinfrei at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    A lldb/test/API/debuginfod/Normal/Makefile
    A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
    A lldb/test/API/debuginfod/Normal/main.c
    A lldb/test/API/debuginfod/SplitDWARF/Makefile
    A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
    A lldb/test/API/debuginfod/SplitDWARF/main.c

  Log Message:
  -----------
  DebugInfoD tests + fixing issues exposed by tests (#85693)

Finally getting back to Debuginfod tests:
I've migrated the tests in my [earlier
PR](https://github.com/llvm/llvm-project/pull/79181) from shell to API
(at @JDevlieghere's suggestion) and addressed a couple issues that came
about during testing.

The tests first test the "normal" situation (no DebugInfoD involvement,
just normal debug files sitting around), then the "no debug info"
situation (to make sure the test is seeing failure properly), then it
tests to validate that when Debuginfod returns the symbols, things work
properly. This is duplicated for DWP/split-dwarf scenarios.

---------

Co-authored-by: Kevin Frei <freik at meta.com>


  Commit: 2ab106cbd428984df3dda2f6983d5f956917cb69
      https://github.com/llvm/llvm-project/commit/2ab106cbd428984df3dda2f6983d5f956917cb69
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [flang][OpenMP] Convert processTODO and remove unused objects (#81627)

Remove `ClauseIterator2` and `clauses2` from ClauseProcessor.

[Clause representation 5/6]


  Commit: 6b1cf0040059c407264d2609403c4fc090673167
      https://github.com/llvm/llvm-project/commit/6b1cf0040059c407264d2609403c4fc090673167
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M bolt/include/bolt/Core/MCPlus.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    A bolt/test/X86/linux-static-keys.s

  Log Message:
  -----------
  [BOLT] Add support for Linux kernel static keys jump table (#86090)

Runtime code modification used by static keys is the most ubiquitous
self-modifying feature of the Linux kernel. The idea is to to eliminate
the condition check and associated conditional jump on a hot path if
that condition (based on a boolean value of a static key) does not
change often. Whenever they condition changes, the kernel runtime
modifies all code paths associated with that key flipping the code
between nop and (unconditional) jump.


  Commit: 70a9c527b8c9857fb63a87b2d2025bf9defea7f2
      https://github.com/llvm/llvm-project/commit/70a9c527b8c9857fb63a87b2d2025bf9defea7f2
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Fix bazel build (#86190)

Follow up on #86140


  Commit: 628068113710d501e88b63a1506d66dd20ce7e94
      https://github.com/llvm/llvm-project/commit/628068113710d501e88b63a1506d66dd20ce7e94
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M bolt/docs/BAT.md
    M bolt/include/bolt/Profile/BoltAddressTranslation.h
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    A bolt/test/X86/Inputs/blarge_new.preagg.txt
    A bolt/test/X86/Inputs/blarge_new.yaml
    A bolt/test/X86/Inputs/blarge_new_bat.preagg.txt
    A bolt/test/X86/bolt-address-translation-yaml.test

  Log Message:
  -----------
  [BOLT] Output basic YAML profile in BAT mode

Relax assumptions that YAML output is not supported in BAT mode.
Set up basic infrastructure for emitting YAML for functions not covered
by BAT, such as from `.bolt.org.text` section (code identical to input binary
sans external refs), or non-rewritten functions in non-relocation mode (where
the function stays in the same section but BAT mapping is not emitted).

This diff only produces YAML profile for non-BAT functions (skipped,
non-simple). YAML profile for BAT functions is added in follow-up diffs:
- https://github.com/llvm/llvm-project/pull/76911 emits YAML profile with
  internal control flow information only (branch profile),
- https://github.com/llvm/llvm-project/pull/76896 adds cross-function profile
  (calls profile).

Test Plan: Added bolt/test/X86/bolt-address-translation-yaml.test

Reviewers: ayermolo, dcci, maksfb, rafaelauler

Reviewed By: rafaelauler

Pull Request: https://github.com/llvm/llvm-project/pull/76910


  Commit: cde54df39cab3a1d60a3e1862ab341609bee3cc3
      https://github.com/llvm/llvm-project/commit/cde54df39cab3a1d60a3e1862ab341609bee3cc3
  Author: Cooper Partin <coopp at microsoft.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/MC/DXContainerPSVInfo.h
    M llvm/include/llvm/MC/StringTableBuilder.h
    M llvm/include/llvm/Object/DXContainer.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    M llvm/lib/MC/DXContainerPSVInfo.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    A llvm/test/ObjectYAML/DXContainer/PSVv3-amplification.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-compute.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-domain.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-geometry.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-hull.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-mesh.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-pixel.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-vertex.yaml
    M llvm/tools/obj2yaml/dxcontainer2yaml.cpp

  Log Message:
  -----------
  Add support for PSV EntryFunctionName (#84409)

This change introduces a version 3 of the PSV data that includes support
for the name of the entry function as an offset into StringTable data to
a null-terminated utf-8 string.

Additional tests were added to ensure that the new value was properly
serialized/deserialized from object data.

Fixes #80175

---------

Co-authored-by: Cooper Partin <coopp at ntdev.microsoft.com>


  Commit: b19bf3e888f95c35bf641cd0eee18a8da702f6fe
      https://github.com/llvm/llvm-project/commit/b19bf3e888f95c35bf641cd0eee18a8da702f6fe
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/unsupported-option-gpu.c

  Log Message:
  -----------
  [clang][SPIRV] Don't warn on -mcmodel (#86039)

The code model doesn't affect the sub-compilation, so don't check it.

Followup to #70740.


  Commit: b609a4d7ea8b716f5f0ec83d10945362f42e730d
      https://github.com/llvm/llvm-project/commit/b609a4d7ea8b716f5f0ec83d10945362f42e730d
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/MachO/InputSection.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/ObjC.cpp
    M lld/MachO/SyntheticSections.cpp

  Log Message:
  -----------
  [lld-macho][NFC] Refactor insertions into inputSections (#85692)

Before this change, after `InputSection` objects are created, they need
to be added to the appropriate container for tracking.
The logic for selecting the appropriate container lives in `Driver.cpp`
/ `gatherInputSections`, where the `InputSection` is added to the
matching container depending on the input config and the type of
`InputSection`.

Also, multiple other locations also insert directly into `inputSections`
array - assuming that that is the appropriate container for the
`InputSection`'s they create. Currently this is the correct assumption,
however an upcoming feature will change this.

For an upcoming feature (relative method lists), we need to route
`InputSection`'s either to `inputSections` array or to a synthetic
section, depending on weather the relative method list optimization is
enabled or not.

We can achieve the above either by duplicating some of the logic or
refactoring the routing and `InputSection`'s and reusing that.

The refactoring & code sharing approach seems the correct way to go - as
such this diff performs the refactoring while not introducing any
functional changes. Later on we can just call `addInputSection` and not
have to worry about routing logic.

---------


  Commit: e4a672ef85f76c3402b81640e1e83e5d3069d1b9
      https://github.com/llvm/llvm-project/commit/e4a672ef85f76c3402b81640e1e83e5d3069d1b9
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M lld/MachO/ObjC.cpp

  Log Message:
  -----------
  [lld][macho] Fix gcc category merging warning (#86091)

Fixing gcc warning regarding creating non-null-terminated string:
```
../../lld/MachO/ObjC.cpp:1226:10: warning: 'char* strncpy(char*, const char*, size_t)' output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
 1226 |   strncpy(strData, str, len);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~
../../lld/MachO/ObjC.cpp: In member function 'void {anonymous}::ObjcCategoryMerger::emitAndLinkPointerList(lld::macho::Defined*, uint32_t, const {anonymous}::ObjcCategoryMerger::ClassExtensionInfo&, const {anonymous}::ObjcCategoryMerger::PointerListInfo&)':
../../lld/MachO/ObjC.cpp:1223:24: note: length computed here
 1223 |   uint32_t len = strlen(str);
      |                  ~~~~~~^~~~~
```
This is not actually a bug, as `newSectionData` returns a
zero-initialized memory region, so the null terminator will be there.


  Commit: 361e9ed5e5b2ed06e210a5552c8e5f1b5a0145fe
      https://github.com/llvm/llvm-project/commit/361e9ed5e5b2ed06e210a5552c8e5f1b5a0145fe
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-03-21 (Thu, 21 Mar 2024)

  Changed paths:
    M bolt/include/bolt/Core/MCPlus.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Profile/BoltAddressTranslation.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/test/X86/dwarf5-label-low-pc.s
    A bolt/test/X86/linux-static-keys.s
    M clang/CMakeLists.txt
    M clang/docs/ClangFormat.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseInit.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/test/Analysis/inlining/false-positive-suppression.cpp
    M clang/test/CodeGen/aapcs-align.cpp
    M clang/test/CodeGen/aapcs64-align.cpp
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/builtins.c
    M clang/test/CodeGen/ubsan-builtin-checks.c
    M clang/test/CodeGenCXX/auto-var-init.cpp
    A clang/test/CodeGenCXX/x86_64-vaarg.cpp
    M clang/test/CodeGenOpenCL/amdgpu-printf.cl
    M clang/test/Driver/clang-offload-bundler-asserts-on.c
    M clang/test/Driver/clang-offload-bundler-standardize.c
    M clang/test/Driver/clang-offload-bundler.c
    M clang/test/Driver/fat-archive-unbundle-ext.c
    M clang/test/Driver/modules-print-library-module-manifest-path.cpp
    M clang/test/Driver/unsupported-option-gpu.c
    A clang/test/Format/fail-on-incomplete.cpp
    M clang/test/Lexer/has_extension_cxx.cpp
    M clang/test/OpenMP/bug54082.c
    M clang/test/OpenMP/declare_reduction_messages.cpp
    M clang/test/OpenMP/openmp_check.cpp
    A clang/test/Parser/cxx03-lambda-extension.cpp
    M clang/test/Parser/cxx0x-lambda-expressions.cpp
    M clang/test/Parser/cxx2b-lambdas.cpp
    M clang/test/Parser/objcxx-lambda-expressions-neg.mm
    M clang/test/ParserHLSL/group_shared.hlsl
    R clang/test/Sema/builtin-popcountg.c
    A clang/test/Sema/count-builtins.c
    M clang/test/Sema/warn-cast-function-type-strict.c
    M clang/test/SemaCXX/cxx2a-template-lambdas.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp
    M clang/test/SemaCXX/lambda-implicit-this-capture.cpp
    M clang/test/SemaCXX/lambda-invalid-capture.cpp
    M clang/test/SemaCXX/new-delete.cpp
    M clang/test/SemaCXX/warn-cast-function-type-strict.cpp
    A clang/test/SemaObjC/attr-objc-NSObject.m
    M clang/tools/clang-format/ClangFormat.cpp
    M clang/unittests/StaticAnalyzer/CMakeLists.txt
    A clang/unittests/StaticAnalyzer/MemRegionDescriptiveNameTest.cpp
    M compiler-rt/test/dfsan/custom.cpp
    M flang/include/flang/Common/Version.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Frontend/LangOptions.h
    M flang/lib/Lower/ConvertConstant.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    A flang/test/Lower/HLFIR/procedure-pointer-component-structure-constructor.f90
    A flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
    M libc/CMakeLists.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdio.rst
    M libc/spec/stdc.td
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/type_traits.h
    A libc/src/__support/CPP/type_traits/is_constant_evaluated.h
    M libc/src/stdio/CMakeLists.txt
    M libc/src/stdio/linux/CMakeLists.txt
    A libc/src/stdio/linux/rename.cpp
    A libc/src/stdio/rename.h
    M libc/test/src/stdio/CMakeLists.txt
    A libc/test/src/stdio/rename_test.cpp
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/UsingLibcxx.rst
    M libcxx/include/__config
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__string/char_traits.h
    M libcxx/include/__system_error/errc.h
    M libcxx/include/cerrno
    M libcxx/modules/CMakeLists.txt
    M libcxx/src/random.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.cxx2a.pass.cpp
    M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/address.depr_in_cxx17.verify.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.pass.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.cxx2a.verify.cpp
    M libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/allocate.depr_in_cxx17.verify.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/construct.cxx2a.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx20.verify.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator.members/max_size.cxx2a.pass.cpp
    A libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx20.pass.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/allocator_types.cxx2a.pass.cpp
    R libcxx/test/libcxx/depr/depr.default.allocator/enable_removed_allocator_members.deprecated.verify.cpp
    R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_allocator_void_no_members.verify.cpp
    R libcxx/test/libcxx/utilities/memory/default.allocator/allocator_types.void.cxx20_with_removed_members.compile.pass.cpp
    M libcxx/test/std/containers/sequences/deque/types.pass.cpp
    M libcxx/test/std/containers/sequences/list/types.pass.cpp
    M libcxx/test/std/containers/sequences/vector/types.pass.cpp
    A libcxx/test/std/depr.cerro/cerrno.syn.verify.cpp
    A libcxx/test/std/depr.cerro/system.error.syn.verify.cpp
    M libcxx/test/std/diagnostics/syserr/errc.pass.cpp
    M lld/MachO/Driver.cpp
    M lld/MachO/InputSection.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/ObjC.cpp
    M lld/MachO/SyntheticSections.cpp
    M lld/MinGW/Driver.cpp
    M lld/MinGW/Options.td
    M lld/test/MinGW/driver.test
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/include/lldb/Core/Progress.h
    M lldb/include/lldb/Symbol/LineEntry.h
    M lldb/include/lldb/Utility/SupportFile.h
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/source/API/SBLineEntry.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Core/Address.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/SourceManager.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Symbol/Function.cpp
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Symbol/LineTable.cpp
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/TraceDumper.cpp
    A lldb/test/API/debuginfod/Normal/Makefile
    A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
    A lldb/test/API/debuginfod/Normal/main.c
    A lldb/test/API/debuginfod/SplitDWARF/Makefile
    A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
    A lldb/test/API/debuginfod/SplitDWARF/main.c
    M lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    A llvm/docs/InstCombineContributorGuide.md
    M llvm/docs/ReleaseNotes.rst
    M llvm/docs/UserGuides.rst
    M llvm/include/llvm/BinaryFormat/COFF.h
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/MC/DXContainerPSVInfo.h
    M llvm/include/llvm/MC/StringTableBuilder.h
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/include/llvm/Object/DXContainer.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    A llvm/include/llvm/Passes/TargetPassRegistry.inc
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/CodeGen/FinalizeISel.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/IR/ConstantRange.cpp
    M llvm/lib/MC/DXContainerPSVInfo.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/ObjCopy/ConfigManager.cpp
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    M llvm/lib/ProfileData/RawMemProfReader.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    A llvm/lib/Target/AArch64/AArch64PassRegistry.def
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFoldMasks.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Scalar/Float2Int.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Analysis/AliasSet/intrinsics.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-overflow.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-abs.mir
    M llvm/test/CodeGen/AArch64/abs.ll
    M llvm/test/CodeGen/AArch64/arm64-xaluo.ll
    M llvm/test/CodeGen/AArch64/overflow.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
    M llvm/test/CodeGen/AMDGPU/copy-vgpr-clobber-spill-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    A llvm/test/CodeGen/AMDGPU/lds-mixed-absolute-addresses-unused.ll
    M llvm/test/CodeGen/AMDGPU/lds-reject-mixed-absolute-addresses.ll
    A llvm/test/CodeGen/AMDGPU/lto-lower-module-lds.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs-inreg-hints.ll
    M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/schedule-addrspaces.ll
    M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
    M llvm/test/CodeGen/ARM/arm-and-tst-peephole.ll
    M llvm/test/CodeGen/ARM/select.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/inline-asm-d-constraint-f.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
    M llvm/test/CodeGen/RISCV/spill-fill-fold.ll
    A llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
    A llvm/test/CodeGen/SystemZ/frame-adjstack.ll
    A llvm/test/CodeGen/X86/apx/domain-reassignment.mir
    M llvm/test/CodeGen/X86/dagcombine-shifts.ll
    M llvm/test/CodeGen/X86/oddshuffles.ll
    R llvm/test/MC/AMDGPU/gfx11_asm_vinterp.s
    A llvm/test/MC/AMDGPU/vinterp-fake16.s
    A llvm/test/MC/COFF/dwarf5lineinfo.s
    R llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vinterp.txt
    A llvm/test/MC/Disassembler/AMDGPU/vinterp-fake16.txt
    A llvm/test/ObjectYAML/DXContainer/PSVv3-amplification.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-compute.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-domain.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-geometry.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-hull.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-mesh.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-pixel.yaml
    A llvm/test/ObjectYAML/DXContainer/PSVv3-vertex.yaml
    M llvm/test/Transforms/Attributor/align.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    A llvm/test/Transforms/Float2Int/pr79158.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/div.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/fpcast.ll
    M llvm/test/Transforms/InstCombine/sadd-with-overflow.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shuffle_select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/shuffle_select.ll
    M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll
    M llvm/test/Transforms/LoopIdiom/AArch64/byte-compare-index.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
    A llvm/test/Transforms/SLPVectorizer/X86/gather-nodes-different-bb.ll
    A llvm/test/Transforms/SLPVectorizer/X86/store-abs-minbitwidth.ll
    A llvm/test/Transforms/SLPVectorizer/orig-btiwidth-les-projected.ll
    M llvm/test/tools/llvm-lib/arm64ec-implib.test
    A llvm/test/tools/llvm-objcopy/ELF/skip-symbol.test
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td
    M llvm/tools/obj2yaml/dxcontainer2yaml.cpp
    M llvm/unittests/IR/ConstantRangeTest.cpp
    M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn
    M mlir/docs/DataLayout.md
    A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
    A mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitCPass.h
    M mlir/include/mlir/Conversion/Passes.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
    A mlir/include/mlir/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.h
    A mlir/include/mlir/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.h
    M mlir/include/mlir/IR/TensorEncoding.td
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
    M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
    M mlir/lib/Conversion/CMakeLists.txt
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    A mlir/lib/Conversion/MemRefToEmitC/CMakeLists.txt
    A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    A mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
    M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
    M mlir/lib/Dialect/Vector/IR/CMakeLists.txt
    A mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
    A mlir/lib/Dialect/Vector/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Conversion/GPUToSPIRV/load-store.mlir
    A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
    A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
    M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir
    M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
    M mlir/test/Conversion/SCFToSPIRV/for.mlir
    M mlir/test/Conversion/TensorToSPIRV/tensor-ops-to-spirv.mlir
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    M mlir/test/Dialect/Arith/one-shot-bufferize.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-allow-return-allocs.mlir
    A mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-analysis-bottom-up-from-terminators.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-partial.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-allow-return-allocs.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-analysis.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
    M mlir/test/Dialect/EmitC/transforms.mlir
    M mlir/test/Dialect/LLVMIR/layout.mlir
    M mlir/test/Dialect/Linalg/flatten-elementwise.mlir
    M mlir/test/Dialect/Linalg/one-shot-bufferize.mlir
    M mlir/test/Dialect/SCF/one-shot-bufferize-analysis.mlir
    M mlir/test/Dialect/SCF/one-shot-bufferize.mlir
    M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    A mlir/test/Dialect/Vector/test-scalable-bounds.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
    M mlir/test/Interfaces/DataLayoutInterfaces/module.mlir
    M mlir/test/Interfaces/DataLayoutInterfaces/query.mlir
    M mlir/test/Interfaces/DataLayoutInterfaces/types.mlir
    M mlir/test/Target/LLVMIR/data-layout.mlir
    M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
    M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp
    M openmp/libomptarget/plugins-nextgen/host/CMakeLists.txt
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch5/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch6/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch7/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.4

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/d54237dc3429...361e9ed5e5b2

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list