[all-commits] [llvm/llvm-project] 63fbf3: [Hexagon][test] Fix more tests on linux-musl (#66785)
Matt Arsenault via All-commits
all-commits at lists.llvm.org
Sat Mar 7 01:40:38 PST 2026
Branch: refs/heads/users/arsenm/libclc/implement-linear-ids
Home: https://github.com/llvm/llvm-project
Commit: 63fbf34a7ec5bf16551f83f172905e66071c9353
https://github.com/llvm/llvm-project/commit/63fbf34a7ec5bf16551f83f172905e66071c9353
Author: Natanael Copa <ncopa at alpinelinux.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
Log Message:
-----------
[Hexagon][test] Fix more tests on linux-musl (#66785)
-march=hexagon uses the default target triple and changes the arch part
of hexagon. On linux-musl, this essentially becomes
hexagon-unknown-linux-musl which has different code generation. Use
-mtriple instead.
Link:
https://github.com/llvm/llvm-project/commit/944110353b970fc99de3f012292b4c29d4d91999
Link: https://github.com/llvm/llvm-project/issues/48936
Commit: 8c9a62b9e47a3c3d31f392e7ad628d8dd7d097aa
https://github.com/llvm/llvm-project/commit/8c9a62b9e47a3c3d31f392e7ad628d8dd7d097aa
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
Log Message:
-----------
[CIR][NFC] Add missing enum element added to CIRGenStmt (#185010)
The unresolved SYCL kernel call stmt class was added in a different
patch that didn't deal with CIR. This patch adds it to the list in teh
correct spot, which is an unreachable anyway.
Commit: 23cb4e5f46026da16de2a0457a4391a1a53f62d6
https://github.com/llvm/llvm-project/commit/23cb4e5f46026da16de2a0457a4391a1a53f62d6
Author: Nuri Amari <nuri.amari99 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
A clang/test/CodeGen/distributed-thin-lto/pass-plugin.ll
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M lld/ELF/LTO.cpp
M lld/MachO/LTO.cpp
M llvm/include/llvm/LTO/Config.h
M llvm/lib/LTO/LTOBackend.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
Support -fpass-plugin + -fthinlto-index together (#183525)
Without this change, passing -fthinlto-index causes -fpass-plugin
arguments to be ignored. We want to be able to use plugins with
distributed thin-lto, so add support for this.
Commit: 2b4a5d398fa8b25441a84ceaefcf3beb12c1d3e4
https://github.com/llvm/llvm-project/commit/2b4a5d398fa8b25441a84ceaefcf3beb12c1d3e4
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A .github/workflows/sycl-tests.yml
Log Message:
-----------
[CI][libsycl] Add libsycl precommit testing job (#184174)
We want to add some basic precommit CI for `libsycl`, similar to what we
have for `SPIR-V`.
Here it just builds `libsycl` and runs `check-sycl`, but only non-GPU
tests will be run because this job is run on GitHub-hosted runners which
don't have a GPU, so we will never run GPU tests in this CI job.
Postcommit already runs SYCL GPU tests.
We have runtime GPU detection as part of the `check-sycl` lit setup so
everything works fine.
Currently there is only one `check-sycl` test at all and it is a GPU
test, so `check-sycl` is basically a no op, so this is de-facto build
only.
---------
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Commit: bc077f52c9fe20f60f1319eee0d704e5265fde1b
https://github.com/llvm/llvm-project/commit/bc077f52c9fe20f60f1319eee0d704e5265fde1b
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/test/API/symstore/Makefile
M lldb/test/API/symstore/TestSymStoreLocal.py
Log Message:
-----------
[lldb] Fix lldb-x86_64-win bot after 454eb8bc0ac (#185004)
Attempt to fix forward a test failure after llvm-project#183302,
which seems to be caused by reusing build directories for test
inferiors in LLDB API tests.
Commit: c47fb2d2b70841d00c5990582355632d6607bf51
https://github.com/llvm/llvm-project/commit/c47fb2d2b70841d00c5990582355632d6607bf51
Author: Gowtham Tammana <128911018+gowtham-sarc at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BLAKE3/BUILD.gn
Log Message:
-----------
[gn build] Guard the BLAKE3 assembly sources with platform (#70110)
The source_set target defined for `llvm/lib/Support/BLAKE3` has assembly
files that are specific to x64 platform. Adding the relevant conditional
for this target.
Signed-off-by: Gowtham Tammana <g.tammana at samsung.com>
Commit: 5bdf8ca14b3f0ce4565fde467d0d8aaea0b6d0e6
https://github.com/llvm/llvm-project/commit/5bdf8ca14b3f0ce4565fde467d0d8aaea0b6d0e6
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/CodeGen/X86/andnot-sink-not.ll
Log Message:
-----------
[X86] Sink NOT to be fold into ANDN (#172329)
Undoes a negation being hoisted out of a loop, so that if can be fold
into an inverted bitwise operation in the loop.
Implements #108840 on X86
Commit: 00dd77ac5bd3c5a7bb7ffbd30fb7f1ad97549067
https://github.com/llvm/llvm-project/commit/00dd77ac5bd3c5a7bb7ffbd30fb7f1ad97549067
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Fix build after #184116 (#185019)
This PR adds a dependency to the `BUILD.bazel` files that is missing
after #184116.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: c8f0d37310d6f3c3f492ff22633b700ea5b20278
https://github.com/llvm/llvm-project/commit/c8f0d37310d6f3c3f492ff22633b700ea5b20278
Author: João Andrade <49215007+jpgianfaldoni at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/IfConversion.cpp
Log Message:
-----------
Fix IfConversion UpdatePredRedefs method documentation (#69918)
Fixes #68283
Commit: 03c34bb59eb9e34fd17cb10b1f8c70725c24983d
https://github.com/llvm/llvm-project/commit/03c34bb59eb9e34fd17cb10b1f8c70725c24983d
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
A llvm/test/Transforms/LoopVectorize/VPlan/interleave-conditional-scalar-assignment-vplan.ll
M llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
Log Message:
-----------
[LV] Support interleaving with FindLast reductions (#184099)
This extends the existing support to work with arbitrary interleave
factors. The main change here is reworking the ExtractLastActive
VPInstruction to take a variable amount of arguments and handling it in
unrollRecipeByUF and VPInstruction::generate.
The select condition for all mask/data values in a find-last recurrence
is the true if the mask for any part is true. Because of this the masks
for inactive parts will be updated to all-false when the parts with
active lanes are updated. This ensures the mask/data for last active
element always corresponds to the greatest part with an active lane.
This means finding the last element in the middle block simply requires
chaining the `extract.last.active` to forward the result from the last
active part through any inactive parts ahead of it.
Commit: 110082566b000af791d6fed338831e276355dc68
https://github.com/llvm/llvm-project/commit/110082566b000af791d6fed338831e276355dc68
Author: nora <48135649+Noratrieb at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
[ConstantFolding] Consider `tanh*` to always be a noop (#70794)
fixes https://github.com/rust-lang/rust/issues/108965
Most trigonometry functions are already considered, but tanh* was
missing. According to POSIX, these functions may fail on subnormals, so
we choose not to fail, allowing the calls to be eliminated.
https://pubs.opengroup.org/onlinepubs/9699919799/functions/tanh.html
The existing test llvm/test/Transforms/InstSimplify/ConstProp/calls.ll
already eliminated the call since it marked tanh as `nounwind`, which
causes it to be eliminated as well.
I am not sure whether I should add a new test without the `nounwind` or
whether it makes more sense to remove the `nounwind` from the existing
tests.
Co-authored-by: Nilstrieb <48135649+Nilstrieb at users.noreply.github.com>
Commit: b9356b047e5a4dc853f8e2b79dcec7b865e5bad6
https://github.com/llvm/llvm-project/commit/b9356b047e5a4dc853f8e2b79dcec7b865e5bad6
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops-invalid.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir][test] Reject TestWithBoundsOp with mismatched attribute width in verifier (#184093)
Add a verifier to `TestWithBoundsOp` that rejects bounds attributes
whose
bit width does not match the result type's storage width (e.g., `10 :
i64`
for an `i8` result). This makes the mismatch invalid IR rather than
silently
accepting it, preventing downstream crashes in consumers such as
`TestReflectBoundsOp::inferResultRanges` that assert on matching widths.
`inferResultRanges` is reverted to its original one-liner; the new
`verify()` method enforces the invariant at IR construction time.
A dedicated test file (`infer-int-range-test-ops-invalid.mlir`) uses
`-verify-diagnostics` to check the emitted error message.
Fixes #120882
Assisted-by: Claude Code
Commit: 9e15c6cc3358287e93a25d869a31ab14c1791dcb
https://github.com/llvm/llvm-project/commit/9e15c6cc3358287e93a25d869a31ab14c1791dcb
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaCUDA.cpp
A clang/test/SemaCUDA/dtor-constexpr-virtual-base.cu
Log Message:
-----------
[CUDA/HIP] Do not ignore complete destructors in abstract classes (#184894)
Summary:
The complete destructor destroys virtual base subobjects even for
abstract classes, so target inference must consider vbases when
analyzing destructors.
This was motivated by behavior observed from a bug where a constexpr
function that calls a non-constexpr function. I believe this error is
secondary, but can be fixed by this observation. The issue was the
switch to C++20 allowing allocator destructors to be constexpr began
opting the function into `__host__ __device__` contexts. This function
then called a non-constexpr function through a type-trait interface
which lead to that only having `__host__` which is illegal.
The fix offered here is to check the bases of this function and
correctly derive that it is `__host__` and not `__host__ __device__` as
was previously inferred. This should only affect cases where the *only*
member is an inherited virtual destructor. Previously we found no bases
and thus made no judgement.
Fixes: https://github.com/llvm/llvm-project/issues/184856
Commit: 8e40387ce4ad6dc1635c6cd7cdeea8157297569f
https://github.com/llvm/llvm-project/commit/8e40387ce4ad6dc1635c6cd7cdeea8157297569f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang-rt/CMakeLists.txt
M flang-rt/README.md
M flang-rt/cmake/modules/AddFlangRTOffload.cmake
M flang-rt/include/flang-rt/runtime/environment.h
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/external-unit.cpp
M flang-rt/lib/runtime/pseudo-unit.cpp
M flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/CMakeLists.txt
M flang/docs/GettingStarted.md
Log Message:
-----------
[flang-rt] Remove experiemental OpenMP offloading support (#183653)
Summary:
This, as far as I am aware, has mostly been superceded by the runtimes
build that's built on top of libc. This build links 30% faster, supports
more functionality, and uses 95% less disk space, so it seems to be the
direction we want to go.
CUDA support remains, this is not needed urgently.
Commit: 91b686dc1e0f27611ee34d0fe67b306db72e98f0
https://github.com/llvm/llvm-project/commit/91b686dc1e0f27611ee34d0fe67b306db72e98f0
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
Log Message:
-----------
[NFC][analyzer] Remove orphaned ExprEngine::getStmt() (#185020)
Its definition was removed fifteen(!) years ago by commit
b1d3d968725baf28a00b12aad760434036cbe704.
Commit: 20ded7d3b9412cf7e220ec04686bce9d4a645d19
https://github.com/llvm/llvm-project/commit/20ded7d3b9412cf7e220ec04686bce9d4a645d19
Author: tdegioanni-nvidia <tdegioanni at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/Operation.h
M mlir/lib/IR/Operation.cpp
M mlir/unittests/IR/OperationSupportTest.cpp
Log Message:
-----------
[mlir] Add option to cloning for different results (#184202)
With his permission while he is away, I am resurrecting @zero9178's very
first MLIR PR #65171 that adds an option to change result in the
operation cloning mechanism. This is very useful as cloning is currently
the only way to change the results of an operation.
> Since Operations cannot change the results after creation, a clone is
necessary to create new results. Doing such an operation generically has
not been possible so far. This PR therefore adds a new option to the
CloneOptions struct allowing adding changing the results of the created
operation.
>
> The caller is responsible to ensure that this is a valid operation and
setting the IRMapping accordingly afterwards if required.
---------
Co-authored-by: zero9178 <markus.boeck02 at gmail.com>
Commit: 057b7181ab5c59b0fef1d8c4ca2916b71abe8708
https://github.com/llvm/llvm-project/commit/057b7181ab5c59b0fef1d8c4ca2916b71abe8708
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
R lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
R lldb/test/API/symstore/Makefile
R lldb/test/API/symstore/TestSymStoreLocal.py
R lldb/test/API/symstore/main.c
Log Message:
-----------
Revert "[lldb] Initial plugin and test for SymbolLocatorSymStore" (#185032)
Reverts llvm/llvm-project#185004 and llvm/llvm-project#183302
Commit: 57614e8810532d994225c3fd2d2a6486e24478e7
https://github.com/llvm/llvm-project/commit/57614e8810532d994225c3fd2d2a6486e24478e7
Author: Łukasz Plewa <lukasz.plewa at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M offload/plugins-nextgen/cuda/src/rtl.cpp
Log Message:
-----------
[OFFLOAD] Replace C-style casts with C++ style casts in obtainInfoImpl (#185023)
Replace C-style bool casts (bool)TmpInt with C++ functional casts
bool(TmpInt)
Commit: ad6d87da32f9d124ead257af45310348e092767c
https://github.com/llvm/llvm-project/commit/ad6d87da32f9d124ead257af45310348e092767c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
Revert "[ConstantFolding] Consider `tanh*` to always be a noop (#70794)"
This reverts commit 110082566b000af791d6fed338831e276355dc68.
This broke check-llvm.
Commit: 7c2f2a5573d92b088a17c0554ab19c70ea9d9c58
https://github.com/llvm/llvm-project/commit/7c2f2a5573d92b088a17c0554ab19c70ea9d9c58
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
Log Message:
-----------
[clang-doc][NFC] Move static functions into JSONGenerator as methods (#184663)
Most of the JSONGenerator functionality was provided by a series of
static functions. This made it unwieldy to access useful properties of
ClangDocContext. As methods, they can now access a pointer to CDCtx.
An LLM was used to automate declaring the functions inside the class and
adding the scope resolution operators.
Fixes #181767
Commit: b7cc3c5682f9eca27b836dcb13cab97dbb5db626
https://github.com/llvm/llvm-project/commit/b7cc3c5682f9eca27b836dcb13cab97dbb5db626
Author: Michael Park <mcypark at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/diag-pragma-nonaffecting.cpp
Log Message:
-----------
[C++20][Modules] Do not apply `getAdjustedOffset` to file-internal byte offset. (#184956)
In https://reviews.llvm.org/D137214 and
https://reviews.llvm.org/D136624, offset adjustment logic was added to
account for the non-affecting module map files that are removed. While
the adjustment logic applies to global source location offsets, they do
not apply to file-internal offsets (relative within the file).
In `ASTWriter::WritePragmaDiagnosticMappings`, the adjustment is applied
to `StatePoint.Offset`s in `StateTransitions`. However, these offsets
are file-internal offsets, not global source location offsets. As such,
applying adjustment to these offsets result in incorrect diagnostic
behavior from the module.
Specifically, wrapping a piece of code in `pragma clang diagnostic
push/pop`, inside of a module is not applied correctly. A new test case
`diag-pragma-nonaffecting.cpp` was added to verify the broken behavior
as well as the corrected behavior with this commit.
Assisted-by: Claude Opus 4.6
Commit: 864d0452233e2f7d3772ad1170b4e0b3a7a6670c
https://github.com/llvm/llvm-project/commit/864d0452233e2f7d3772ad1170b4e0b3a7a6670c
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/CIR/CodeGen/clear-cache.c
M clang/test/CIR/CodeGen/complex-cast.cpp
M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
M clang/test/CIR/CodeGen/global-array-dtor.cpp
M clang/test/CIR/CodeGen/global-init.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/CodeGen/vtt.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-constant-p.c
Log Message:
-----------
[CIR] Fix checks following b3d99ac2cda4d6484ac0dff0b95403b4a8c10465. NFC
- b3d99ac2cda4d6484ac0dff0b95403b4a8c10465 makes constant folder data
layout aware. Match checks accordingly.
Commit: 220f91a05b3d5cb2c81d38afff83892f78d8a586
https://github.com/llvm/llvm-project/commit/220f91a05b3d5cb2c81d38afff83892f78d8a586
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/test/Transforms/inlining.mlir
M mlir/test/lib/Dialect/Test/TestDialectInterfaces.cpp
Log Message:
-----------
[MLIR] Fix crash in inliner when return arity mismatches call results (#185037)
The `handleTerminator` implementation in the test dialect's inliner
interface was asserting that the number of `test.return` operands equals
the number of values to replace. This assertion fires when inlining a
callee whose body uses `test.return` with values into a call site that
expects zero results (e.g., a void `llvm.func` calling a function whose
implementation uses `test.return` with operands).
Replace the assertion with a conditional early return so the inliner
gracefully skips replacement instead of crashing.
Fixes #108376
Assisted-by: Claude Code
Commit: d98d8b962b7aa9deb55d8e68d65c94ffcb3fe650
https://github.com/llvm/llvm-project/commit/d98d8b962b7aa9deb55d8e68d65c94ffcb3fe650
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
M lldb/source/Host/windows/ProcessLauncherWindows.cpp
Log Message:
-----------
[lldb][windows][NFC] expose ProcessLauncherWindows methods (#183579)
Commit: 00e247ad76fdd0cd5841193950c8d4927e3015f8
https://github.com/llvm/llvm-project/commit/00e247ad76fdd0cd5841193950c8d4927e3015f8
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A mlir/include/mlir/Dialect/UB/IR/UBMatchers.h
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/IR/test-matchers.mlir
M mlir/test/lib/IR/TestMatchers.cpp
Log Message:
-----------
[mlir][ub] Add `m_Poison()` matcher (#185022)
Add a dedicated matcher for poison values in the UB dialect, similar to
`m_Constant()` for general constants. The matcher uses
`PoisonAttrInterface` for future extensibility.
Replace existing checks against `ub::PoisonAttr` with the new matcher.
Assisted-by: claude
Commit: 2ce5f91425ea90195d8de1b254aedcac94e602e8
https://github.com/llvm/llvm-project/commit/2ce5f91425ea90195d8de1b254aedcac94e602e8
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/VPlan/tail-folding.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
Log Message:
-----------
[VPlan] Optimize resume values of IVs together with other exit values. (#174239)
Remove updateScalarResumePhis and create extracts for live-outs early in
addInitialSkeleton. Instead of extracting the from the header phi
recipes for the resume values (which is incorrect), extract the last
lane of the backedege value.
Then update optimizeInductionExitUsers to optimize both the scalar
resume values for IVs and IV exit values together.
This removes the need to pass state between transforms and addresses a
TODO.
PR: https://github.com/llvm/llvm-project/pull/174239
Commit: 214246ea7936d0d4df1e76f0cfc33a0d3a33224b
https://github.com/llvm/llvm-project/commit/214246ea7936d0d4df1e76f0cfc33a0d3a33224b
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Host/windows/PseudoConsole.cpp
Log Message:
-----------
[lldb][windows] fix VT sequences overriding (lldb) prompt (#183366)
This patch fixes the `(lldb)` prompt being overwriten by the cursor
position movements the ConPTY emits.
To be a complete solution we should also add a resize hook for the
console's window.
I also think that we should look into injecting conpty VT sequences
before printing the `(lldb)` prompt.
For instance, if we break on a breakpoint and the pty added a "hide
cursor" VT sequence, we should emit a `show cursor` sequence before
printing `(lldb)`. This should be done outside of this PR however.
Commit: 1fab5b65dc3f1616cbf58bb4696cf0dc5b8d522a
https://github.com/llvm/llvm-project/commit/1fab5b65dc3f1616cbf58bb4696cf0dc5b8d522a
Author: Justin Stitt <justinstitt at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/test/Sema/attr-overflow-behavior-constexpr.cpp
Log Message:
-----------
[Clang] Fix constexpr inc/dec operators for OverflowBehaviorTypes (#183826)
__ob_wrap types were not being handled properly by constexpr pre/post-inc/dec operations causing static_asserts() to fail unexpectedly. Fix those by checking if we're dealing with an OBT wrap type specifically.
Fixes: #183760
Commit: d442cc30a9f2bb83f75fead811050137905d9fc4
https://github.com/llvm/llvm-project/commit/d442cc30a9f2bb83f75fead811050137905d9fc4
Author: Lily Gorsheneva <bgorshenev at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix bazel build for 00e247ad76fdd0cd5841193950c8d4927e3015f8 (#185055)
Fix bazel build for 00e247ad76fdd0cd5841193950c8d4927e3015f8
Commit: 1bd075947af45a0875ffeff73a9c5dab8b80986e
https://github.com/llvm/llvm-project/commit/1bd075947af45a0875ffeff73a9c5dab8b80986e
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/SPV_ALTERA_arbitrary_precision_integers.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_integers.ll
Log Message:
-----------
[NFC][SPIRV] Rename files from `SPV_INTEL_arbitrary_precision_integers/floating` to `SPV_ALTERA_arbitrary_precision_integers/floating` (#184996)
* The `SPV_INTEL_arbitrary_precision_integers` was renamed to
`SPV_ALTERA_arbitrary_precision_integers` in
https://github.com/llvm/llvm-project/pull/136085.
* The `SPV_INTEL_arbitrary_precision_floating_point` was introduced
directly as `SPV_ALTERA_arbitrary_precision_floating_point` in
https://github.com/llvm/llvm-project/pull/160054.
Commit: ec9e16444efa391577a0440e848e9148d4efa3da
https://github.com/llvm/llvm-project/commit/ec9e16444efa391577a0440e848e9148d4efa3da
Author: Joeljm1 <143259392+Joeljm1 at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[DAG] isKnownNeverZero - add ISD::SHL DemandedElts handling and tests (#183772)
Added DemandedElts to ISD::SHL case in isKnowNeverZero and required tests
Fixes #183044
Commit: 832517f28d4b47bb03d7a310d99279552da2aa8d
https://github.com/llvm/llvm-project/commit/832517f28d4b47bb03d7a310d99279552da2aa8d
Author: William Fynn <fynnwilliam at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M libcxx/include/__functional/function.h
M libcxx/include/__type_traits/strip_signature.h
M libcxx/include/future
Log Message:
-----------
[libc++] Add alias template for __strip_signature::type (#181955)
Simplifying the internal implementation by providing a more concise
way to access the underlying type within the __strip_signature class.
Commit: cba914cecec3a8194c7eb5953e82028484d50289
https://github.com/llvm/llvm-project/commit/cba914cecec3a8194c7eb5953e82028484d50289
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64][llvm] Update Armv9.7-A dependencies (#185034)
Update Armv9.7-A dependenies:
* `FeatureF16MM` to depend on `FeatureNEON`
* `FeatureF16F32DOT` enabled by default for Armv9.7-A
Commit: 1a23e643be6b98fce376300e27383c2bf23061b9
https://github.com/llvm/llvm-project/commit/1a23e643be6b98fce376300e27383c2bf23061b9
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/test/IR/test-symbol-uses.mlir
M mlir/test/lib/IR/TestSymbolUses.cpp
Log Message:
-----------
[mlir] Fix assertion crash in test-symbol-uses with nested modules (#185069)
The `SymbolUsesPass` walked all nested `SymbolOpInterface` ops in a
module, including those belonging to nested symbol tables (e.g., nested
modules). When an external `func.func` inside a nested module had no
uses in the outer module's body region, it was incorrectly added to
`deadFunctions` for erasure. Since the outer module's `SymbolTable` does
not contain the inner module's symbols, the subsequent
`table.lookup(name)` assertion would fail with:
Assertion `table.lookup(name) && "expected no unknown operations"`
failed.
Fix by only tracking functions that are direct children of the enclosing
module, skipping functions owned by nested symbol tables.
Fixes #60583
Assisted-by: Claude Code
Commit: d4efbf10f183657c85bfed31b747f3d8f493ab31
https://github.com/llvm/llvm-project/commit/d4efbf10f183657c85bfed31b747f3d8f493ab31
Author: Tommy Chiang <ototot at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
A clang/test/CodeGen/bitcast-based-lvalue.c
Log Message:
-----------
[Clang][ExprConst] Handle APValue::LValue in BitCast (#184865)
Instead of marking the branch unreachable, emit an unsupported type
diagnostic and return false when encountering `APValue::LValue` in
`APValueToBufferConverter`.
A good example of this is:
```
long fn() {
return __builtin_bit_cast(long, (long)&fn);
}
```
Although `&fn` itself is a pointer type, the cast `(long)` converts it
to an integer type, which passes `checkBitCastConstexprEligibilityType`.
Thus, eventually, we see it in Converter, which does not expect an
LValue.
Fixes https://github.com/llvm/llvm-project/issues/44991
Commit: 7d48707a180cb972a11f61a2bca0a269f8681a3c
https://github.com/llvm/llvm-project/commit/7d48707a180cb972a11f61a2bca0a269f8681a3c
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Commands/CommandObjectType.cpp
Log Message:
-----------
[lldb] Declare types of Python synthetic signatures (NFC) (#184914)
Similar to the changes in #182892
---------
Co-authored-by: Ebuka Ezike <yerimyah1 at gmail.com>
Commit: 70509b5e19645bcfd81d382d2cdb560eeb187da1
https://github.com/llvm/llvm-project/commit/70509b5e19645bcfd81d382d2cdb560eeb187da1
Author: Adrian Prantl <aprantl at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/DataFormatters/FormatManager.cpp
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/Makefile
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/MyStringFormatter.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/TestSyntheticOneLineSummaries.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/main.c
Log Message:
-----------
[LLDB] Allow one-line summaries in the presence of synthetic child providers (#184926)
This is driven by the Swift language. In Swift many data types such as
Int, and String are structs, and LLDB provides summary formatters and
synthetic child providers for them. For String, for example, a summary
formatter pulls out the string data from the implementation, while a
synthetic child provider hides the implementation details from users, so
strings don't expand their children.
rdar://171646109
Commit: 3fc27dce3c99b3c49ef938871c1c019864274291
https://github.com/llvm/llvm-project/commit/3fc27dce3c99b3c49ef938871c1c019864274291
Author: Adrian Prantl <aprantl at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/DataFormatters/FormatManager.cpp
Log Message:
-----------
[LLDB] Reformat comments
Commit: f305da7240b607141af69644eabbef4794005a96
https://github.com/llvm/llvm-project/commit/f305da7240b607141af69644eabbef4794005a96
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/test/CIR/CodeGen/pack-indexing.cpp
Log Message:
-----------
[CIR] Implement PackIndexingExpr for ComplexType (#184878)
Implement the PackIndexingExpr for ComplexType
Commit: bc8da0fa5af7b1b75ae01bb8829fe471ea085894
https://github.com/llvm/llvm-project/commit/bc8da0fa5af7b1b75ae01bb8829fe471ea085894
Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
A llvm/test/MC/Hexagon/reloc-directive.s
Log Message:
-----------
[Hexagon] Support .reloc asm directive (#183849)
.reloc directive can be used in user assembly programs and created
internally by LLVM. In addition to Hexagon relocations, there are a few
generic names (BFD_RELOC_NONE, BFD_RELOC_8, BFD_RELOC_16,
and BFD_RELOC_32) that are mapped to Hexagon ones.
Commit: bb1d53bbd8726160ed2e45bb4170454b4d8d2d9b
https://github.com/llvm/llvm-project/commit/bb1d53bbd8726160ed2e45bb4170454b4d8d2d9b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
Log Message:
-----------
[RISCV][P-ext] Support vector ISD::ABS using PABD instructions. (#184822)
Commit: 5f70043ac22f4b1de86f1fa141859bcec3e16531
https://github.com/llvm/llvm-project/commit/5f70043ac22f4b1de86f1fa141859bcec3e16531
Author: Eli Friedman <efriedma at qti.qualcomm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Initialization.h
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/SemaCXX/new-delete.cpp
Log Message:
-----------
[clang] Fix filler handling for new expression with unspecified bound. (#182203)
Array new with a runtime bound requires an "array filler" to initialize
elements which aren't explicitly initialized. Array new with an
unspecified bound doesn't need this; the array length is a compile-time
constant. Make sure SemaInit doesn't confuse the two cases.
Fixes #81157.
Commit: 05fa39de0ef2e1574f3f4d32b1527cb3d9fdd0ca
https://github.com/llvm/llvm-project/commit/05fa39de0ef2e1574f3f4d32b1527cb3d9fdd0ca
Author: Rohan Jacob-Rao <rohanjr at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Analysis/FixitUtil.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-parm-unsupported.cpp
Log Message:
-----------
[NFC][Clang][UnsafeBufferUsage] Check optional string before access. (#184867)
Without this fix, the new test case results in a crash due to the
unchecked optional access.
Commit: f5255b0d5ab853a56ad7bdce65c6f217d87d46b9
https://github.com/llvm/llvm-project/commit/f5255b0d5ab853a56ad7bdce65c6f217d87d46b9
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
Log Message:
-----------
[lldb][PlatformDarwin] Make LocateExecutableScriptingResourcesFromDSYM a public static (#185056)
This will allow us to unit-test it in a follow-up patch. We could test
`LocateExecutableScriptingResources` directly, but that requires a valid
`Module`/`ObjectFile`/`SymbolFile`. That's a lot of boilerplate/set to
ultimately just test the `dSYM` logic. The helper just takes
`FileSpec`s, which are much easier to construct in a test.
Commit: 42f3726080102a4e578734111cd9abf853c521fb
https://github.com/llvm/llvm-project/commit/42f3726080102a4e578734111cd9abf853c521fb
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BLAKE3/BUILD.gn
Log Message:
-----------
Revert "[gn build] Guard the BLAKE3 assembly sources with platform" (#185077)
Reverts llvm/llvm-project#70110
Breaks gn build
Commit: 0311bb623a1e1bd101e517cfde4538039f65aa24
https://github.com/llvm/llvm-project/commit/0311bb623a1e1bd101e517cfde4538039f65aa24
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/docs/CommandGuide/llubi.rst
A llvm/test/tools/llubi/loadstore_be.ll
A llvm/test/tools/llubi/loadstore_le.ll
A llvm/test/tools/llubi/loadstore_misaligned.ll
A llvm/test/tools/llubi/loadstore_null.ll
A llvm/test/tools/llubi/loadstore_oob1.ll
A llvm/test/tools/llubi/loadstore_overaligned.ll
A llvm/test/tools/llubi/loadstore_poison.ll
A llvm/test/tools/llubi/loadstore_uaf.ll
A llvm/test/tools/llubi/store_dead.ll
M llvm/tools/llubi/lib/Context.cpp
M llvm/tools/llubi/lib/Context.h
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llubi/lib/Value.h
M llvm/tools/llubi/llubi.cpp
Log Message:
-----------
[llubi] Add support for load/store/lifetime markers (#182532)
Bytes are adjusted to respect the incoming byte type proposed in
https://discourse.llvm.org/t/rfc-add-a-new-byte-type-to-llvm-ir/89522.
Note that the current implementation of constant folding doesn't handle
bitcasts with weird types like `<8 x i3> to <3 x i8>`:
https://github.com/llvm/llvm-project/blob/49de34459c99b33c27aae4596ed5e67ce3d89eae/llvm/lib/Analysis/ConstantFolding.cpp#L223-L232
So I take the result from Alive2 as reference:
https://alive2.llvm.org/ce/z/ZGA_xP
Commit: 3d108be3598e11e02d461448795c6ff424c627be
https://github.com/llvm/llvm-project/commit/3d108be3598e11e02d461448795c6ff424c627be
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[Bazel] Fix build for 00e247a
d442cc30a9f2bb83f75fead811050137905d9fc4 tried to fix this, but missed
some test dependencies.
Commit: afc4af56ac63df493ed86c437ba0f0b08d53f555
https://github.com/llvm/llvm-project/commit/afc4af56ac63df493ed86c437ba0f0b08d53f555
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/test/CIR/CodeGen/array.cpp
A clang/test/CIR/IR/invalid-const-array.cir
Log Message:
-----------
[CIR] Fix array constant initialization with trailing zeros (#184933)
If an array is explicitly initialized with more than eight non-zero
values followed by a number of explicit zero initializers, CIR generates
a constant record initializer with a constant array that is declared as
the size of the non-zero initializers but with the explicit zero
initializers included in the array initialization attribute. This
resulted in an error when we tried to lower that attribute to LLVM IR.
This patch fixes that problem and adds a verifier to ConstantArrayAttr
to check for that condition.
Commit: e2f7f8365866945b2eb6763566385be0da255068
https://github.com/llvm/llvm-project/commit/e2f7f8365866945b2eb6763566385be0da255068
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprAgg.cpp
A clang/test/CodeGenHIP/placement-new-addrspace.hip
M clang/test/OpenMP/amdgcn_sret_ctor.cpp
Log Message:
-----------
[Clang] Fix invalid sret addrspacecast for placement new on HIP (#183639)
When a HIP kernel uses placement new with a function returning an
aggregate via sret (e.g. `new (out) T(make_t())`), and the placement
destination is in global memory (addrspace 1), the sret pointer was
addrspacecast'd to addrspace 5 (private), producing an invalid pointer
that faults at runtime.
Instead of casting the caller's pointer directly, materialise a
temporary alloca in the callee's expected address space, pass that as
the sret argument, and copy the result back to the original destination
after the call.
Commit: c3f0a2c375c26d337a3c86306d6115f36fe685c3
https://github.com/llvm/llvm-project/commit/c3f0a2c375c26d337a3c86306d6115f36fe685c3
Author: Shivam Kunwar <75530356+phyBrackets at users.noreply.github.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/test/Transforms/Reassociate/reassociate-decrement-dbgvalue.ll
Log Message:
-----------
[DebugInfo][Reassociate] Use debug records instead of intrinsics in test (#185031)
As per
https://github.com/llvm/llvm-project/pull/182730#pullrequestreview-3904549897
Commit: 3da28bfbce4d7ac8eaea6b8489031d01748d4fc5
https://github.com/llvm/llvm-project/commit/3da28bfbce4d7ac8eaea6b8489031d01748d4fc5
Author: Dave Bartolomeo <dave_bartolomeo at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/Diagnostics.cpp
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Sarif.h
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Sarif.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/test/Analysis/lit.local.cfg
A clang/test/Frontend/Inputs/expected-sarif/sarif-diagnostics.cpp.sarif
A clang/test/Frontend/Inputs/expected-sarif/sarif-legacy-stable-ids.c.sarif
M clang/test/Frontend/sarif-diagnostics.cpp
A clang/test/Frontend/sarif-legacy-stable-ids.c
M clang/test/TableGen/DiagnosticBase.inc
M clang/test/TableGen/deferred-diag.td
M clang/test/lit.cfg.py
M clang/tools/diagtool/DiagnosticNames.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
Log Message:
-----------
[clang][diagnostics] Stable IDs for Clang diagnostics (#168153)
Part of the implementation of [[RFC] Emitting Auditable SARIF Logs from
Clang](https://discourse.llvm.org/t/rfc-emitting-auditable-sarif-logs-from-clang/88624)
SARIF diagnostics require that each rule have a stable `id` property to
identify that rule across runs, even when the compiler or analysis tool
has changed. We were previously setting the `id` property to the numeric
value of the enum value for that diagnostic within the Clang
implementation; this value changes whenever an unrelated diagnostic is
inserted or removed earlier in the list.
This change sets the `id` property to the _text_ of that same enum
value. This value would only change if someone renames the enum value
for that diagnostic, which should happen much less frequently than
renumbering.
For now, we will just assume that renaming happens infrequently enough
that existing consumers of SARIF will not notice. In the future, we
could take advantage of SARIF's support for `deprecatedIds`, which let a
rule specify the IDs by which it was previously known. This would let us
rename, split, or combine diagnostics while still being able to
correlate the new diagnostic IDs with older SARIF logs and/or
suppressions.
Nothing in this change affects how warnings are configured on the
command line or in `#pragma clang diagnostic`. Those still use warning
groups, not the stable IDs.
### Potential discussion topics
>From @AaronBallman on the RFC:
>We believe some open questions remain (things like whether a unique ID
is on the per-diagnostic level or on the diagnostic group level, whether
the ID is explicitly spelled in the .td file or implicitly generated,
whether we document the IDs, etc), but we think those questions are best
decided in PR discussions with interested parties rather than an RFC.
As a starting point, this PR proposes the following answers to those
open questions:
- _whether a unique ID is on the per-diagnostic level or on the
diagnostic group level_ - per-diagnostic level. For my justification,
see [this portion of the RFC
discussion](https://discourse.llvm.org/t/rfc-emitting-auditable-sarif-logs-from-clang/88624/11?u=dbartol.).
- _whether the ID is explicitly spelled in the .td file or implicitly
generated_ - Implicitly generated, but I'd be happy to have a way to
explicitly specify it. I just think that the in-code identifier is a
reasonable default, and manually reviewing the IDs of thousands of
existing diagnostics would add little benefit.
- _whether we document the IDs_ - For now, the IDs are only exposed to
the user (and other tools) in the SARIF file, so I don't think we need
to document these. We could certainly add this information to the output
of `diagtool` in the future if users find it relevant.
Commit: 57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b
https://github.com/llvm/llvm-project/commit/57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b
Author: Saleem Abdulrasool <compnerd at compnerd.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
builtins: adjust FP80 source management (#183871)
We would previously include the FP80 sources into the Windows build if
we built with the GNU driver rather than the `cl` driver.
Commit: 9cc615a2f5cfbdd28dc835758c35c12cba65e61f
https://github.com/llvm/llvm-project/commit/9cc615a2f5cfbdd28dc835758c35c12cba65e61f
Author: Afonso Rafael (Gafanhoto) <afonsorafael at sapo.pt>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion] remove else after return (NFC) (#184993)
A bit of a small nitpick, close it if unnecessary. (clang-tidy warnings)
Commit: 216a3f1629622b6cd6c919c2625815970ae7ea30
https://github.com/llvm/llvm-project/commit/216a3f1629622b6cd6c919c2625815970ae7ea30
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 3da28bf (#185082)
This fixes 3da28bfbce4d7ac8eaea6b8489031d01748d4fc5.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 097122cb90e8997834a5a1bf3bd10bb66f5687d1
https://github.com/llvm/llvm-project/commit/097122cb90e8997834a5a1bf3bd10bb66f5687d1
Author: schittir <sindhu.chittireddy at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprCXX.cpp
A clang/test/CodeGenCXX/microsoft-abi-diamond-template-multiple-vbptrs.cpp
Log Message:
-----------
[clang][CodeGen] Fix size calculation in vbptr split memory region in EmitNullBaseClassInitialization (#184558)
When splitting memory stores around multiple virtual base pointers
(vbptrs)
in the Microsoft ABI, the calculation for the size of the memory region
after
each vbptr was incorrect.
The bug/old calculation: SplitAfterSize = LastStoreSize -
SplitAfterOffset
This subtracts an absolute offset from a relative size, causing
incorrect (too small) sizes after the second vbptr.
The correct size should be:
SplitAfterSize = (LastStoreOffset + LastStoreSize) - SplitAfterOffset
Since all store regions extend to the end of the non-virtual portion
(NVSize),
this patch uses the simplified form:
SplitAfterSize = NVSize - SplitAfterOffset
The bug causes the assertion failure: "negative store size!"
Fixes https://github.com/llvm/llvm-project/issues/42101
Commit: 918d0feb76a230ad58185cc25f192201ccf614d3
https://github.com/llvm/llvm-project/commit/918d0feb76a230ad58185cc25f192201ccf614d3
Author: Ryan Mitchell <Ryan.Mitchell at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
A llvm/test/CodeGen/AMDGPU/asyncmark-waitcnt.mir
Log Message:
-----------
[AMDGPU] fix asyncmark soft waitcnt bug (#184851)
Asyncmarks record the current wait state and so should not allow waitcnts that occur after them to be merged into waitcnts that occur before.
Commit: 2cb01dc5b6dcc8b935ae3316626d8a8b87192019
https://github.com/llvm/llvm-project/commit/2cb01dc5b6dcc8b935ae3316626d8a8b87192019
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/benchmarks/CMakeLists.txt
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
Log Message:
-----------
[clang-doc] Fix benchmark not compiling (#185065)
CI didn't flag that the benchmark was using the outdated Ctx call
when landing the Mustache MD patch since this benchmark isn't tested.
Also added missing libraries in CMake that prevented me from building
the benchmark locally.
Commit: d32ffdea7aa4be414f2efc4a77257bcf0709e8a0
https://github.com/llvm/llvm-project/commit/d32ffdea7aa4be414f2efc4a77257bcf0709e8a0
Author: adams381 <adams at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A clang/docs/ClangIRABILowering.md
M clang/docs/index.rst
Log Message:
-----------
[CIR] Add MLIR ABI Lowering design document
Design document for MLIR dialect-agnostic calling convention
lowering that builds on the LLVM ABI Lowering Library
(llvm/lib/ABI/) as the single source of truth for ABI
classification. Dialects use the library via an adapter layer:
ABITypeMapper maps dialect types to abi::Type*, the library
classifies arguments and returns, and a dialect-specific
ABIRewriteContext applies the decisions back to IR operations.
Targets x86_64 and AArch64, with parity against Classic Clang
CodeGen validated through differential testing.
Commit: ab10f0848b22417afc6352051b6e26c7704084d2
https://github.com/llvm/llvm-project/commit/ab10f0848b22417afc6352051b6e26c7704084d2
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
M clang/test/CIR/CodeGen/thunks.cpp
Log Message:
-----------
[CIR] Fix a crash when source location is unknown (#185059)
When we call `getLoc()` with an invalid `SourceLocation` and
`currSrcLoc` is also invalid, we were crashing or asserting. I tracked
down one case where this was happening (generating an argument in a
vtable thunk) and fixed that to provide a location. I also am updating
the `getLoc()` implementation so that it will use an unknown location in
release builds rather than crashing because the location isn't critical
for correct compilation.
Commit: a8783dc6baef19f93205a03f3ee74f7f1d2f28b6
https://github.com/llvm/llvm-project/commit/a8783dc6baef19f93205a03f3ee74f7f1d2f28b6
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
Log Message:
-----------
[lldb][bytecode] Disable bytecode.test on windows (#185096)
The test is failing on the lldb-x86_64-win buildbot.
Commit: 5230955af7934437636c803a6eea328c289399d3
https://github.com/llvm/llvm-project/commit/5230955af7934437636c803a6eea328c289399d3
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Lower/LoweringOptions.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Semantics/semantics.h
A flang/include/flang/Support/FPMaxminBehavior.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/LoweringOptions.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Support/CMakeLists.txt
A flang/lib/Support/FPMaxminBehavior.cpp
A flang/test/Driver/ffp-maxmin-behavior.f90
A flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
A flang/test/Lower/fp-maxmin-behavior.f90
M flang/tools/bbc/bbc.cpp
M flang/tools/tco/tco.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[flang,acc] Support -ffp-maxmin-behavior option in lowering. (#184730)
This patch adds `flang -fc1` option `-ffp-maxmin-behavior` and
propagates it throughout Flang, so that semantics context,
lowering and the pass pipeline builder can use it.
MAX/MIN intrinsic and OpenACC max/min reduction lowering
are now controlled by the option.
I kept the `Legacy` mode, which is the default and matches the current
behavior. I am going to test and merge a follow-up patch that
replaces `Legacy` with `Portable`.
RFC:
https://discourse.llvm.org/t/flang-canonical-and-optimizable-representation-for-min-max/90037
Commit: bdec4da38d72caa3166261c28af283f3a36de734
https://github.com/llvm/llvm-project/commit/bdec4da38d72caa3166261c28af283f3a36de734
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
Log Message:
-----------
[RISCV][P-ext] Only support sshlsat for splat immediate shift amounts. (#184886)
Fixes cannot select errors for other types of shift amounts.
I've made a new RISCVISD node that only allows an immediate operand.
It's assumed that the lowering code will only allow valid immediates so
I'm not using a TImmLeaf in the match.
Commit: 337fed353d771d3425d06393637fdc956097b51e
https://github.com/llvm/llvm-project/commit/337fed353d771d3425d06393637fdc956097b51e
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprAgg.cpp
A clang/test/CodeGenHIP/sret-nontrivial-copyable.hip
M clang/test/OpenMP/amdgcn_sret_ctor.cpp
Log Message:
-----------
[Clang] Fix EmitAggregateCopy assertion for non-trivially-copyable sr… (#185091)
…et types
Fix for buildbot crash on #183639
The UseTemp path in AggExprEmitter::withReturnValueSlot copies back via
EmitAggregateCopy, which asserts that the type has a trivial copy/move
constructor or assignment operator. Gate the DestASMismatch condition on
isTriviallyCopyableType so that non-trivially-copyable types (e.g.
std::exception_ptr) fall through to the addrspacecast path instead.
Fix buildbot crash:
https://lab.llvm.org/buildbot/#/builders/73/builds/19803
Commit: 4d53c42f55c06e9dbae48723e366f391ccd9312f
https://github.com/llvm/llvm-project/commit/4d53c42f55c06e9dbae48723e366f391ccd9312f
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
builtins: Make cmake formatting self-consistent aftr #183871
No behavior change.
Commit: eada0f57b47309e6a74d83e3dbef5dca71d3b409
https://github.com/llvm/llvm-project/commit/eada0f57b47309e6a74d83e3dbef5dca71d3b409
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/head-template.mustache
M clang-tools-extra/clang-doc/assets/navbar-template.mustache
M clang-tools-extra/test/clang-doc/basic-project.mustache.test
Log Message:
-----------
[clang-doc] Add button toggle for light/dark theme (#181587)
The user can now manually toggle the light or dark theme instead of
waiting for the system theme to change.
Also fixes a typo that caused some overflow issues even when there was
no content to cause an overflow.
Commit: ae4e71241f0323ba3ceecc9922713628b2d9c967
https://github.com/llvm/llvm-project/commit/ae4e71241f0323ba3ceecc9922713628b2d9c967
Author: Sy Brand <sy.brand at fastly.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp
M llvm/test/CodeGen/WebAssembly/export-name.ll
M llvm/test/CodeGen/WebAssembly/import-module.ll
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
M llvm/test/MC/WebAssembly/export-name-invalid.s
M llvm/test/MC/WebAssembly/export-name.s
M llvm/test/MC/WebAssembly/import-module-invalid.s
M llvm/test/MC/WebAssembly/import-module.s
M llvm/test/MC/WebAssembly/import-name-invalid.s
Log Message:
-----------
[MC][WebAssembly] Allow strings for import modules and names in asm (#182896)
Current tooling for the WebAssembly component model uses import modules
and names such as `$root` and `[thread-index]`. Importing these from
assembly files requires support for non-valid identifiers in
`.import_name` and `.import_module` directives. This PR adds support for
specifying those as strings, e.g.:
```asm
.import_module __wasm_component_model_builtin_thread_index, "$root"
.import_name __wasm_component_model_builtin_thread_index, "[thread-index]"
```
Commit: a99d4a6311443bafd8b2de343a7f2213bd08011d
https://github.com/llvm/llvm-project/commit/a99d4a6311443bafd8b2de343a7f2213bd08011d
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M mlir/lib/Tools/mlir-reduce/MlirReduceMain.cpp
Log Message:
-----------
[mlir][reducer] Add split-input-file to mlir-reduce (#184970)
The tests for mlir-reduce are currently scattered. To centralize the
tests for mlir-reduce, I added the split-input-file feature to
mlir-reduce.It is part of
https://github.com/llvm/llvm-project/pull/184974.
Commit: b87cf50b6c5ab917a3443671ed6ae53ce08ed35b
https://github.com/llvm/llvm-project/commit/b87cf50b6c5ab917a3443671ed6ae53ce08ed35b
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
Log Message:
-----------
[WebAssembly] Remove the `wasm-disable-fix-irreducible-control-flow-pass` switch (#185072)
This removes the `wasm-disable-fix-irreducible-control-flow-pass`
switch.
It was originally added in #67715 as a way to avoid the potentially
absurd compile times the pass used to bring. However with the successful
merge of #184441, the pass itself has been fixed to avoid this issue.
Given that, it is no longer necessary nor desirable to keep this switch.
Commit: c17200033d057aa490fe5b68bb0c9d10cd9d67c9
https://github.com/llvm/llvm-project/commit/c17200033d057aa490fe5b68bb0c9d10cd9d67c9
Author: Zack Johnson <zacklj89 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/test/Instrumentation/AddressSanitizer/basic-msvc64.ll
Log Message:
-----------
[ASan][Windows] Fixing Windows shadow memory address for arm64 (#184902)
This is a prerequisite for full ARM64 Windows ASan support. The runtime
interception changes needed to make ASan functional end-to-end on ARM64
Windows will be opened separately.
Motivated by https://github.com/microsoft/STL/pull/6095 (more
specifically [this reference to
clang-cl](https://github.com/microsoft/STL/pull/6095#:~:text=Not%20enabling%20GH_002030_asan_annotate_string%20and%20GH_002030_asan_annotate_vector%20yet%20due%20to%20Clang%20issues.))
The latest MSVC toolset includes ARM64 AddressSanitizer support. This
change adds AArch64 to the Windows 64-bit shadow mapping condition when
compiling with `-fsanitize=address` with `clang-cl`. Without this,
consumers on Windows who target ARM64 with `clang-cl -fsanitize=address`
and then link with `link.exe` will see this at runtime:
```text
ERROR: AddressSanitizer: access-violation on unknown address
...
```
since the shadow memory offset is not properly assigned. Windows ARM64
uses the same dynamic shadow allocation strategy as x64 via
`__asan_shadow_memory_dynamic_address`.
Commit: 97cf8bf220763a6a963d6229ab36dae1ed695ae3
https://github.com/llvm/llvm-project/commit/97cf8bf220763a6a963d6229ab36dae1ed695ae3
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
Log Message:
-----------
[flang] materialize fir.box when it is from a block argument (#184898)
We have to materialize `fir.box` before adding a `fir.convert` to a
memref type. Otherwise we get:
`'fir.convert' op invalid type conversion'!fir.box<!fir.array<?xi32>>' /
'memref<?xi32, strided<[?], offset: ?>>'`
Commit: 2c8c39a70837c03f550d83272e01d019ba28965c
https://github.com/llvm/llvm-project/commit/2c8c39a70837c03f550d83272e01d019ba28965c
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/docs/CommandGuide/llubi.rst
R llvm/test/tools/llubi/loadstore_be.ll
R llvm/test/tools/llubi/loadstore_le.ll
R llvm/test/tools/llubi/loadstore_misaligned.ll
R llvm/test/tools/llubi/loadstore_null.ll
R llvm/test/tools/llubi/loadstore_oob1.ll
R llvm/test/tools/llubi/loadstore_overaligned.ll
R llvm/test/tools/llubi/loadstore_poison.ll
R llvm/test/tools/llubi/loadstore_uaf.ll
R llvm/test/tools/llubi/store_dead.ll
M llvm/tools/llubi/lib/Context.cpp
M llvm/tools/llubi/lib/Context.h
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llubi/lib/Value.h
M llvm/tools/llubi/llubi.cpp
Log Message:
-----------
Revert "[llubi] Add support for load/store/lifetime markers" (#185101)
Reverts llvm/llvm-project#182532 to unblock CI.
The original patch causes some test failures related to undef bits, as
it incorrectly assumes `std::uniform_int_distribution` returns the same
result with different C++ stdlib vendors.
Commit: bc55e5e4b0e0e14839a6b49abfd1be7094925269
https://github.com/llvm/llvm-project/commit/bc55e5e4b0e0e14839a6b49abfd1be7094925269
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
Log Message:
-----------
[gn] port 3da28bfbce4d7a (DiagnosticStableIDs)
Commit: fef16a71d3fa9c2ec63233a63d124f10e2c8ba91
https://github.com/llvm/llvm-project/commit/fef16a71d3fa9c2ec63233a63d124f10e2c8ba91
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang/test/Lower/location.f90
M mlir/include/mlir/Dialect/Index/IR/IndexOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/test/CAPI/irdl.c
M mlir/test/Dialect/GPU/shuffle-rewrite.mlir
M mlir/test/Dialect/GPU/sparse-roundtrip.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_spgemm_lib.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
M mlir/test/IR/array-of-attr.mlir
M mlir/test/mlir-tblgen/attr-or-type-format-roundtrip.mlir
M mlir/test/mlir-tblgen/attr-or-type-format.td
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
Log Message:
-----------
[mlir][ODS] Fix notorious double-space bug in op printers (#184253)
When an op's assembly format prints an attribute via
`printStrippedAttrOrType`, two independent space-emission mechanisms
would fire: the op format generator emits a space before each argument,
and the attribute's generated `print` method also emits a leading space
(`shouldEmitSpace` initialized to true). This caused double spaces like
`gpu.shuffle xor`.
The usual workaround for this was to add double backticks to consume the
leading space.
Fixed by removing the leading space from generated attr/type `print()`
methods and compensating in the print dispatcher by conditionally adding
a space between the mnemonic and `print` call when the format starts
with a name or keyword rather than punctuation.
Also remove some workarounds for the double-spacing in op formats and
fix tests that now don't have leading spaces.
Assisted-by: claude
Commit: 06f7cd439c9114b64cd134f3c42639dfb94ae4df
https://github.com/llvm/llvm-project/commit/06f7cd439c9114b64cd134f3c42639dfb94ae4df
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/mul.hlsl
A clang/test/SemaHLSL/BuiltIns/mul-errors.hlsl
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/matrix-multiply.ll
Log Message:
-----------
[HLSL][DirectX] Implement HLSL `mul` function and DXIL lowering of `llvm.matrix.multiply` (#184882)
Fixes #99138
- Defines a `__builtin_hlsl_mul` clang builtin in `Builtins.td`.
- Links the `__builtin_hlsl_mul` clang builtin with
`hlsl_alias_intrinsics.h` under the name `mul` for matrix cases
- Implement scalar and vector elementwise multiplication cases of the
`mul` function in `hlsl_intrinsics.h` and `hlsl_intrinsic_helpers.h`
- Adds sema for `__builtin_hlsl_mul` to `CheckBuiltinFunctionCall` in
`SemaHLSL.cpp`
- Adds codegen for `__builtin_hlsl_mul` to `EmitHLSLBuiltinExpr` in
`CGHLSLBuiltins.cpp`
- Vector-vector cases lower to `dot` (except double vectors, which
expands to scalar multiply-adds).
- Matrix-matrix, matrix-vector, and vector-matrix multiplication lower
to the `llvm.matrix.multiply` intrinsic
- Adds codegen tests to `clang/test/CodeGenHLSL/builtins/mul.hlsl`
- Adds sema tests to `clang/test/SemaHLSL/BuiltIns/mul-errors.hlsl`
- Implements lowering of the `llvm.matrix.multiply` intrinsic to DXIL in
`DXILIntrinsicExpansion.cpp`
Note: Currently the SPIRV backend does not support row-major matrix
memory layouts when lowering matrix multiply, and just assumes
column-major layout. Therefore this PR also makes the DirectX backend
only assume column-major layout. Implementing support for row-major
order shall be done in a separate PR. (Tracked by
https://github.com/llvm/llvm-project/issues/184906)
This PR locally passes the `mul` offload tests in both DirectX 12 and
Vulkan: https://github.com/llvm/offload-test-suite/pull/941
Assisted-by: claude-opus-4.6
Commit: 6bd99efec167a6f3319a2405ebca607619e07411
https://github.com/llvm/llvm-project/commit/6bd99efec167a6f3319a2405ebca607619e07411
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Add hasManagedOrUnifedSymbols attribute to cuf.data_transfer op (#185106)
Add an attribute to signal the presence of managed or unified symbols in
the data transfer. In some case, the presence of such symbols require to
insert synchronization. Adding the attribute in the op during lowering
facilitate the recognition of such data transfer.
Commit: ab5844d2e7c57234257138f867ecd7d066014374
https://github.com/llvm/llvm-project/commit/ab5844d2e7c57234257138f867ecd7d066014374
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
Log Message:
-----------
[AMDGPU] Disable negative imm offset for async load/store instructions (#185078)
They are not allowed by the HW.
Commit: 65f39a16abf651008185839459fb330258800a62
https://github.com/llvm/llvm-project/commit/65f39a16abf651008185839459fb330258800a62
Author: Christopher Di Bella <cjdb at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M libcxx/include/__split_buffer
M libcxx/include/__vector/vector.h
Log Message:
-----------
[libcxx] Add `__split_buffer::__swap_layouts` (#180102)
This commit simplifies the cumbersome process of swapping the respective
layout members for `__split_buffer` and `vector`.
Commit: 89d69363a5f6819078e181265d56781c3cf80cad
https://github.com/llvm/llvm-project/commit/89d69363a5f6819078e181265d56781c3cf80cad
Author: David Green <david.green at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/bf16-imm.ll
M llvm/test/CodeGen/AArch64/f16-imm.ll
M llvm/test/CodeGen/AArch64/fabs-combine.ll
M llvm/test/CodeGen/AArch64/fdiv-const.ll
M llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
M llvm/test/CodeGen/AArch64/half-precision-signof-no-assert.ll
M llvm/test/CodeGen/AArch64/isinf.ll
M llvm/test/CodeGen/AArch64/known-never-nan.ll
Log Message:
-----------
[AArch64][GlobalISel] Add more gisel test coverage. NFC
Commit: dc8de1083e1f1392c220cf64fe429c027867e0ba
https://github.com/llvm/llvm-project/commit/dc8de1083e1f1392c220cf64fe429c027867e0ba
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitcnts][NFC] Simplify logic in GFX12Plus::applyPreexistingWaitcnts (#184925)
The loop is collecting the first instruction of each waitcnt kind and is
erasing the rest, with the exception of DEPCTR which needs more checks.
The existing code was factoring out the instruction deletion and the
setting of the collected instruction variables. But the special handling
for DEPCTR and the in-loop deletion of `S_WAITCNT_lds_direct` was just
complicating the logic.
Commit: d34f17904bd4fa51c1ec778ce8152e420f766304
https://github.com/llvm/llvm-project/commit/d34f17904bd4fa51c1ec778ce8152e420f766304
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn-exp.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for amdgcn_exp/exp_row (#181956)
Commit: 6dea289815b433ab88bcbb530f7edaa9c7784cbe
https://github.com/llvm/llvm-project/commit/6dea289815b433ab88bcbb530f7edaa9c7784cbe
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/test/CIR/CodeGen/try-catch-tmp.cpp
Log Message:
-----------
[CIR] Implement reference type in init catch param (#184442)
Implement init support for reference type in the init catch param
Commit: 1cdcee267c8d03064b887488ed00d78c4775b365
https://github.com/llvm/llvm-project/commit/1cdcee267c8d03064b887488ed00d78c4775b365
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
Log Message:
-----------
[HLSL][Matrix] Make matrix truncation respect default matrix memory layout (#184280)
Fixes #183127 and #184371
This PR makes the matrix truncation cast implementation use the new
matrix flattened index helper functions introduced by #182904 so that it
reads elements from the source matrix using the default matrix memory
layout instead of always assuming column-major order.
This PR also fixes a bug where matrix truncation truncated the wrong
elements.
Assisted-by: claude-opus-4.6
Commit: 43f78384e927538b2c4c6e83d5f0feb0f17e1427
https://github.com/llvm/llvm-project/commit/43f78384e927538b2c4c6e83d5f0feb0f17e1427
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
Log Message:
-----------
[AArch64] Fix more typos (NFC)
Fix more typos in the AArch64 codebase using the
https://github.com/crate-ci/typos Rust package.
commit-id:9f4d826d
Reviewers: davemgreen
Pull Request: https://github.com/llvm/llvm-project/pull/183086
Commit: cf21ea9c99c120977c3817efdd5b0e507f68333d
https://github.com/llvm/llvm-project/commit/cf21ea9c99c120977c3817efdd5b0e507f68333d
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/A15SDOptimizer.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMCallLowering.cpp
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/ARMParallelDSP.cpp
M llvm/lib/Target/ARM/ARMSLSHardening.cpp
M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp
M llvm/lib/Target/ARM/MLxExpansionPass.cpp
M llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/lib/Target/ARM/MVETailPredication.cpp
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
Log Message:
-----------
[ARM] Fix more typos (NFC)
Fix more typos in the AArch64 codebase using the
https://github.com/crate-ci/typos Rust package.
commit-id:33a1bb8d
Reviewers: davemgreen
Reviewed By: davemgreen
Pull Request: https://github.com/llvm/llvm-project/pull/183087
Commit: 01a97050f01b6b833d3d1f22997b5009293b43a3
https://github.com/llvm/llvm-project/commit/01a97050f01b6b833d3d1f22997b5009293b43a3
Author: Christopher Di Bella <cjdb at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M libcxx/include/__split_buffer
M libcxx/include/__vector/vector.h
Log Message:
-----------
Revert "[libcxx] adds `__split_buffer::__swap_layouts`" (#185120)
Reverts llvm/llvm-project#180102
Commit: 610ed83145c66473137298918fb32dd07985044a
https://github.com/llvm/llvm-project/commit/610ed83145c66473137298918fb32dd07985044a
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
Log Message:
-----------
[HWASan] add optimization remark for supported lifetimes
This lets us find functions where we pessimize codegen by removing
lifetimes.
Reviewers: vitalybuka
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/183858
Commit: 81a537e7081b76d41aa0422924d334a713fdd779
https://github.com/llvm/llvm-project/commit/81a537e7081b76d41aa0422924d334a713fdd779
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/EmulateInstruction.cpp
M lldb/source/Core/Highlighter.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Expression/REPL.cpp
M lldb/source/Symbol/ObjectContainer.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolVendor.cpp
M lldb/source/Symbol/TypeSystem.cpp
M lldb/source/Target/ABI.cpp
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/JITLoader.cpp
M lldb/source/Target/Language.cpp
M lldb/source/Target/LanguageRuntime.cpp
M lldb/source/Target/MemoryHistory.cpp
M lldb/source/Target/OperatingSystem.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SyntheticFrameProvider.cpp
M lldb/source/Target/SystemRuntime.cpp
M lldb/source/Target/UnwindAssembly.cpp
M lldb/unittests/Core/PluginManagerTest.cpp
Log Message:
-----------
[lldb] Use range-based for loops over plugins (#184837)
This PR replaces the Get*CallbackAtIndex pattern in the PluginManager
with returning a snapshot of callbacks that the caller can iterate over
using a range-based for loop. This is a continuation of #184452 which
added thread safety by using snapshots. However, that introduced a bunch
of unnecessary copies which are largely eliminated again by getting the
snapshot once when gather all the callbacks, rather than doing that on
each iteration when querying a plugin for a given index. It also
eliminates the possibility of the snapshot changing underneath you when
iterating over the plugins.
This change was largely mechanical and I used Claude to do the menial
work of updating the signatures and call sites.
Commit: 868147026258b982a8089701dfae531f9ebbd464
https://github.com/llvm/llvm-project/commit/868147026258b982a8089701dfae531f9ebbd464
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanningTool.h
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
Log Message:
-----------
[clang][Dependency Scanning] Fix the In-Memory Buffer Used for By-Name Scanning (#183396)
This PR fixes two issues of the in-memory buffer we use for the input
file when a dependency scanner performs by-name queries.
First, it renames the buffer. The temporary file was named
`ScanningByName-%%%%%%%%.input`, which leads to weird diagnostics such
as
```
ScanningByName-2d42a1e9.input:1:1: fatal error: could not build module 'X'
```
This PR changes the name of the file buffer, so we get diagnostics such
as
```
module-include.input:1:1: fatal error: could not build module 'X'
```
which is more indicative.
Additionally, this PR fixes a bug where the source location may overflow
the temporary buffer by creating a 64k empty string which the temporary
buffer occupies. When the source location overflows, the diagnostics
could point to some random file that comes after the fake file and is
incorrect.
Currently, the maximum number of unique names from Apple's SDKs is
around 3000. A 64k buffer per dependency scanning worker gives us around
20x capacity per worker (which scans fewer names than 3000 when the
scanning is done in parallel). A fatal error is added to catch
overflows.
Commit: 3e24a393571e83e8564562b2ec84fe701648da2f
https://github.com/llvm/llvm-project/commit/3e24a393571e83e8564562b2ec84fe701648da2f
Author: MITSUNARI Shigeo <herumi at nifty.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/DivisionByConstantInfo.h
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Support/DivisionByConstantInfo.cpp
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
A llvm/test/CodeGen/AArch64/udiv-const-optimization.ll
M llvm/test/CodeGen/AArch64/urem-lkk.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
A llvm/test/CodeGen/RISCV/udiv-const-optimization.ll
M llvm/test/CodeGen/RISCV/urem-lkk.ll
M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
A llvm/test/CodeGen/X86/udiv-const-optimization.ll
M llvm/test/CodeGen/X86/urem-lkk.ll
Log Message:
-----------
[SelectionDAG] Optimize 32-bit udiv with 33-bit magic constants on 64-bit targets (#181288)
This PR optimizes 32-bit unsigned division by constants when the magic
constant is 33 bits (IsAdd=true case in UnsignedDivisionByConstantInfo)
on 64-bit targets.
## Overview
Compiler optimization for constant division of `uint32_t` variables
(such as `x / 7`) is based on the method
proposed by Granlund and Montgomery in 1994 (hereafter referred to as
the GM method).
However, the GM method for the IsAdd=true case was optimized for 32-bit
CPUs, not 64-bit CPUs.
This patch provides optimizations specifically for 64-bit CPUs (such as
x86_64 and Apple M-series).
A simple benchmark demonstrates over 60% speedup on both Intel Xeon and
Apple M4 processors.
## The GM Method
The GM method for `x / 7` can be expressed in C code as follows,
where the constants `c` and `a` are magic numbers determined by the
divisor:
```cpp
uint32_t udiv_original(uint32_t x) {
uint64_t v = x * c;
v >>= 32;
uint32_t t = uint32_t(x) - uint32_t(v);
t >>= 1;
t += uint32_t(v);
t >>= a - 33;
return t;
}
```
For example, division by 7 on x86_64 generates 7 instructions:
```asm
movl %edi, %eax
imulq $613566757, %rax, %rax
shrq $32, %rax
subl %eax, %edi
shrl %edi
addl %edi, %eax
shrl $2, %eax
```
## Proposed Solution
This patch generates the following optimized code:
```cpp
uint32_t udiv_optimized(uint32_t x) {
uint128_t v = uint128_t(x) * ((c + 0x100000000) << (64 - a));
return uint32_t(v >> 64);
}
```
Since a 64-bit right shift of a 128-bit variable extracts the upper 64
bits,
this code eliminates the need for shifts after multiplication.
The implementation pre-shifts the 33-bit magic constant `c = 2^32 +
Magic` left by `(64-a)` bits
and uses the high 64 bits of a 64 x 64 -> 128 bit multiplication
directly.
This eliminates the add/sub/shift sequence.
After optimization, division by 7 becomes 4 instructions (or 3 with
BMI2):
```asm
# Standard (4 instructions)
movl %edi, %eax
movabsq $2635249153617166336, %rcx
mulq %rcx
movq %rdx, %rax
# With BMI2 (3 instructions)
movl %edi, %edx
movabsq $2635249153617166336, %rax
mulxq %rax, %rax, %rax
```
Commit: 3164d54877f4f796a8b4270c14be354889e0501f
https://github.com/llvm/llvm-project/commit/3164d54877f4f796a8b4270c14be354889e0501f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rv32p.ll
Log Message:
-----------
[RISCV][P-ext] Custom legalize i64 SHL to WSLL(I)/WSLA(I) (#185079)
When input is zero or sign extended.
Commit: 541d546c2efba8466f3ef77707d23846ac22f485
https://github.com/llvm/llvm-project/commit/541d546c2efba8466f3ef77707d23846ac22f485
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Symbol/SaveCoreOptions.cpp
M lldb/unittests/Core/PluginManagerTest.cpp
Log Message:
-----------
[lldb] Use llvm::SmallVector in the PluginManager (NFC) (#184912)
Most of the plugins have only a small number of instances. Use
`llvm::SmallVector` instead of `std::vector`.
Depends on https://github.com/llvm/llvm-project/pull/184837
Commit: 32c51ee254146b8ec77d6d434c94f0d96acfd8bd
https://github.com/llvm/llvm-project/commit/32c51ee254146b8ec77d6d434c94f0d96acfd8bd
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M lldb/source/Core/PluginManager.cpp
Log Message:
-----------
[lldb] Implement PluginInfo move constructor (#185137)
The default move constructor wasn't nulling out the callbacks. Combined
with the fact that llvm::sys::DynamicLibrary has no explicit move
constructor and hence library.isValid() still returned true after having
moved-from, we would end up calling plugin_term_callback() when
destroying the moved-from PluginInfo, calling it prematurely.
Commit: f540ad69a801263b3446dfb86d30d650cfa96a5f
https://github.com/llvm/llvm-project/commit/f540ad69a801263b3446dfb86d30d650cfa96a5f
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
R bolt/include/bolt/Passes/ReorderUtils.h
Log Message:
-----------
[bolt][NFC] Remove unused ReorderUtils.h (#184642)
This header has a case sensitivity syntax error, delete it since it's
unused
Commit: 88034017115761cac37efc99524c577dff62694e
https://github.com/llvm/llvm-project/commit/88034017115761cac37efc99524c577dff62694e
Author: Roy Shi <royitaqi at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/tools/dsymutil/DebugMap.cpp
M llvm/tools/dsymutil/DebugMap.h
M llvm/tools/dsymutil/dsymutil.cpp
Log Message:
-----------
[dsymutil] Use DebugMapFilter when parsing --allow/--disallow YAML input (#185061)
PR https://github.com/llvm/llvm-project/pull/182083 forgot to switch
over to use the newly added `DebugMapFilter` when parsing
`--allow/--disallow` YAML input. It was still using
`ObjectFileList`/`ObjectFileEntry`, which was added initially in the
same PR and was later intended to be replaced by `DebugMapFilter`.
This patch switches over to use `DebugMapFilter`, adds necessary YAML
traits, and removes `ObjectFileList`/`ObjectFileEntry`.
Commit: 11888cb88925364d689ff229635947f894cc676b
https://github.com/llvm/llvm-project/commit/11888cb88925364d689ff229635947f894cc676b
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Support/JSON.cpp
M llvm/unittests/Support/JSONTest.cpp
Log Message:
-----------
[JSON] Consistently reset moved-from object (#185125)
Before the patch moved from object was in consistent state.
For some types it resets contents and switch to T_Null, for others
it preserves type and value.
So make sure to set T_Null for all.
When we set T_Null we need to destroy the value.
It's important for particular types, like std::string. With
Asan it must unpoison SSO buffer.
Fixes false container overflows after #184693:
https://lab.llvm.org/buildbot/#/builders/169/builds/20655/steps/11/logs/stdio
Commit: e435e07496c64fe7b4ab021972460698749bebcf
https://github.com/llvm/llvm-project/commit/e435e07496c64fe7b4ab021972460698749bebcf
Author: Anshul Nigham <nigham at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[NewPM] Port for AArch64A53Fix835769 (#184965)
Commit: 16cf423ad854ed40f03311a807bbb844b47c5805
https://github.com/llvm/llvm-project/commit/16cf423ad854ed40f03311a807bbb844b47c5805
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/Preprocessor/wasm-target-features.c
Log Message:
-----------
[WebAssembly] Move a wide-arithmetic test (NFC) (#184950)
Other individual feature tests appear before CPU tests, so this moves
this test there to make it consistent.
Commit: 38b47c0c45821c5b0b40983d6514d35e52deb34e
https://github.com/llvm/llvm-project/commit/38b47c0c45821c5b0b40983d6514d35e52deb34e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[X86] known-never-zero.ll - add ROTL/ROTR/BITREVERSE/BSWAP/CTPOP/ABS test coverage for #184033 (#185128)
Some were just missing vector / demandedelts handling - other were missing entirely
Commit: fe11a43c60b9d6771c32a7e5689a0381db6c3ddd
https://github.com/llvm/llvm-project/commit/fe11a43c60b9d6771c32a7e5689a0381db6c3ddd
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
Log Message:
-----------
[MLIR][XeGPU] Enhancing insert_strided_slice layout setup and infer rules (#184742)
This PR enhances insert_strided_slice layout rules to handle slice
layout and adjust the layout to fit the src shape. It adds dropDims as
layout utility function.
Commit: 5bc050147fa629134b6ed75642c82102b97419fe
https://github.com/llvm/llvm-project/commit/5bc050147fa629134b6ed75642c82102b97419fe
Author: Thurston Dang <thurston at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/unittests/IR/OperationSupportTest.cpp
Log Message:
-----------
[mlir][test] Fix memory leak after #184202 (#185142)
Reported by buildbot:
https://lab.llvm.org/buildbot/#/builders/55/builds/25078
Commit: 110d3baa825ad9d78c25ffc777509069fabeec0b
https://github.com/llvm/llvm-project/commit/110d3baa825ad9d78c25ffc777509069fabeec0b
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/ClangDoc.cpp
M clang-tools-extra/clang-doc/ClangDoc.h
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/MDMustacheGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
Log Message:
-----------
[clang-doc][NFC] Introduce OwnedPtr abstraction (#184869)
Eventually, we want clang-doc to support arena allocation, but the
widespread use of owning pointers in the data types prevents this.
Rather than have wide scale refactoring, we can introduce a type alias
that can be swapped out atomically to switch from smart pointers to raw
pointers. This is the first of several refactorings that are intended to
make the transition simpler.
Commit: ca2b4db828bb48aefd756c774ee3f071d821c8ff
https://github.com/llvm/llvm-project/commit/ca2b4db828bb48aefd756c774ee3f071d821c8ff
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/docs/clang-tidy/Contributing.rst
Log Message:
-----------
[clang-tidy][NFC] Update contribution guide for test language standards (#184769)
Explain how to use the `-std` flag in clang-tidy tests and reorganize
the content on C++ pitfalls into a new subsection for better
readability.
Related discussion: https://github.com/llvm/llvm-project/pull/184741
As of AI Usage: the documentation is partially rephrased by Gemini 3.
Commit: 13d391042e49e547a8543fca93b50d87872fec34
https://github.com/llvm/llvm-project/commit/13d391042e49e547a8543fca93b50d87872fec34
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
Log Message:
-----------
[clang-doc][NFC] Introduce Vector and Array abstractions (#184870)
Introduce OwningVec and OwningArray aliases for vector types we want to
eventually update for arena allocations.
Commit: a14a104f889feb94f7da1cd06d817f950573c7d7
https://github.com/llvm/llvm-project/commit/a14a104f889feb94f7da1cd06d817f950573c7d7
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
[ORC] Add WaitingOnGraph::visitWithRemoval, refactor some loops. (#185001)
visitWithRemoval visits the elements of a vector performing a
swap-and-pop to remove any for which the visitor returns true.
Use this to refactor some loops in WaitingOnGraph that used this idiom.
Commit: 263e3a383799fc9eba83bbc7e7f8cb6268a80431
https://github.com/llvm/llvm-project/commit/263e3a383799fc9eba83bbc7e7f8cb6268a80431
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
Log Message:
-----------
[clang-doc] Introduce type alias for OwningPtrVec/Array (#184871)
We commonly have vectors/arrays of owned pointers. This should simplify
future refactoring when switching to arena allocation.
Commit: 69902769c74718295dd553a1cd0bb6c56ff2645a
https://github.com/llvm/llvm-project/commit/69902769c74718295dd553a1cd0bb6c56ff2645a
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
Log Message:
-----------
[clang-doc] Introduce abstractions for pointer operations (#184872)
Since we're migrating from std::unique_ptr to raw pointers via
arena allocation, we want to have some interfaces that abstract
these operations away, and can be changed to keep the system
working without introducing a lot of unnecessary churn in the code.
Commit: ca1eefdfc061fc062b6b9dc4149ca4a0e51bde08
https://github.com/llvm/llvm-project/commit/ca1eefdfc061fc062b6b9dc4149ca4a0e51bde08
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.cpp
Log Message:
-----------
[clang-tidy] Correctly handle attributes in readability-inconsistent-ifelse-braces (#184095)
Improved the check to correctly handle `[[likely]]` and `[[unlikely]]`
attributes placed between the if/else keyword and the opening brace.
As of AI Usage: Gemini 3 is used for pre-commit reviewing.
Closes https://github.com/llvm/llvm-project/issues/184081
Commit: 80c7133915c2886e7aa093b4842e2910bc96c82e
https://github.com/llvm/llvm-project/commit/80c7133915c2886e7aa093b4842e2910bc96c82e
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
Log Message:
-----------
[clang-doc] Introduce Serializer class (#184873)
Serialization has mostly been done with static functions, but soon we
will need to share state, like alocator references. To avoid blowing up
our parameter lists, we can just wrap the local functions within a
class.
Commit: 3d7b22e00d95ea66e61b5acbe9be6b1e1e57d6b7
https://github.com/llvm/llvm-project/commit/3d7b22e00d95ea66e61b5acbe9be6b1e1e57d6b7
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
R mlir/test/mlir-reduce/crashop-reduction.mlir
R mlir/test/mlir-reduce/multiple-function.mlir
A mlir/test/mlir-reduce/reduction-tree.mlir
Log Message:
-----------
[mlir][reducer] Refactor reduction-tree test (#184974)
Consolidate reduction-tree pass tests into a single file using
mlir-reduce's -split-input-file feature. See
https://github.com/llvm/llvm-project/pull/184970.
Commit: 9d3f25cb480889e2aa71ad298c34dc66e48f5d53
https://github.com/llvm/llvm-project/commit/9d3f25cb480889e2aa71ad298c34dc66e48f5d53
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
Log Message:
-----------
[CIR] Fix GlobalOp::getSuccessorRegions using wrong region for dtor (#185115)
Commit: 71ea3d9cabef354afc7028ac7bf290430105f6f6
https://github.com/llvm/llvm-project/commit/71ea3d9cabef354afc7028ac7bf290430105f6f6
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
Log Message:
-----------
[CIR] Fix convertSideEffectForCall header/definition signature mismatch (#185118)
Add missing bool &noReturn parameter to the declaration in
LowerToLLVM.h to match the definition in LowerToLLVM.cpp.
Commit: babead29c3fb2c44b85e8fd2f269ee56b69cafb2
https://github.com/llvm/llvm-project/commit/babead29c3fb2c44b85e8fd2f269ee56b69cafb2
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/lib/Target/RISCV/RISCVMacroFusion.td
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/CodeGen/RISCV/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
M llvm/test/CodeGen/RISCV/macro-fusions.mir
M llvm/test/TableGen/MacroFusion.td
Log Message:
-----------
[NFC] Move fusion- to start of Fusion Feature Name (#185146)
This makes it a lot easier to see all the available fusions, because
they appear together in the list.
Commit: 40713f2a87c808213e91d7e5eba7276176ed5e91
https://github.com/llvm/llvm-project/commit/40713f2a87c808213e91d7e5eba7276176ed5e91
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
[ORC] Refactor WaitingOnGraph::processExternalDeps. NFCI. (#185152)
Refactor WaitingOnGraph::processExternalDeps to use the recently
introduced ContainerElementsMap::visit and ElementSet::remove_if
methods.
Commit: 5948beeb527c005f2b97e2c8b79e547d93e163bc
https://github.com/llvm/llvm-project/commit/5948beeb527c005f2b97e2c8b79e547d93e163bc
Author: Thurston Dang <thurston at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanningTool.h
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
Log Message:
-----------
Revert "[clang][Dependency Scanning] Fix the In-Memory Buffer Used for By-Name Scanning" (#185150)
Reverts llvm/llvm-project#183396 due to buildbot breakage (e.g.,
https://lab.llvm.org/buildbot/#/builders/55/builds/25102; reported
earlier in
https://github.com/llvm/llvm-project/pull/183396#issuecomment-4015167408)
(Specifically, ASan is allergic to:
```
static const std::string
FakeInput(" ",
clang::tooling::CompilerInstanceWithContext::MaxNumOfQueries);
```)
Commit: 13cb586a41c0417cea87080baf1b00eeb19fca87
https://github.com/llvm/llvm-project/commit/13cb586a41c0417cea87080baf1b00eeb19fca87
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/workitem/clc_get_num_groups.cl
M libclc/opencl/lib/amdgcn-amdhsa/SOURCES
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
Log Message:
-----------
libclc: Reimplement amdhsa get_num_groups (#185006)
Assume v5 ABI, and move handling into clc.
Commit: 71f5e43bc658d89c507867218052917e816c5180
https://github.com/llvm/llvm-project/commit/71f5e43bc658d89c507867218052917e816c5180
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
Log Message:
-----------
[CIR] Fix operator-precedence bugs in assert conditions (#185119)
Due to && binding tighter than ||, asserts of the form
assert(A || B && "msg") always pass when A is true. Add
parentheses so the string message is properly attached:
assert((A || B) && "msg").
Commit: d6b33bda134f933f5ec1b7a948441ab4e98bbb8d
https://github.com/llvm/llvm-project/commit/d6b33bda134f933f5ec1b7a948441ab4e98bbb8d
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
[ubsan_minimal] Build on Solaris (#184976)
Two tests currently `FAIL` on Solaris/amd64 and Solaris/sparcv9:
```
SafeStack-Standalone-i386 :: overflow.c
SafeStack-Standalone-x86_64 :: overflow.c
```
This happens because `libclang_rt.ubsan_minimal.a` isn't built on
Solaris although it's required with `-fsanitize-minimal-runtime`.
This patch fixes this.
Tested on `amd64-pc-solaris2.11` and `sparcv9-sun-solaris2.11`.
Commit: e830ee80063531fdfb1273cc112634b62926c66f
https://github.com/llvm/llvm-project/commit/e830ee80063531fdfb1273cc112634b62926c66f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__vector/vector.h
M libcxx/include/optional
M libcxx/include/string
M libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
Log Message:
-----------
[libc++] Don't double-wrap iterators when bounded iterators are used (#182264)
There is no reason to double-wrap iterators, since we can already
achieve anything we want within `__bounded_iter`itself.
This is technically ABI breaking, but people using bounded iterators
shouldn't require ABI stability currently.
Fixes #178521
Commit: 4d08284157d09ce6104f0753f1dbf5adc43c113d
https://github.com/llvm/llvm-project/commit/4d08284157d09ce6104f0753f1dbf5adc43c113d
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[CMake][LLVM] Align CMAKE_EXPORT_COMPILE_COMMANDS from 1 to ON (#184971)
ON/OFF are more conventional in the project for boolean CMake variables.
Commit: 861b9cacdcda23cc1c610a2f5ab1f8533bb8e621
https://github.com/llvm/llvm-project/commit/861b9cacdcda23cc1c610a2f5ab1f8533bb8e621
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libcxx/include/variant
M libcxx/test/std/utilities/variant/variant.relops/relops.pass.cpp
Log Message:
-----------
[libc++] Fix std::variant comparators not working on recursive instantiations (#182238)
We currently have an instantiation cycle in `variant`'s comparison
operators. This patch fixes that by replacing a `decltype(auto)` with an
explicit return type, removing the requirement to instantiate the
function in order to know the return type.
Fixes #182232
Commit: 500dc0461e32b571dba8b9ffad5141eaf52290ef
https://github.com/llvm/llvm-project/commit/500dc0461e32b571dba8b9ffad5141eaf52290ef
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
A .github/workflows/sycl-tests.yml
R bolt/include/bolt/Passes/ReorderUtils.h
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/ClangDoc.cpp
M clang-tools-extra/clang-doc/ClangDoc.h
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/MDMustacheGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/head-template.mustache
M clang-tools-extra/clang-doc/assets/navbar-template.mustache
M clang-tools-extra/clang-doc/benchmarks/CMakeLists.txt
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/docs/clang-tidy/Contributing.rst
M clang-tools-extra/test/clang-doc/basic-project.mustache.test
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
A clang/docs/ClangIRABILowering.md
M clang/docs/ReleaseNotes.rst
M clang/docs/index.rst
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Sarif.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Analysis/FixitUtil.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Sarif.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/Analysis/lit.local.cfg
M clang/test/CIR/CodeGen/array.cpp
M clang/test/CIR/CodeGen/clear-cache.c
M clang/test/CIR/CodeGen/complex-cast.cpp
M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
M clang/test/CIR/CodeGen/global-array-dtor.cpp
M clang/test/CIR/CodeGen/global-init.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/pack-indexing.cpp
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/CodeGen/thunks.cpp
M clang/test/CIR/CodeGen/try-catch-tmp.cpp
M clang/test/CIR/CodeGen/vtt.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-constant-p.c
A clang/test/CIR/IR/invalid-const-array.cir
A clang/test/CodeGen/bitcast-based-lvalue.c
A clang/test/CodeGen/distributed-thin-lto/pass-plugin.ll
A clang/test/CodeGenCXX/microsoft-abi-diamond-template-multiple-vbptrs.cpp
A clang/test/CodeGenHIP/placement-new-addrspace.hip
A clang/test/CodeGenHIP/sret-nontrivial-copyable.hip
M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
A clang/test/CodeGenHLSL/builtins/mul.hlsl
A clang/test/Frontend/Inputs/expected-sarif/sarif-diagnostics.cpp.sarif
A clang/test/Frontend/Inputs/expected-sarif/sarif-legacy-stable-ids.c.sarif
M clang/test/Frontend/sarif-diagnostics.cpp
A clang/test/Frontend/sarif-legacy-stable-ids.c
A clang/test/Modules/diag-pragma-nonaffecting.cpp
M clang/test/OpenMP/amdgcn_sret_ctor.cpp
M clang/test/Preprocessor/wasm-target-features.c
M clang/test/Sema/attr-overflow-behavior-constexpr.cpp
A clang/test/SemaCUDA/dtor-constexpr-virtual-base.cu
M clang/test/SemaCXX/new-delete.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-parm-unsupported.cpp
A clang/test/SemaHLSL/BuiltIns/mul-errors.hlsl
M clang/test/TableGen/DiagnosticBase.inc
M clang/test/TableGen/deferred-diag.td
M clang/test/lit.cfg.py
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M clang/tools/diagtool/DiagnosticNames.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
M flang-rt/CMakeLists.txt
M flang-rt/README.md
M flang-rt/cmake/modules/AddFlangRTOffload.cmake
M flang-rt/include/flang-rt/runtime/environment.h
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/external-unit.cpp
M flang-rt/lib/runtime/pseudo-unit.cpp
M flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/CMakeLists.txt
M flang/docs/GettingStarted.md
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Lower/LoweringOptions.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Semantics/semantics.h
A flang/include/flang/Support/FPMaxminBehavior.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/LoweringOptions.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Support/CMakeLists.txt
A flang/lib/Support/FPMaxminBehavior.cpp
A flang/test/Driver/ffp-maxmin-behavior.f90
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
A flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
A flang/test/Lower/fp-maxmin-behavior.f90
M flang/test/Lower/location.f90
M flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
M flang/tools/bbc/bbc.cpp
M flang/tools/tco/tco.cpp
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/workitem/clc_get_num_groups.cl
M libclc/opencl/lib/amdgcn-amdhsa/SOURCES
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/include/__functional/function.h
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__type_traits/strip_signature.h
M libcxx/include/__vector/vector.h
M libcxx/include/future
M libcxx/include/optional
M libcxx/include/string
M libcxx/include/variant
M libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
M libcxx/test/std/utilities/variant/variant.relops/relops.pass.cpp
M lld/ELF/LTO.cpp
M lld/MachO/LTO.cpp
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Commands/CommandObjectType.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/EmulateInstruction.cpp
M lldb/source/Core/Highlighter.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/DataFormatters/FormatManager.cpp
M lldb/source/Expression/REPL.cpp
M lldb/source/Host/windows/ProcessLauncherWindows.cpp
M lldb/source/Host/windows/PseudoConsole.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
R lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Symbol/ObjectContainer.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Symbol/SaveCoreOptions.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolVendor.cpp
M lldb/source/Symbol/TypeSystem.cpp
M lldb/source/Target/ABI.cpp
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/JITLoader.cpp
M lldb/source/Target/Language.cpp
M lldb/source/Target/LanguageRuntime.cpp
M lldb/source/Target/MemoryHistory.cpp
M lldb/source/Target/OperatingSystem.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SyntheticFrameProvider.cpp
M lldb/source/Target/SystemRuntime.cpp
M lldb/source/Target/UnwindAssembly.cpp
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/Makefile
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/MyStringFormatter.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/TestSyntheticOneLineSummaries.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/main.c
R lldb/test/API/symstore/Makefile
R lldb/test/API/symstore/TestSymStoreLocal.py
R lldb/test/API/symstore/main.c
M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
M lldb/unittests/Core/PluginManagerTest.cpp
M llvm/CMakeLists.txt
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
M llvm/include/llvm/LTO/Config.h
M llvm/include/llvm/Support/DivisionByConstantInfo.h
M llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/lib/CodeGen/IfConversion.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/Support/DivisionByConstantInfo.cpp
M llvm/lib/Support/JSON.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/A15SDOptimizer.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMCallLowering.cpp
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/ARMParallelDSP.cpp
M llvm/lib/Target/ARM/ARMSLSHardening.cpp
M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp
M llvm/lib/Target/ARM/MLxExpansionPass.cpp
M llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/lib/Target/ARM/MVETailPredication.cpp
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVMacroFusion.td
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/bf16-imm.ll
M llvm/test/CodeGen/AArch64/f16-imm.ll
M llvm/test/CodeGen/AArch64/fabs-combine.ll
M llvm/test/CodeGen/AArch64/fdiv-const.ll
M llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
M llvm/test/CodeGen/AArch64/half-precision-signof-no-assert.ll
M llvm/test/CodeGen/AArch64/isinf.ll
M llvm/test/CodeGen/AArch64/known-never-nan.ll
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
A llvm/test/CodeGen/AArch64/udiv-const-optimization.ll
M llvm/test/CodeGen/AArch64/urem-lkk.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn-exp.mir
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
A llvm/test/CodeGen/AMDGPU/asyncmark-waitcnt.mir
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
A llvm/test/CodeGen/DirectX/matrix-multiply.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/CodeGen/RISCV/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
M llvm/test/CodeGen/RISCV/macro-fusions.mir
M llvm/test/CodeGen/RISCV/rv32p.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
A llvm/test/CodeGen/RISCV/udiv-const-optimization.ll
M llvm/test/CodeGen/RISCV/urem-lkk.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/SPV_ALTERA_arbitrary_precision_integers.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_integers.ll
M llvm/test/CodeGen/WebAssembly/export-name.ll
M llvm/test/CodeGen/WebAssembly/import-module.ll
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
M llvm/test/CodeGen/X86/andnot-sink-not.ll
M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
M llvm/test/CodeGen/X86/known-never-zero.ll
A llvm/test/CodeGen/X86/udiv-const-optimization.ll
M llvm/test/CodeGen/X86/urem-lkk.ll
M llvm/test/Instrumentation/AddressSanitizer/basic-msvc64.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
A llvm/test/MC/Hexagon/reloc-directive.s
M llvm/test/MC/WebAssembly/export-name-invalid.s
M llvm/test/MC/WebAssembly/export-name.s
M llvm/test/MC/WebAssembly/import-module-invalid.s
M llvm/test/MC/WebAssembly/import-module.s
M llvm/test/MC/WebAssembly/import-name-invalid.s
M llvm/test/TableGen/MacroFusion.td
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
A llvm/test/Transforms/LoopVectorize/VPlan/interleave-conditional-scalar-assignment-vplan.ll
M llvm/test/Transforms/LoopVectorize/VPlan/tail-folding.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/Reassociate/reassociate-decrement-dbgvalue.ll
M llvm/tools/dsymutil/DebugMap.cpp
M llvm/tools/dsymutil/DebugMap.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
M llvm/unittests/Support/JSONTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M mlir/include/mlir/Dialect/Index/IR/IndexOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
A mlir/include/mlir/Dialect/UB/IR/UBMatchers.h
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/IR/Operation.h
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/lib/IR/Operation.cpp
M mlir/lib/Tools/mlir-reduce/MlirReduceMain.cpp
M mlir/test/CAPI/irdl.c
M mlir/test/Dialect/GPU/shuffle-rewrite.mlir
M mlir/test/Dialect/GPU/sparse-roundtrip.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_spgemm_lib.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
M mlir/test/IR/array-of-attr.mlir
M mlir/test/IR/test-matchers.mlir
M mlir/test/IR/test-symbol-uses.mlir
A mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops-invalid.mlir
M mlir/test/Transforms/inlining.mlir
M mlir/test/lib/Dialect/Test/TestDialectInterfaces.cpp
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/IR/TestMatchers.cpp
M mlir/test/lib/IR/TestSymbolUses.cpp
R mlir/test/mlir-reduce/crashop-reduction.mlir
R mlir/test/mlir-reduce/multiple-function.mlir
A mlir/test/mlir-reduce/reduction-tree.mlir
M mlir/test/mlir-tblgen/attr-or-type-format-roundtrip.mlir
M mlir/test/mlir-tblgen/attr-or-type-format.td
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
M mlir/unittests/IR/OperationSupportTest.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Merge branch 'main' into users/arsenm/libclc/implement-linear-ids
Compare: https://github.com/llvm/llvm-project/compare/337c6f916da9...500dc0461e32
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