[all-commits] [llvm/llvm-project] d7e037: Revert "[VPlan] Remove manual region removal when ...
Florian Mayer via All-commits
all-commits at lists.llvm.org
Tue Mar 3 09:27:23 PST 2026
Branch: refs/heads/users/fmayer/spr/main.nfc-hwasan-more-meaningful-bb-names-in-use-after-scope-test
Home: https://github.com/llvm/llvm-project
Commit: d7e037c8383e66e5c07897f144f6d8ef47258682
https://github.com/llvm/llvm-project/commit/d7e037c8383e66e5c07897f144f6d8ef47258682
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/mul-simplification.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs-apple.ll
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vector-loop-backedge-elimination-with-evl.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
M llvm/test/Transforms/LoopVectorize/reduction-minmax-users-and-predicated.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
Log Message:
-----------
Revert "[VPlan] Remove manual region removal when simplifying for VF and UF. (#181252)"
This reverts commit 9c53215d213189d1f62e8f6ee7ba73a089ac2269.
Appears to cause crashes with ordered reductions, revert while I
investigate
Commit: cdd4313183184e0741cce3b425779fcce16cc39b
https://github.com/llvm/llvm-project/commit/cdd4313183184e0741cce3b425779fcce16cc39b
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
Log Message:
-----------
[mlir][LLVM] Let decomposeValue/composeVale pad out larger types (#183825)
Currently, as pointed out in the reviews for #183405, decomposeValues
and composeValues should be able to emit zexts and truncations for cases
like i48 and vector<3xi16> becoming i32s but currently that's an assert.
This commit fixes that limitation.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 8f268e63e484106f25e2a5740c8a38b587218387
https://github.com/llvm/llvm-project/commit/8f268e63e484106f25e2a5740c8a38b587218387
Author: Hansang Bae <hansang.bae at intel.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M offload/plugins-nextgen/level_zero/include/L0Program.h
Log Message:
-----------
[Offload] Remove unused data type (#183840)
Commit: 73d655a598d7743a2d415c4c85110c591414a08b
https://github.com/llvm/llvm-project/commit/73d655a598d7743a2d415c4c85110c591414a08b
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
Log Message:
-----------
[VPlan] Support unrolling/cloning masked VPInstructions.
Account for masked VPInstruction when verifying the operands in the
constructor. Fixes a crash when trying to unroll VPlans for predicated
early exits.
Commit: 7ad2c6db54a0e77249f2edb3c589ccf4c930d455
https://github.com/llvm/llvm-project/commit/7ad2c6db54a0e77249f2edb3c589ccf4c930d455
Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOpsInterfaces.td
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Transforms/canonicalize.mlir
Log Message:
-----------
[mlir][arith] Add `exact` to `index_cast{,ui}` (#183395)
The `exact` flag with the following semantics
> If the `exact` attribute is present, it is assumed that the index type
width
> is such that the conversion does not lose information. When this
assumption
> is violated, the result is poison.
can be added to index_cast and index_castui operations. This unlocks
the following lowerings:
* index_cast (signed) exact -> trunc nsw
* index_castui (unsigned) exact -> trunc nuw
* index_castui nneg exact -> trunc nuw nsw
Changes:
* Adds ArithExactFlagInterface.
* Updates Arith_IntBinaryOpWithExactFlag to use ArithExactFlagInterface
* Update IndexCastOp and IndexCastUIOp to declare
`ArithExactFlagInterface`
* Update canonicalization patterns
* Update roundtrip, lowering, and canonicalization tests.
Commit: abbba22f45665b25b01693fc7a41712660b3c124
https://github.com/llvm/llvm-project/commit/abbba22f45665b25b01693fc7a41712660b3c124
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
Log Message:
-----------
[lldb] Add synthetic support to formatter_bytecode.py (#183804)
Updates formatter_bytecode.py to support compilation and disassembly for
synthetic formatters, in other words support for multiple functions
(signatures).
This includes a number of other changes:
* String parsing and encoding have bugs fixed
* CLI args are updated, primarily to support an output file
* Added uleb encoding/decoding support
This work is a prelude the ongoing work of a Python to formatter
bytecode compiler. The python compiler to emit assembly, and this module
(formatter_bytecode) will compile it into binary bytecode.
Commit: c5588becb8dd0c9dd0e81bd29bb39d098f8df572
https://github.com/llvm/llvm-project/commit/c5588becb8dd0c9dd0e81bd29bb39d098f8df572
Author: Jason Molenda <jmolenda at apple.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
M lldb/test/API/lang/cpp/gmodules/basic/TestWithModuleDebugging.py
M lldb/test/API/macosx/add-dsym/TestAddDsymDownload.py
M lldb/test/API/macosx/add-dsym/TestAddDsymMidExecutionCommand.py
Log Message:
-----------
[lldb] Add skip shared build to more API tests
Fixing test failures on my local desktop with incremental
building.
Commit: 0a9b5d52188f96b29cacbfee3bac8e1438035b32
https://github.com/llvm/llvm-project/commit/0a9b5d52188f96b29cacbfee3bac8e1438035b32
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M libcxx/include/__algorithm/find.h
M libcxx/include/__algorithm/find_if.h
M libcxx/include/__algorithm/find_if_not.h
M libcxx/include/__algorithm/ranges_find_if.h
M libcxx/include/__algorithm/ranges_find_if_not.h
M libcxx/include/__algorithm/ranges_remove_if.h
Log Message:
-----------
[libc++] Forward find* algorithms to find_if (#179938)
This propagates any optimizations to the whole family of `find`
functions.
Commit: e35fc30cb8f52a1d5a011649c47760845b5d14c0
https://github.com/llvm/llvm-project/commit/e35fc30cb8f52a1d5a011649c47760845b5d14c0
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
Log Message:
-----------
Fix `BuiltinTypeMethodBuilder` uninitialized pointer (#183814)
>From [this
comment](https://github.com/llvm/llvm-project/pull/176058/changes/BASE..50c5be4bdf19a8a80b7e6e9d3ae46e11ff20a6e0#r2856661750)
on PR #176058, static analysis was flagging `TemplateParams` as not
initialized on all paths. This change fixes it by initializing to
`nullptr` at declaration.
Commit: 788625757ea4a7de562461dfea9b7a59b050ec91
https://github.com/llvm/llvm-project/commit/788625757ea4a7de562461dfea9b7a59b050ec91
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
Log Message:
-----------
[NFC] Fix use-after-free: track TargetLibraryAnalysis in BasicAAResult invalidation (#183852)
`BasicAAResult` holds a reference to `TargetLibraryInfo` but its
`invalidate()` function did not check `TargetLibraryAnalysis`. When the
pass manager destroyed and re-created `TLI` (e.g. during `CGSCC`
invalidation or `FAM.clear()`), `BasicAAResult` survived with a dangling
`TLI` reference.
This was exposed by #157495 which added `aliasErrno()`, the first code
path that dereferences `TLI` from `BasicAAResult` during the `CGSCC`
pipeline, causing a AV when compiling Rust's core library on Arm64
Windows.
This change adds `TargetLibraryAnalysis` to the invalidation check so
`BasicAAResult` is properly invalidated when its `TLI` reference becomes
stale.
Commit: 329c52c1004f2d0f487577f73387c8dd8b47fd9a
https://github.com/llvm/llvm-project/commit/329c52c1004f2d0f487577f73387c8dd8b47fd9a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M lldb/include/lldb/Host/HostInfoBase.h
M lldb/include/lldb/Host/aix/HostInfoAIX.h
M lldb/include/lldb/Host/linux/HostInfoLinux.h
M lldb/include/lldb/Host/windows/HostInfoWindows.h
M lldb/include/lldb/Initialization/SystemInitializerCommon.h
M lldb/source/API/SystemInitializerFull.cpp
M lldb/source/Host/aix/HostInfoAIX.cpp
M lldb/source/Host/common/HostInfoBase.cpp
M lldb/source/Host/linux/HostInfoLinux.cpp
M lldb/source/Host/windows/HostInfoWindows.cpp
M lldb/source/Initialization/SystemInitializerCommon.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/tools/lldb-mcp/lldb-mcp.cpp
M lldb/tools/lldb-server/SystemInitializerLLGS.h
M lldb/tools/lldb-test/SystemInitializerTest.cpp
Log Message:
-----------
[lldb] Change the way the shlib directory helper is set (#183637)
This PR changes the way we set the shlib directory helper. Instead of
setting it while initializing the Host plugin, we register it when
initializing the Python plugin. The motivation is that the current
approach is incompatible with the dynamically linked script
interpreters, as they will not have been loaded at the time the Host
plugin is initialized.
The downside of the new approach is that we set the helper after having
initialized the Host plugin, which theoretically introduces a small
window where someone could query the helper before it has been set.
Fortunately the window is pretty small and limited to when we're
initializing plugins, but it's less "pure" than what we had previously.
That said, I think it balances out with removing the plugin include.
Commit: 07891ab5901cb25ac47afa99ead9eafea4d1cf2c
https://github.com/llvm/llvm-project/commit/07891ab5901cb25ac47afa99ead9eafea4d1cf2c
Author: Eric Christopher <echristo at gmail.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[cmake] Disable -Wdangling-pointer on GCC 12+ (#183593)
GCC 12 started warning on the RAII DAGUpdateListener pattern in
SelectionDAG.h (storing `this` in the constructor). It's a false
positive -- suppress it the same way we handle -Wno-dangling-reference
(GCC 13+) and -Wno-stringop-overread (GCC 11+).
Commit: c78f37fdebd852f567e6380382a8eda8a28f382f
https://github.com/llvm/llvm-project/commit/c78f37fdebd852f567e6380382a8eda8a28f382f
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/test/CIR/CodeGen/cleanup.cpp
M clang/test/CIR/CodeGen/coro-task.cpp
M clang/test/CIR/CodeGen/defaultarg.cpp
M clang/test/CIR/CodeGen/dtors.cpp
M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
M clang/test/CIR/CodeGen/stmt-expr.cpp
M clang/test/CIR/CodeGen/struct.cpp
Log Message:
-----------
[CIR] Fix dominance problems with values defined in cleanup scopes (#183810)
We currently encounter dominance verification errors when a value is
defined inside a cleanup scope but used outside the scope. This occurs
when forceCleanup() is used to exit a cleanup scope while a variable is
holding a value that was created in the scope body. Classic codegen
solved this problem by passing a list of values to spill and reload to
forceCleanup(). This change implements that same solution for CIR.
I have also aligned the ScalarExprEmitter::VisitExprWithCleanups
implementation with that of classic codegen, eliminating an extra
lexical scope. This causes temporary allocas to be created at the next
higher existing lexical scope, but I think that's OK since they would be
hoisted there anyway by a later pass.
Commit: dc520a5f493aac270315304be10b9b8bc5119dfe
https://github.com/llvm/llvm-project/commit/dc520a5f493aac270315304be10b9b8bc5119dfe
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/GPU/value-bounds-op-interface-impl.mlir
Log Message:
-----------
[mlir][GPU] Add ValueBoundsOphinterface to gpu.subgroup_broadcast (#183848)
This commit adds an ValueBoundsOpInterface to gpu.subgroup_broadcast,
matching its integer range interface implementation, so that affine
analysis can peek through subgroup broadcast ops.
Commit: 136ba6e208b2b670e999ce77c2b4c85771a0bdf2
https://github.com/llvm/llvm-project/commit/136ba6e208b2b670e999ce77c2b4c85771a0bdf2
Author: Ankit Aggarwal <aankit at qti.qualcomm.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M clang/lib/Basic/Targets/Hexagon.cpp
M clang/lib/Basic/Targets/Hexagon.h
M clang/test/Preprocessor/hexagon-predefines.c
Log Message:
-----------
[Hexagon] Define __HVX_IEEE_FP__ when -mhvx-ieee-fp is enabled (#183829)
Add a __HVX_IEEE_FP__ define when the compiler is invoked with
-mhvx-ieee-fp flag
Commit: e3c045415ae52167e197d4a6ed4ad5a04e49423a
https://github.com/llvm/llvm-project/commit/e3c045415ae52167e197d4a6ed4ad5a04e49423a
Author: Johannes de Fine Licht <johannes.definelicht at nextsilicon.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/cmake/modules/AddClang.cmake
M llvm/cmake/modules/AddLLVM.cmake
M mlir/cmake/modules/AddMLIR.cmake
Log Message:
-----------
[CMake] Propagate dependencies to OBJECT libraries in `add_llvm_library` (#183541)
Previously, transitively inherited calls to
`target_include_directories(foo SYSTEM ...)` were being squashed into a
flat list of includes, effectively stripping off `-isystem` and
unintentionally forwarding warnings from such dependencies.
To correctly propagate `SYSTEM` dependencies, use
`target_link_libraries` to forward the parent target's link dependencies
to the OBJECT library (similar to the `_static` flow below). Unlike a
flat `target_include_directories`, this lets CMake resolve transitive
SYSTEM include directories through the proper dependency chain.
Note that `target_link_libraries` on an OBJECT library propagates all
usage requirements, not just includes. This also brings in transitive
`INTERFACE_COMPILE_DEFINITIONS`, `INTERFACE_COMPILE_OPTIONS`, and
`INTERFACE_COMPILE_FEATURES`. This is arguably more correct, as the
OBJECT library compiles the same sources and should see the same flags.
The existing `target_include_directories` call is retained for include
directories set directly on the target (not through link dependencies).
CMake deduplicates include directories that appear through both paths.
Compile definitions and options may technically appear twice (once via
the OBJECT library, once via the consuming target), but duplicate `-D`
and flag entries should be harmless in practice.
Also fix `clang_target_link_libraries` and `mlir_target_link_libraries`
to forward the link type (PUBLIC/PRIVATE/INTERFACE) to `obj.*` targets.
Previously the type keyword was silently dropped, resulting in
plain-signature `target_link_libraries` calls. This is now required
because the new keyword-signature call in `llvm_add_library` would
otherwise conflict (CMake requires all calls on a target to use the same
signature).
Commit: fd9421cccd0bc11b312485542cfc7e88b4d3c7b5
https://github.com/llvm/llvm-project/commit/fd9421cccd0bc11b312485542cfc7e88b4d3c7b5
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
Log Message:
-----------
[lldb] Fix sys.path manipulation failure in formatter_bytecode.py (#183868)
Fix bug in #183804.
Commit: 12e1075b6495a448fd985bfad1c35382aa0e0e42
https://github.com/llvm/llvm-project/commit/12e1075b6495a448fd985bfad1c35382aa0e0e42
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/bv-root-part-of-graph.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-node-with-non-schedulable-parent.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-vectorize-gathered-def-after-use.ll
M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
Log Message:
-----------
[SLP]Fix operand reordering when estimating profitability of operands
Need to swap operand for a single instruction, not for the the same lane
of the first and second instruction in the list
Commit: 795cfaea9cc8a812f5dace400d13d879b825e42c
https://github.com/llvm/llvm-project/commit/795cfaea9cc8a812f5dace400d13d879b825e42c
Author: Ayokunle Amodu <ayokunle321 at gmail.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
R clang/test/CIR/CodeGen/address-of.cpp
R clang/test/CIR/CodeGen/builtin-bit-cast.cpp
R clang/test/CIR/CodeGen/builtin-floating-point.c
R clang/test/CIR/CodeGen/builtin-memchr.c
R clang/test/CIR/CodeGen/builtins-elementwise.c
R clang/test/CIR/CodeGen/object-size.c
R clang/test/CIR/CodeGen/object-size.cpp
R clang/test/CIR/CodeGen/offset-of.cpp
R clang/test/CIR/CodeGen/pred-info-builtins.c
A clang/test/CIR/CodeGenBuiltins/builtin-address-of.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-bit-cast.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-bit.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-call.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-inline.c
A clang/test/CIR/CodeGenBuiltins/builtin-memchr.c
A clang/test/CIR/CodeGenBuiltins/builtin-new-delete.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-object-size.c
A clang/test/CIR/CodeGenBuiltins/builtin-object-size.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-offset-of.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-prefetch.c
A clang/test/CIR/CodeGenBuiltins/builtin-printf.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_bit.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_inline.c
R clang/test/CIR/CodeGenBuiltins/builtin_new_delete.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_prefetch.c
R clang/test/CIR/CodeGenBuiltins/builtin_printf.cpp
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
M clang/test/CIR/CodeGenBuiltins/builtins-floating-point.c
A clang/test/CIR/CodeGenBuiltins/builtins-pred-info.c
Log Message:
-----------
[CIR][NFC] Move some builtin tests to the CodeGenBuitins folder (#183607)
This moves a few tests that were created in the wrong location. Also
changes the names of some test files to maintain consistency.
Commit: 342e44603dc2a3a44820f93b4d974af03c3ff68a
https://github.com/llvm/llvm-project/commit/342e44603dc2a3a44820f93b4d974af03c3ff68a
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitcnts] Move VCCZ workaround code out of the way (#182619)
This is a cleanup patch that moves the VCCZ specific workaround code
from `SIInsertWaitcnts::insertWaitcntInBlock()` to a separate class and
refactors it a bit to make it easier to read.
The end result is a simpler `insertWaitcntInBlock()`.
Should be NFC.
Commit: 5395d2668968742043c2c0e47796930a63cd6bbf
https://github.com/llvm/llvm-project/commit/5395d2668968742043c2c0e47796930a63cd6bbf
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp
Log Message:
-----------
Revert "[WebAssembly] Incorporate SCCs into WebAssemblyFixIrreducibleControlFlow (#181755)" (#183872)
This reverts commit c05e323be7caaadff6fdd09a2336be60e3041af1.
Changes failed Emscripten tests.
Commit: 8bd8d8e6debe81bbffde1543921150503d012b65
https://github.com/llvm/llvm-project/commit/8bd8d8e6debe81bbffde1543921150503d012b65
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
Log Message:
-----------
[AMDGPU] Remove extra pipes from load-saddr-offset-imm.ll (#183874)
This test uses opt to run instcombin and then pipes that into llc which
has its output piped into FileCheck. Before this patch, the test also
piped in the source file into llc as well, which caused issues with a
downstream test executor that executes the lines in bash. However, these
extra pipes don't make sense anyways, so remove them.
Commit: fb6b470caedc37c880b5112bd1c85be5f55e9114
https://github.com/llvm/llvm-project/commit/fb6b470caedc37c880b5112bd1c85be5f55e9114
Author: Mohamed Emad <hulxxv at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/floor.h
A libc/shared/math/floorbf16.h
A libc/shared/math/floorf.h
A libc/shared/math/floorf128.h
A libc/shared/math/floorf16.h
A libc/shared/math/floorl.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/floor.h
A libc/src/__support/math/floorbf16.h
A libc/src/__support/math/floorf.h
A libc/src/__support/math/floorf128.h
A libc/src/__support/math/floorf16.h
A libc/src/__support/math/floorl.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/floor.cpp
M libc/src/math/generic/floorbf16.cpp
M libc/src/math/generic/floorf.cpp
M libc/src/math/generic/floorf128.cpp
M libc/src/math/generic/floorf16.cpp
M libc/src/math/generic/floorl.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor floor family to header-only (#182194)
Refactors the floor math family to be header-only.
Closes https://github.com/llvm/llvm-project/issues/182193
Target Functions:
- floor
- floorbf16
- floorf
- floorf128
- floorf16
- floorl
Commit: 62cfe1659edff8874f2d814ee356cfc9199f62d5
https://github.com/llvm/llvm-project/commit/62cfe1659edff8874f2d814ee356cfc9199f62d5
Author: Mohamed Emad <hulxxv at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/shared/math.h
A libc/shared/math/acospif.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/acospif.h
M libc/src/__support/math/asinpif.h
M libc/src/__support/math/inv_trigf_utils.h
M libc/src/math/CMakeLists.txt
A libc/src/math/acospif.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/acospif.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/acospif_test.cpp
M libc/test/src/math/asinpif_test.cpp
M libc/test/src/math/exhaustive/CMakeLists.txt
A libc/test/src/math/exhaustive/acospif_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/acospif_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math][c23] implement C23 `acospif` math function (#183661)
Implementing C23 `acospi` math function for single-precision with the
header-only approach that is followed since #147386
Commit: 5f22decefac061c6e1e01804d46669a8c3ebc06c
https://github.com/llvm/llvm-project/commit/5f22decefac061c6e1e01804d46669a8c3ebc06c
Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/SemaCXX/builtins-elementwise-math.cpp
M libclc/clc/lib/generic/math/clc_fdim.inc
Log Message:
-----------
Clang: Deprecate float support from __builtin_elementwise_max (#180885)
Now we have
__builtin_elementwise_maxnum
__builtin_elementwise_maximum
__builtin_elementwise_maximumnum
Commit: 6f9c68d32074162304f27d38e69f4de4cd26ab50
https://github.com/llvm/llvm-project/commit/6f9c68d32074162304f27d38e69f4de4cd26ab50
Author: Luke Lau <luke at igalia.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/fixed-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions-tf.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-fold-uniform-memops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing.ll
Log Message:
-----------
[VPlan] Don't adjust trip count for DataAndControlFlowWithoutRuntimeCheck (#183729)
Previously, the canonical IV increment may have overflowed to a non-zero
value due to vscale being a non power-of-two. So we used to emit a
runtime check for this.
If you didn't want the runtime check,
DataAndControlFlowWithoutRuntimeCheck skipped it and instead tweaked the
trip count so it wouldn't overflow.
However #144963 stopped the check from ever being emitted because vscale
is always a power-of-two on AArch64 and RISC-V, so it never overflowed
to a non-zero value. And in #183292 the code to emit the check was
removed. But we never restored the trip count back to normal when the
target's vscale was a power-of-two.
Now that vscale is always a power-of-two, this PR avoids adjusting it. A
follow up NFC can then remove DataAndControlFlowWithoutRuntimeCheck.
Commit: 0b88ee12dd88cb27275750406364fad014d87d65
https://github.com/llvm/llvm-project/commit/0b88ee12dd88cb27275750406364fad014d87d65
Author: David Rivera <davidriverg at gmail.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/lib/CIR/CodeGen/Address.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/CodeGen/TargetInfo.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/IR/address-space.cir
M clang/test/CIR/IR/invalid-addrspace.cir
Log Message:
-----------
[CIR] Infrastructure and MemorySpaceAttrInterface for Address Spaces (#179073)
Related: https://github.com/llvm/llvm-project/issues/175871,
https://github.com/issues/assigned?issue=llvm%7Cllvm-project%7C179278,
https://github.com/issues/assigned?issue=llvm%7Cllvm-project%7C160386
- Introducing the LangAddressSpace enum with offload address space kinds
(offload_private, offload_local, offload_global, offload_constant,
offload_generic) and the LangAddressSpaceAttr attribute.
- Generalizes CIR AS attributes as MemorySpaceAttrInterface and Attaches
it to `PointerType`. Includes test coverage for valid IR roundtrips and
invalid address space parsing.
This starts a series of patches with the purpose of bringing complete
address spaces support features for CIR. Most of the test coverage is
provided in subsequent patches further down the stack. note that most of
these patches are based on: https://github.com/llvm/clangir/pull/1986
Commit: d72e95bab071ef4f7f45ab3c4e47047325d50333
https://github.com/llvm/llvm-project/commit/d72e95bab071ef4f7f45ab3c4e47047325d50333
Author: Akimasa Watanuki <mencotton0410 at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl
Log Message:
-----------
[CIR] Use `-verify` on clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl (#182817)
Update clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl to use
`-verify` with expected CIR NYI diagnostics.
Commit: fe76e9004b5bcc50dc5410910350f97f05db8984
https://github.com/llvm/llvm-project/commit/fe76e9004b5bcc50dc5410910350f97f05db8984
Author: SharonXSharon <xiaoranxu.nju at gmail.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
A llvm/test/CodeGen/X86/code_placement_ext_tsp_size_and_perf.ll
Log Message:
-----------
[CodeGen] Allow `-enable-ext-tsp-block-placement` and `-apply-ext-tsp-for-size` passed together (#183642)
Currently, the asserts fires when both `UseExtTspForPerf` and
`UseExtTspForSize` are true on a given function.
Ideally, we should allow `-enable-ext-tsp-block-placement` and
`-apply-ext-tsp-for-size` passed together, meaning run the block
placement for performance on hot functions, while run the placement for
size on cold functions.
The diff makes `UseExtTspForPerf` and `UseExtTspForSize` mutually
exclusive per-function: functions with the `OptForSize` attribute use
ext-tsp block placement for size, while the others use ext-tsp block
placement for perf.
Co-authored-by: Sharon Xu <sharonxu at fb.com>
Commit: ce6a3d98cc3e208e8a4014b7812515951bf048ce
https://github.com/llvm/llvm-project/commit/ce6a3d98cc3e208e8a4014b7812515951bf048ce
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-module.cpp
Log Message:
-----------
[clang-tidy] Teach `misc-unused-using-decls` that exported using-decls aren't unused (#183638)
Fixes #162619.
Commit: bed89970c3df5e755820708580e405f65ddaa1ba
https://github.com/llvm/llvm-project/commit/bed89970c3df5e755820708580e405f65ddaa1ba
Author: Fangrui Song <i at maskray.me>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
M lld/test/ELF/aarch64-branch-to-branch.s
M lld/test/ELF/aarch64-feature-bti.s
M lld/test/ELF/aarch64-funcinit64-invalid.s
M lld/test/ELF/aarch64-funcinit64.s
M lld/test/ELF/aarch64-range-thunk-extension-plt32.s
M lld/test/ELF/aarch64-reloc-gotpcrel32.s
M lld/test/ELF/aarch64-reloc-plt32.s
M lld/test/ELF/aarch64-undefined-weak.s
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h
M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
M llvm/test/MC/AArch64/data-directive-specifier.s
M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
Log Message:
-----------
AArch64: Replace @plt/%gotpcrel in data directives with %pltpcrel %gotpcrel (#155776)
Similar to #132569 for RISC-V, replace the unofficial `@plt` and
`@gotpcrel` relocation specifiers, currently only used by clang
-fexperimental-relative-c++-abi-vtables, with %pltpcrel %gotpcrel. The
syntax is not used in humand-written assembly code, and is not supported
by GNU assembler.
Also replace the recent `@funcinit` with `%funcinit(x)`.
Commit: 27d654c4c4e6eb7c19e46af20500200e793da7c7
https://github.com/llvm/llvm-project/commit/27d654c4c4e6eb7c19e46af20500200e793da7c7
Author: Son Tuan Vu <sontuavu at amd.com>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir
Log Message:
-----------
[AMDGPU] Fix piggybacking after commute in AMDGPULowerVGPREncoding (#183778)
After successfully commuting an instruction to be compatible with the
current VGPR MSB mode, update CurrentMode with the commuted
instruction's mode requirements. This locks in the mode bits the
commuted instruction relies on, preventing later instructions from
piggybacking and corrupting those bits.
Without this fix, a subsequent instruction needing a different mode
could piggyback onto the preceding s_set_vgpr_msb and change mode bits
that the commuted instruction depends on. For example, a nullopt src1
position (treated as 0) could be overwritten to a different value,
causing incorrect register encoding for the commuted instruction.
The fix still allows compatible piggybacking - instructions that only
add new mode bits without changing existing ones can still piggyback.
Commit: 3b30dcddd97355ee36f13c5e2ca56c1d6f137b7a
https://github.com/llvm/llvm-project/commit/3b30dcddd97355ee36f13c5e2ca56c1d6f137b7a
Author: Fangrui Song <i at maskray.me>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/reloc-section-sym.c
A clang/test/Misc/cc1as-reloc-section-sym.s
M clang/tools/driver/cc1as_main.cpp
Log Message:
-----------
[Driver] Add -Wa,--reloc-section-sym= to control section symbol conversion (#183472)
Wire the llvm-mc --reloc-section-sym={all,internal,none} option through
the clang driver (-Wa,--reloc-section-sym=) and cc1as
(--reloc-section-sym=). The option is only valid for ELF targets.
GNU Assembler will add the option as well.
Commit: 702e4ec5f705ccf72ecbf31301a364e8b2664843
https://github.com/llvm/llvm-project/commit/702e4ec5f705ccf72ecbf31301a364e8b2664843
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/test/API/macosx/delay-init-dependency/TestDelayInitDependency.py
Log Message:
-----------
[lldb/test] Skip TestDelayInitDependency on remote platforms (#183885)
This test exercises macOS-specific linker functionality (-delay_library)
and uses a hardcoded local working directory for the launch info. It
should not run against a remote platform where neither condition holds.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 1ff1e5f10a5c765b4cf1344c4964604dcd09fef3
https://github.com/llvm/llvm-project/commit/1ff1e5f10a5c765b4cf1344c4964604dcd09fef3
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
Log Message:
-----------
InstCombine: Stop applying nofpclass from use nofpclass attribute (#183835)
Functionally reverts a80d4329ce96856a02bd279c800c3d08619da4c9, with new
test.
This should be applied somewhere, but this is the wrong place.
Fixes regression reported after #182444
Commit: 55f9cf33fc14878d22415735cc1116925d9e79b3
https://github.com/llvm/llvm-project/commit/55f9cf33fc14878d22415735cc1116925d9e79b3
Author: Fangrui Song <i at maskray.me>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
Log Message:
-----------
RISCVMCAsmInfo: Remove redundant `UseAtForSpecifier = false`. NFC (#183890)
UseAtForSpecifier defaults to false in MCAsmInfo, and RISCVMCAsmInfo
never calls initializeAtSpecifiers (which sets it to true).
Commit: ab2908ed21e7d45793fb6128543f4494f5c42c66
https://github.com/llvm/llvm-project/commit/ab2908ed21e7d45793fb6128543f4494f5c42c66
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-fold-tail.ll
A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-group-requires-scalar-epilogue.ll
A llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory-live-outs.ll
Log Message:
-----------
[LV] Add tail-folding & required scalar epilogue tests for IG narrowing.
Add additional tests to cover missing code paths when narrowing
interleave groups:
* tail-folding
* interleave-groups that require a scalar iteration.
Commit: c40b0b2235e5bfe600304fa4087e002b1a2f0908
https://github.com/llvm/llvm-project/commit/c40b0b2235e5bfe600304fa4087e002b1a2f0908
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
M llvm/test/tools/llvm-dwarfdump/X86/verify_unit_header_chain.s
M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5_invalid.s
M llvm/test/tools/llvm-symbolizer/split-dwarf-dwp-invalid.test
Log Message:
-----------
[llvm][DebugInfo] Bump DWARFContext maximum DWARF version (#183838)
In order to start testing DWARFv6 feature support we need to bump this
version for tooling to work.
This does not mean we officially support DWARFv6. It just enables us
testing the features gradually.
Commit: ce3460e002727a226ef6c2c3e29a978fb1823ad7
https://github.com/llvm/llvm-project/commit/ce3460e002727a226ef6c2c3e29a978fb1823ad7
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
Log Message:
-----------
[llvm][DebugInfo] Bump DWARFDebugLine maximum DWARF version (#183841)
Bumps `.debug_line` maximum supported version to DWARFv6.
This does not mean we officially support DWARFv6. It just enables us
testing the features gradually.
Commit: 8f0928252bbe0a541cb9072a9504651d53e0d9dc
https://github.com/llvm/llvm-project/commit/8f0928252bbe0a541cb9072a9504651d53e0d9dc
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp
M llvm/unittests/DebugInfo/DWARF/DWARFListTableTest.cpp
Log Message:
-----------
[llvm][DebugInfo] Bump DWARFListTable maximum DWARF version (#183859)
Bumps `.debug_rnglists` maximum supported version to DWARFv6.
This does not mean we officially support DWARFv6. It just enables us
testing the features gradually.
Added unit-test since there was no prior test in the entire LLVM
test-suite that checked this.
Commit: 9b1f7845227e48d71f206172f628bd2b1ebf2d1f
https://github.com/llvm/llvm-project/commit/9b1f7845227e48d71f206172f628bd2b1ebf2d1f
Author: David Green <david.green at arm.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMInstrMVE.td
M llvm/test/CodeGen/Thumb2/mve-sli-sri.ll
Log Message:
-----------
[ARM][MVE] Add SLI and SRI recognition. (#183471)
This uses the newly added code from #182051 to optimize to MVE sli and
sri. The only major difference is the legal types supported, but we also
lower intrinsics via VSLIIMM/VSLIIMM, so that only one tablegen pattern
is needed.
Commit: 3403aac734189ae9d36695f3f8d12bd61f3678ea
https://github.com/llvm/llvm-project/commit/3403aac734189ae9d36695f3f8d12bd61f3678ea
Author: Harald van Dijk <hdijk at accesssoftek.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Analysis/CMakeLists.txt
Log Message:
-----------
[CMake][LLVM] Disable PCH on Clang for file with custom flags too (#183813)
Precompiled headers are already skipped when building ConstantFolding.cpp with MSVC, they cause problems with Clang too so disable it there the same way.
Commit: b2c92bca2e6636c62c49719defd4f4e3df6b7ab1
https://github.com/llvm/llvm-project/commit/b2c92bca2e6636c62c49719defd4f4e3df6b7ab1
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/test/MC/ARM/dwarf-asm-multiple-sections.s
M llvm/test/MC/ELF/gen-dwarf.s
M llvm/tools/llvm-mc/llvm-mc.cpp
Log Message:
-----------
[llvm-mc][dwarf] Bump supported version to DWARF 6 (#183779)
Depends on:
* https://github.com/llvm/llvm-project/pull/183838
* https://github.com/llvm/llvm-project/pull/183841
* https://github.com/llvm/llvm-project/pull/183859
Bumps the supported version to 6. Unit header layout hasn't changed
between versions AFAIK, so re-used the DWARF5 `FileCheck` in the test.
This by no means claims full DWARFv6 support, but is handy for testing
DWARFv6 features while full support is being gradually implemented.
Commit: c8e211c2a8b23b7bed4fb6b76bd441caa44973de
https://github.com/llvm/llvm-project/commit/c8e211c2a8b23b7bed4fb6b76bd441caa44973de
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir][tensor] Fix crash in expand_shape fold with dynamic result type (#183785)
`foldReshapeOp` (in `ReshapeOpsUtils.h`) and `FoldReshapeWithConstant`
(in `TensorOps.cpp`) both tried to create a new `DenseElementsAttr`
constant when folding a reshape op whose operand is a constant. Neither
checked that the result type was statically shaped before doing so, but
`DenseElementsAttr::reshape()` and
`DenseElementsAttr::getFromRawBuffer()` both assert `hasStaticShape()`.
Guard both fold paths with a `hasStaticShape()` check so they return
early when the result type contains a dynamic dimension.
Fixes #177845
Commit: 7370091a43e5cbcb4cf56fb83b62e056903cb918
https://github.com/llvm/llvm-project/commit/7370091a43e5cbcb4cf56fb83b62e056903cb918
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/test/IR/visitors.mlir
M mlir/test/lib/IR/TestVisitors.cpp
Log Message:
-----------
[mlir][test-ir-visitors] Fix noSkipBlockErasure crash with block args used across blocks (#183828)
The noSkipBlockErasure callback in TestVisitors.cpp dropped uses of op
results within the same region before erasing a block, but did not drop
uses of the block's own arguments (e.g. function entry block arguments).
When the block was subsequently erased its block arguments were
destroyed while their use-lists were still non-empty, triggering the
assertion in IRObjectWithUseList::~IRObjectWithUseList().
Fix this by also iterating over the block's arguments and dropping any
uses that belong to the same parent region. This mirrors the existing
logic for op result uses and makes the block-erasure walk handle IRs
where function arguments are consumed by ops in sibling blocks.
Also replace `block->front().getParentRegion()` with
`block->getParent()` for robustness (avoids UB when the block has no
ops).
Add a regression test based on the reproducer from
https://github.com/llvm/llvm-project/issues/182996.
Fixes #182996
Commit: 245621408d03f8f85e2454332ad1816fed62c386
https://github.com/llvm/llvm-project/commit/245621408d03f8f85e2454332ad1816fed62c386
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/test/tools/llvm-cov/mcdc-macro.test
Log Message:
-----------
Restore #125407, Make covmap tolerant of nested Decisions (#183073)
Change(s):
- Suppress range errors in CounterExpr
Commit: f05b705dd3ce7fad6b30a2bc40dd9bbebf1e6a74
https://github.com/llvm/llvm-project/commit/f05b705dd3ce7fad6b30a2bc40dd9bbebf1e6a74
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/test/IR/visitors.mlir
Log Message:
-----------
[mlir] Fix crash in testNoSkipErasureCallbacks on empty blocks (#183757)
The `noSkipBlockErasure` callback in `testNoSkipErasureCallbacks` called
`block->front().getParentRegion()` to get the parent region of a block.
This dereferences the ilist sentinel node when the block has no
operations, triggering an assertion failure.
Use `block->getParent()` instead, which directly returns the region
containing the block without requiring any operations to be present.
Fixes #183511
Commit: b3be782c4d149d9f9fd4dbf0452db0af451bd1a2
https://github.com/llvm/llvm-project/commit/b3be782c4d149d9f9fd4dbf0452db0af451bd1a2
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/test/Dialect/Affine/canonicalize.mlir
Log Message:
-----------
[mlir][affine] Fix crash in linearize_index fold when multi-index is ub.poison (#183816)
`AffineLinearizeIndexOp::fold` guarded the constant-folding path with
`llvm::is_contained(adaptor.getMultiIndex(), nullptr)`, which only
catches operands that have not been evaluated at all. When an operand
folds to `ub.PoisonAttr`, the attribute is non-null so the guard passed,
and the subsequent `cast<IntegerAttr>(indexAttr)` call crashed with an
assertion failure.
Fix by replacing the null-only check with one that requires every
multi-index attribute to be a concrete `IntegerAttr`, returning
`nullptr` for any other attribute (including null and PoisonAttr).
Fixes #178204
Commit: 903acc2762d550d8f5934924aaf87b3527c63112
https://github.com/llvm/llvm-project/commit/903acc2762d550d8f5934924aaf87b3527c63112
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/lib/CodeGen/ItaniumCXXABI.cpp
A clang/test/DebugInfo/CXX/ptrauth-member-function-pointer-debuglocs.cpp
Log Message:
-----------
[AArch64][PAC] Emit `!dbg` locations in `*_vfpthunk_` functions (#179688)
The usage of pointers to member functions with Pointer Authentication
requires generation of `*_vfpthunk_` functions. These thunk functions
can be later inlined and optimized by replacing the indirect call
instruction with a direct one and then inlining that function call.
In absence of `!dbg` metadata attached to the original call instruction,
such inlining ultimately results in an assertion "!dbg attachment points
at wrong subprogram for function" in the assertions-enabled builds. By
manually executing `opt` with `-verify-each` option on the LLVM IR
produced by the frontend, an actual issue can be observed: "inlinable
function call in a function with debug info must have a !dbg location"
after the replacement of indirect call instruction with the direct one
takes place.
This commit fixes the issue by attaching artificial `!dbg` locations to
the original call instruction (as well as most other instructions in
`*_vfpthunk_` function) the same way it is done for other
compiler-generated helper functions.
Commit: 0b61f15f2e138f7662d4542eabed478a99275751
https://github.com/llvm/llvm-project/commit/0b61f15f2e138f7662d4542eabed478a99275751
Author: David Green <david.green at arm.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
A llvm/test/CodeGen/AArch64/fcvt-i256.ll
Log Message:
-----------
[AArch64] Add fcvt-i256 test cases. NFC
Commit: 94ebc8a95baf27a6e53737d0e32fcd210ce75a1b
https://github.com/llvm/llvm-project/commit/94ebc8a95baf27a6e53737d0e32fcd210ce75a1b
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
Log Message:
-----------
[LV] Remove duplicated IV expression sinking tests. (NFC)
Remove duplicated tests already covered by
llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-expr.ll.
Commit: 72525fb4ee370dcd598fd68a6515620ee3144bba
https://github.com/llvm/llvm-project/commit/72525fb4ee370dcd598fd68a6515620ee3144bba
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
Log Message:
-----------
[VPlan] Materialize UF after unrolling (NFCI).
Move materialization of the symbolic UF directly to unrollByUF. At this
point, unrolling materializes the decision and it is natural to also
materialize the symbolic UF here.
Commit: e655c36c16c118e3f8ae0c95854f33119218a4bf
https://github.com/llvm/llvm-project/commit/e655c36c16c118e3f8ae0c95854f33119218a4bf
Author: Matthias Springer <me at m-sp.org>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/lib/AsmParser/AttributeParser.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/AttributeDetail.h
M mlir/lib/IR/BuiltinAttributes.cpp
M mlir/lib/IR/BuiltinTypeInterfaces.cpp
M mlir/lib/IR/BuiltinTypes.cpp
A mlir/test/IR/dense-elements-type-interface.mlir
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Test/TestTypes.h
Log Message:
-----------
[mlir][IR] Generalize `DenseElementsAttr` to custom element types (#183891)
`DenseElementsAttr` supports only a hard-coded list of element types:
`int`, `index`, `float`, `complex`. This commit generalizes the
`DenseElementsAttr` infrastructure: it now supports arbitrary element
types, as long as they implement the new `DenseElementTypeInterface`.
The `DenseElementTypeInterface` has the following helper functions:
- `getDenseElementBitSize`: Query the size of an element in bits. (When
storing an element in memory, each element is padded to a full byte.
This is an existing limitation of the `DenseElementsAttr`; with an
exception for `i1`.)
- `convertToAttribute`: Attribute factory / deserializer. Converts bytes
into an MLIR attribute. The attribute provides the assembly format /
printer for a single element.
- `convertFromAttribute`: Serializer. Converts an MLIR attribute into
bytes.
Note: `convertToAttribute` / `convertFromAttribute` are mainly for
writing test cases. For performance reasons, `DenseElementsAttr` users
should work with raw bytes / elements and avoid any API that
materializes MLIR attributes. However, MLIR attributes typically have
human-readable parsers/printers, making them suitable for lit tests and
debugging.
This PR introduces an additional assembly format for
`DenseElementsAttrs`. There are now two formats. (The existing one is
kept for compatibility reasons.)
- Literal-first (existing): `dense<[1, 2, 3]> : tensor<3xi32>`
- Type-first (new): `dense<tensor<3xi32> : [1 : i32, 2 : i32, 3 : i32]>`
The new syntax is needed to disambiguate between "literal" (e.g., `1`)
and attribute (e.g., `1 : i32`) when parsing the first token. In the
literal-first syntax, we only parse literals. In the type-first syntax,
we only parse attributes.
The existing `int`, `index`, `float`, `complex` types also implement the
`DenseElementTypeInterface`. This allows us to implement
`DenseElementsAttr::get` and `AttributeElementIterator::operator*` in a
generic way.
RFC:
https://discourse.llvm.org/t/rfc-allow-custom-element-types-in-denseelementattr/89656
This is a re-upload of #179122.
Commit: 2f7c947946f4861f93aee795de5f42ed80f03072
https://github.com/llvm/llvm-project/commit/2f7c947946f4861f93aee795de5f42ed80f03072
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll
Log Message:
-----------
Precommit tests: strictfp rounding vector f16 intrinsics (#183699)
Commit: 225b56e742fea0abd326028872d257ae8cfd7544
https://github.com/llvm/llvm-project/commit/225b56e742fea0abd326028872d257ae8cfd7544
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
Log Message:
-----------
[mlir][VectorToLLVM] Fix crash in VectorInsertOpConversion with dynamic index (#183783)
VectorInsertOpConversion crashes with an assertion failure when
inserting a sub-vector at a dynamic position into a multi-dimensional
vector. The pattern calls getAsIntegers() on the position, which asserts
that all fold results are compile-time constant attributes.
The existing guard (checking llvm::IsaPred<Attribute>) only covered the
case where a scalar is inserted into the innermost dimension (the
extractvalue path). The guard was missing for the insertvalue path when
inserting a sub-vector at a dynamic position into a nested aggregate.
Fix: add the same guard before the llvm.insertvalue creation to return
failure() gracefully when any position index is dynamic, matching the
behavior of VectorExtractOpConversion.
Fixes #177829
Commit: 2342db00ab4d0305580814fb00f477b4b5cebec6
https://github.com/llvm/llvm-project/commit/2342db00ab4d0305580814fb00f477b4b5cebec6
Author: nextsilicon-itay-bookstein <55076759+nextsilicon-itay-bookstein at users.noreply.github.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lld/tools/lld/CMakeLists.txt
M llvm/cmake/modules/LLVM-Config.cmake
Log Message:
-----------
[CMake] Use keyword signature in two additional callsites (#183889)
Fix-forward for https://github.com/llvm/llvm-project/pull/183541.
Two callsites to target_link_libraries were not migrated to the
keyword signature.
Signed-off-by: Itay Bookstein <itay.bookstein at nextsilicon.com>
Commit: 5b64aeb409ecd9f8e9ff95ffe5fde7eb6a26146c
https://github.com/llvm/llvm-project/commit/5b64aeb409ecd9f8e9ff95ffe5fde7eb6a26146c
Author: Matthias Springer <me at m-sp.org>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/lib/AsmParser/AttributeParser.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/AttributeDetail.h
M mlir/lib/IR/BuiltinAttributes.cpp
M mlir/lib/IR/BuiltinTypeInterfaces.cpp
M mlir/lib/IR/BuiltinTypes.cpp
R mlir/test/IR/dense-elements-type-interface.mlir
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Test/TestTypes.h
Log Message:
-----------
Revert "[mlir][IR] Generalize `DenseElementsAttr` to custom element types" (#183917)
Reverts llvm/llvm-project#183891
Reverting a second time. The build bot failure seems to be
non-deterministic.
Commit: d5a8f1eda29abae6d2d0fa8e08a8402cc3fd84cc
https://github.com/llvm/llvm-project/commit/d5a8f1eda29abae6d2d0fa8e08a8402cc3fd84cc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-pow2.ll
Log Message:
-----------
[X86] known-pow2.ll - add tests showing failure to handle ISD::EXTRACT_VECTOR_ELT nodes (#183918)
Commit: 7585ab05d6fb08f6b03329637018eb4774d39042
https://github.com/llvm/llvm-project/commit/7585ab05d6fb08f6b03329637018eb4774d39042
Author: LU-JOHN <John.Lu at amd.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/test/CodeGen/AMDGPU/hazard-shift64.mir
Log Message:
-----------
[AMDGPU] Enable shift64 hazard recognition for gfx9 (#183839)
Enable shift64 hazard recognition for gfx9 cores.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: 3d086f573dc410a11bd11b1cdfba1ed2b80a95cb
https://github.com/llvm/llvm-project/commit/3d086f573dc410a11bd11b1cdfba1ed2b80a95cb
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/test/CIR/CodeGen/implicit-value-init-expr.cpp
Log Message:
-----------
[CIR] Implement ImplicitValueInitExpr for ComplexType (#183836)
Implement ImplicitValueInitExpr for ComplexType
Commit: a6ceae48f56cfd5ae3e87a865ef1fab315d1e0d0
https://github.com/llvm/llvm-project/commit/a6ceae48f56cfd5ae3e87a865ef1fab315d1e0d0
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
Log Message:
-----------
[AMDGPU] Assert non-array alloca does have a size (#183834)
Refs
https://github.com/llvm/llvm-project/pull/179523/changes#r2851952141
Commit: 4a93b9a1b1ec221cb66e7d31a4d80b225d7f8fce
https://github.com/llvm/llvm-project/commit/4a93b9a1b1ec221cb66e7d31a4d80b225d7f8fce
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll
Log Message:
-----------
[ARM] Lower strictfp vector fp16 rounding operations similar to default mode (#183700)
Previously the strictfp rounding nodes were lowered using unrolling to
scalar operations, which has negative impact on performance. Partially
this issue was fixed in #180480, this change continues that work and
implements optimized lowering for v4f16 and v8f16.
Commit: 2430410b7d879fce3db76c21bb8c60ed22abd0b5
https://github.com/llvm/llvm-project/commit/2430410b7d879fce3db76c21bb8c60ed22abd0b5
Author: Minsoo Choo <minsoochoo0122 at proton.me>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/docs/index.rst
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.cpp
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.h
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb][Process/FreeBSDKernelCore] Add ppc64le support (#180669)
This is LLDB version of
https://cgit.freebsd.org/ports/tree/devel/gdb/files/kgdb/ppcfbsd-kern.c.
This enables selecting ppc64le and reading registers from PCB structure
on core dump and live kernel debugging. FPU registers aren't supported
yet due to pcb structure issue, but this change still achieves feature
parity with KGDB. Trapframe unwinding support will be implemented in
future. Test files using core dump from ppc64le will be implemented once
other kernel debugging improvements are done.
---------
Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
Commit: 1909e43a4adc049db3fc4f1e622dd6702120562d
https://github.com/llvm/llvm-project/commit/1909e43a4adc049db3fc4f1e622dd6702120562d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/test/Dialect/GPU/invalid.mlir
Log Message:
-----------
[mlir][GPU] Fix crash in WarpExecuteOnLane0Op::verify with wrong terminator (#183930)
WarpExecuteOnLane0Op::verify() called getTerminator() which performed an
unconditional cast<gpu::YieldOp> on the block's last operation. When the
op body was written with a different terminator (e.g. affine.yield), the
cast asserted immediately instead of emitting a verifier diagnostic.
Fix by using dyn_cast in verify() before calling getTerminator(), and
emitting a proper error message when the terminator is not gpu.yield.
Add a regression test to invalid.mlir.
Fixes #181450
Commit: 4d724c074dd14000c46224bf303cb8157a48d8ee
https://github.com/llvm/llvm-project/commit/4d724c074dd14000c46224bf303cb8157a48d8ee
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[X86] known-never-zero.ll - add tests showing failure to handle ISD::EXTRACT_VECTOR_ELT nodes (#183934)
Commit: 3034c0966931bef36c169b5727ee20129aa4d4e3
https://github.com/llvm/llvm-project/commit/3034c0966931bef36c169b5727ee20129aa4d4e3
Author: James Wobser <james.wobser at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] bugfix: Whitesmiths with IndentAccessModifiers (#182432)
Due to special handling of Whitesmiths when parsing, the additional
level(s) needed for the block, when used with IndentAccessModifiers,
were not being applied. Consequently, when calculating the access
modifier indent offset, the modifiers were being placed at the class
level.
This change ensures that the additional level(s) are not omitted for
Whitesmiths.
Commit: 5ed875a06cb0a6d543f719ad72df2a1660e42cb9
https://github.com/llvm/llvm-project/commit/5ed875a06cb0a6d543f719ad72df2a1660e42cb9
Author: Gabriele Mondada <gab at ijk.ch>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/source/Utility/ZipFile.cpp
M lldb/unittests/Host/common/CMakeLists.txt
A lldb/unittests/Host/common/Inputs/zip-test-no-extras.zip
M lldb/unittests/Host/common/ZipFileResolverTest.cpp
Log Message:
-----------
[lldb][lldb-server] Fix zip file lookup ignoring last entry in the zip file (#173966)
Command qModuleInfo (GDB server protocol) can be used to request
metadata of shared libraries stored in a ZIP archive on the target. This
is typically used for retrieving SO files bundled in a APK file on
Android.
Requesting the last entry in the ZIP file often fails because of a bug
in the entry search mechanism. This PR fixes this.
NOTES:
* The bug appears only if the entry in the zip file has no extra field
or comment
* This is part on an effort to get lldb working for debugging Swift on
Android: https://github.com/swiftlang/llvm-project/issues/10831
Commit: e317f424557cbf76deaa568ab8a5416822453d50
https://github.com/llvm/llvm-project/commit/e317f424557cbf76deaa568ab8a5416822453d50
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/last-buildvector-node.ll
Log Message:
-----------
[SLP]Recalculate dependencies for the buildvector schedule node, if they have copyable node
Need to recalculate the deps for all buildvector nodes with copyable
deps to prevent a compiler crash during scheduling of instructions
Commit: 3e05ab6322cbf2a96362dcacb5907ba519fe552d
https://github.com/llvm/llvm-project/commit/3e05ab6322cbf2a96362dcacb5907ba519fe552d
Author: yonghong-song <yhs at fb.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/test/CodeGen/distributed-thin-lto/cfi-devirt.ll
M clang/test/CodeGen/distributed-thin-lto/cfi.ll
M clang/test/CodeGen/thinlto-funcattr-prop.ll
M lld/test/ELF/lto/comdat-nodeduplicate.ll
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/ModuleSummaryIndex.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/test/Assembler/thinlto-memprof-summary.ll
M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
M llvm/test/Assembler/thinlto-summary-visibility.ll
M llvm/test/Assembler/thinlto-summary.ll
M llvm/test/Assembler/thinlto-vtable-summary.ll
M llvm/test/Bitcode/thinlto-alias.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
M llvm/test/Bitcode/thinlto-type-tests.ll
M llvm/test/Bitcode/thinlto-type-vcalls.ll
A llvm/test/ThinLTO/X86/Inputs/reduce-promotion-same-file-local-name.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
M llvm/test/ThinLTO/X86/import_callee_declaration.ll
M llvm/test/ThinLTO/X86/load-store-caching.ll
A llvm/test/ThinLTO/X86/reduce-promotion-devirt.ll
A llvm/test/ThinLTO/X86/reduce-promotion-same-file-local-name.ll
A llvm/test/ThinLTO/X86/reduce-promotion-same-local-name.ll
A llvm/test/ThinLTO/X86/reduce-promotion.ll
M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll
Log Message:
-----------
[ThinLTO] Reduce the number of renaming due to promotions (#183793)
Currently for thin-lto, the imported static global values (functions,
variables, etc) will be promoted/renamed from e.g., foo() to
foo.llvm.(). Such a renaming caused difficulties in live patching
since function name is changed ([1]).
It is possible that some global value names have to be promoted to avoid
name collision and linker failure. But in practice, majority of name
promotions can be avoided.
In [2], the suggestion is that thin-lto pre-link decides whether
a particular global value needs name promotion or not. If yes, later on
in thinBackend() the name will be promoted.
I compiled a particular linux kernel version (latest bpf-next tree)
and found 1216 global values with suffix .llvm.. With this patch,
the number of promoted functions is 2, 98% reduction from the
original kernel build.
If some native objects are not participating with LTO, name promotions
have to be done to avoid potential linker issues. So the current
implementation cannot be on by default. But in certain cases, e.g., linux kernel
build, people can enable lld flag --lto-whole-program-visibility to reduce the
number of functions like foo.llvm.().
For ThinLTOCodeGenerator.cpp which is used by llvm-lto tool and a
few other rare cases, reducing the number of renaming due to promotion,
is not implemented as lld flag '-lto-whole-program-visibility' is not
supported in ThinLTOCodeGenerator.cpp for now. In summary, this pull
request only supports llvm-lto2 style workflow.
The feature is off by default. To enable the future, lld flag
'-lto-whole-program-visibility' and llvm flag
'-always-rename-promoted-locals=false' are needed.
The link [3] has more context for the pull request discussions.
[1] https://lpc.events/event/19/contributions/2212
[2] https://discourse.llvm.org/t/rfc-avoid-functions-like-foo-llvm-for-kernel-live-patch/89400
[3] https://github.com/llvm/llvm-project/pull/178587
Commit: 4a602c03ea050d7adf666d5a440164ca6f78707c
https://github.com/llvm/llvm-project/commit/4a602c03ea050d7adf666d5a440164ca6f78707c
Author: Minsoo Choo <minsoochoo0122 at proton.me>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/docs/index.rst
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.cpp
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.h
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb][Process/FreeBSDKernelCore] Add riscv64 support (#180670)
This is LLDB version of
https://cgit.freebsd.org/ports/tree/devel/gdb/files/kgdb/riscv-fbsd-kern.c.
This enables selecting riscv64 and reading registers from PCB structure
on core dump and live kenrel debugging while trapframe unwinding support
will be implemented in future. Test files using core dump from riscv64
will be implemented once other kernel debugging improvements are done.
---------
Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
Commit: 59ba10b9d38a27e6783a64f21c0a4f56bccae126
https://github.com/llvm/llvm-project/commit/59ba10b9d38a27e6783a64f21c0a4f56bccae126
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/test/Dialect/SPIRV/IR/types.mlir
Log Message:
-----------
[mlir][spirv] Fix crash when spirv.struct member type is not a SPIR-V type (#183942)
When parsing a spirv.struct type, any MLIR type was accepted as a member
type without validation. This caused a crash in TypeExtensionVisitor and
TypeCapabilityVisitor which unconditionally used cast<SPIRVType> on
struct element types, asserting when a non-SPIR-V type (e.g.,
vector<2x2xi1>) was encountered.
Fix the parser to reject non-SPIR-V member types with a proper error
message.
Fixes #179675
Commit: a0fb4f67084839d0209a303b223217a04532fd48
https://github.com/llvm/llvm-project/commit/a0fb4f67084839d0209a303b223217a04532fd48
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
Log Message:
-----------
[lldb] Add BytecodeSection class to formatter_bytecode.py (#183876)
Changes `formatter_bytecode.compile_file` to return a `BytecodeSection`
value. The `BytecodeSection` holds the data that needs to be emitted to
an `__lldbformatters` section.
The `BytecodeSection` currently provides `write_binary`, but will be
updated in a follow up commit to include `write_source` which will allow
the data to be emitted as C source code, or Swift source code. This will
make it easier to integrate into build systems, as it's easier to get
data into a binary via source code, than as a raw binary file.
Commit: df616fbe1c908b6c79b81599e0a6ec9d0137543c
https://github.com/llvm/llvm-project/commit/df616fbe1c908b6c79b81599e0a6ec9d0137543c
Author: Gabriele Mondada <gab at ijk.ch>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M lldb/tools/lldb-dap/EventHelper.cpp
Log Message:
-----------
[lldb][lldb-dap] Correctly format lldb warnings in the debug console (#173852)
Trivial change to prevent all warnings from being printed on a single
line in the VS Code debug console.
Commit: b72d8ac98c6eee51ac66bc865c81a23a16c37731
https://github.com/llvm/llvm-project/commit/b72d8ac98c6eee51ac66bc865c81a23a16c37731
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-02-28 (Sat, 28 Feb 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::EXTRACT_VECTOR_ELT handling (#183961)
Initialize DemandedElts mask when the index is constant and inbounds, otherwise check all elements.
Commit: 20f36a2ff10fd5c4ca821a3382b44440a6429b88
https://github.com/llvm/llvm-project/commit/20f36a2ff10fd5c4ca821a3382b44440a6429b88
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
Log Message:
-----------
[MLIR][GPU] Improve error message on invalid pass option
This provides a more helpful message to the user when passing invalid command
line options
Commit: 2c3d5f958f22965a1b7f76aac97467fdf4f4a8d1
https://github.com/llvm/llvm-project/commit/2c3d5f958f22965a1b7f76aac97467fdf4f4a8d1
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/ParserOpenACC/parse-constructs.cpp
A clang/test/SemaCXX/GH175783.cpp
Log Message:
-----------
[clang] use typo-corrected name qualifier for expressions (#183937)
Fixes #175783
Commit: 0b423a5b2738a795d8033398ca0959d36cee0e06
https://github.com/llvm/llvm-project/commit/0b423a5b2738a795d8033398ca0959d36cee0e06
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M mlir/test/Dialect/GPU/module-to-binary-invalid-format.mlir
Log Message:
-----------
[MLIR] Fix invalid test after improving the error message (NFC)
Commit: 910988b9f15ce8c4b3a383e925c7c0ab0ef52f2f
https://github.com/llvm/llvm-project/commit/910988b9f15ce8c4b3a383e925c7c0ab0ef52f2f
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/CodeGen/AMDGPU/amdpal-chain-metadata.ll
Log Message:
-----------
[AMDGPU] Stop treating AMDGPU_CS_ChainPreserve as a module entry funtion (#183718)
Starting with AMD PAL metadata v3.6, pipeline ELFs cannot have a
`.shader_functions` section. However, dynamic VGPR retry helpers use
the `AMDGPU_CS_ChainPreserve` calling convention, which LLVM previously
treated as a module entrypoint, incorrectly emitting this metadata.
Commit: 4673cecc89d1a2260edcff2808ed46de7bc0435d
https://github.com/llvm/llvm-project/commit/4673cecc89d1a2260edcff2808ed46de7bc0435d
Author: Twice <twice at apache.org>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/include/mlir-c/Rewrite.h
M mlir/lib/Bindings/Python/Rewrite.cpp
M mlir/lib/CAPI/Transforms/Rewrite.cpp
A mlir/test/python/integration/dialects/bf.py
Log Message:
-----------
[MLIR][Python] Add support of `convert_region_types` and the bf integration test (#183664)
This PR adds the `convert_region_types` API to
`ConversionPatternRewriter` and introduces a new integration test,
`bf.py`, which demonstrates how to combine a Python-defined dialect, the
dialect conversion API, the pass manager, and the execution engine to
build a pure-Python JIT compilation pipeline.
Commit: da8d18190530be7265bdb15b29cf0c654095c26c
https://github.com/llvm/llvm-project/commit/da8d18190530be7265bdb15b29cf0c654095c26c
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M libc/shared/math/asinf16.h
M libc/shared/math/asinhf16.h
M libc/shared/math/asinpif16.h
M libc/shared/math/atanf16.h
M libc/shared/math/atanhf16.h
M libc/shared/math/bf16fmaf128.h
M libc/shared/math/bf16mul.h
M libc/shared/math/bf16mulf.h
M libc/shared/math/bf16mulf128.h
M libc/shared/math/bf16mull.h
M libc/shared/math/bf16sub.h
M libc/shared/math/bf16subf.h
M libc/shared/math/bf16subf128.h
M libc/shared/math/ceil.h
M libc/shared/math/ceilbf16.h
M libc/shared/math/ceilf.h
M libc/shared/math/ceilf128.h
M libc/shared/math/ceilf16.h
M libc/shared/math/ceill.h
M libc/shared/math/cosf16.h
M libc/shared/math/coshf16.h
M libc/shared/math/cospif16.h
M libc/shared/math/dfmal.h
M libc/shared/math/exp10f16.h
M libc/shared/math/exp10m1f16.h
M libc/shared/math/exp2f16.h
M libc/shared/math/exp2m1f16.h
M libc/shared/math/expf16.h
M libc/shared/math/expm1f16.h
M libc/shared/math/f16div.h
M libc/shared/math/f16divf.h
M libc/shared/math/f16divf128.h
M libc/shared/math/f16divl.h
M libc/shared/math/f16fma.h
M libc/shared/math/f16fmaf.h
M libc/shared/math/f16fmaf128.h
M libc/shared/math/f16fmal.h
M libc/shared/math/f16mul.h
M libc/shared/math/f16mulf.h
M libc/shared/math/f16mulf128.h
M libc/shared/math/f16mull.h
M libc/shared/math/f16sqrtf128.h
M libc/shared/math/f16sqrtl.h
M libc/shared/math/f16sub.h
M libc/shared/math/f16subf.h
M libc/shared/math/f16subf128.h
M libc/shared/math/f16subl.h
M libc/shared/math/fadd.h
M libc/shared/math/faddf128.h
M libc/shared/math/faddl.h
M libc/shared/math/fdim.h
M libc/shared/math/fdimbf16.h
M libc/shared/math/fdimf.h
M libc/shared/math/fdimf128.h
M libc/shared/math/fdimf16.h
M libc/shared/math/fdiml.h
M libc/shared/math/floor.h
M libc/shared/math/floorbf16.h
M libc/shared/math/floorf.h
M libc/shared/math/floorf128.h
M libc/shared/math/floorf16.h
M libc/shared/math/floorl.h
M libc/shared/math/fmax.h
M libc/shared/math/fmaxbf16.h
M libc/shared/math/fmaxf.h
M libc/shared/math/fmaxf128.h
M libc/shared/math/fmaxf16.h
M libc/shared/math/fmaxl.h
M libc/shared/math/frexpf16.h
M libc/shared/math/fsqrtf128.h
M libc/shared/math/getpayload.h
M libc/shared/math/getpayloadbf16.h
M libc/shared/math/getpayloadf.h
M libc/shared/math/getpayloadf128.h
M libc/shared/math/getpayloadf16.h
M libc/shared/math/getpayloadl.h
M libc/shared/math/hypotf.h
M libc/shared/math/hypotf16.h
M libc/shared/math/ilogbf.h
M libc/shared/math/ilogbf16.h
M libc/shared/math/ldexpf16.h
M libc/shared/math/log.h
M libc/shared/math/log10.h
M libc/shared/math/log1p.h
M libc/shared/math/log2.h
M libc/shared/math/logb.h
M libc/shared/math/logbf.h
M libc/shared/math/logbf128.h
M libc/shared/math/logbf16.h
M libc/shared/math/logf16.h
M libc/shared/math/setpayload.h
M libc/shared/math/setpayloadbf16.h
M libc/shared/math/setpayloadf.h
M libc/shared/math/setpayloadf128.h
M libc/shared/math/setpayloadf16.h
M libc/shared/math/setpayloadl.h
M libc/shared/math/setpayloadsig.h
M libc/shared/math/setpayloadsigbf16.h
M libc/shared/math/setpayloadsigf.h
M libc/shared/math/setpayloadsigf128.h
M libc/shared/math/setpayloadsigf16.h
M libc/shared/math/setpayloadsigl.h
M libc/shared/math/sinhf16.h
M libc/shared/math/tanpif16.h
Log Message:
-----------
[libc][math] Cleanup shared/math (#183971)
Commit: c35a726ca9795928e419044e6349edf6b73b6cd0
https://github.com/llvm/llvm-project/commit/c35a726ca9795928e419044e6349edf6b73b6cd0
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-02-28 (Sat, 28 Feb 2026)
Changed paths:
M clang/test/TableGen/builtin-docs.td
M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
Log Message:
-----------
[Clang][TableGen] Sort undocumented builtins after documented ones in generated docs (#183938)
The builtin documentation emitter previously sorted all categories
purely alphabetically, which placed the "Undocumented" section before
categories like "WMMA" in the generated RST. This made the output
confusing since stub entries appeared before real documentation.
Push the "Undocumented" category to the end of the output so that all
documented categories appear first, regardless of their names.
Commit: bf4ed7903aee3690977f1865fb5509f74f3f860c
https://github.com/llvm/llvm-project/commit/bf4ed7903aee3690977f1865fb5509f74f3f860c
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/initializer_list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/memory
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/vector
M clang-tools-extra/test/clang-tidy/checkers/boost/Inputs/use-ranges/fake_std.h
M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges-pipe.cpp
M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/smart-ptr/initializer_list.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique-default-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-random-shuffle.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/shrink-to-fit.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace-ignore-implicit-constructors.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges-pipe.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp
Log Message:
-----------
[clang-tidy][NFC] Use singe mock vector header in tests (#183963)
In new tests we should encourage to use these "source of truth" files if
possible.
Commit: b2ce908a48e0ab6b0404742f38e5e5d0ee51cc2f
https://github.com/llvm/llvm-project/commit/b2ce908a48e0ab6b0404742f38e5e5d0ee51cc2f
Author: Reagan <xbjfk.github at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M compiler-rt/CMakeLists.txt
M compiler-rt/lib/gwp_asan/CMakeLists.txt
M compiler-rt/lib/msan/tests/CMakeLists.txt
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/scudo/standalone/CMakeLists.txt
Log Message:
-----------
[compiler-rt][CMake] Fix build when specifying --stdlib= (with 2 dashes) (#136111)
You can pass the stdlib argument either as -stdlib and --stdlib - the
previous regex did not account for this however - which caused the build
to fail, as a --stdlib argument would be replaced with a single dash,
causing clang to assume reading from stdin and the build to fail:
clang++: error: -E or -x required when input is from standard input
clang++: error: cannot specify -o when generating multiple output files
The files
[libcxxabi/CMakeLists.txt](https://github.com/llvm/llvm-project/blob/bf6986f9f09f79da38006a83c339226c429bb686/libcxxabi/CMakeLists.txt#L261)
and
[libunwind/CMakeLists.txt](https://github.com/llvm/llvm-project/blob/bf6986f9f09f79da38006a83c339226c429bb686/libunwind/CMakeLists.txt#L257)
account for this by removing --stdlib first.
Co-authored-by: Vitaly Buka <vitalybuka at google.com>
Commit: 10b1b7857b0564c447054ed5f451729230280f54
https://github.com/llvm/llvm-project/commit/10b1b7857b0564c447054ed5f451729230280f54
Author: MacGyver Codilla <77024043+39otsu at users.noreply.github.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M compiler-rt/test/asan/TestCases/fakeframe-right-redzone.cpp
M compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp
Log Message:
-----------
[ASan] Mark recent integration tests as accordingly for MSVC (#135889)
Both of these tests will cause an unsuccessful pass when using msvc.
`shadowed-stack-serialization.cpp` - XFAIL due to the metadata not being
generated.
`fakeframe-right-redzone.cpp` - UNSUPPORTED due to the optimization
limitations of the msvc compiler.
---------
Co-authored-by: MacGyver Codilla <mcodilla at microsoft.com>
Commit: d412b04a883c7d6212edf1d678349689cb7d723b
https://github.com/llvm/llvm-project/commit/d412b04a883c7d6212edf1d678349689cb7d723b
Author: Benjamin Stott <Benjamin.Stott at sony.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M compiler-rt/lib/ubsan/ubsan_diag.h
Log Message:
-----------
[UBSan] Wrap Location variants in anonymous union (#168866)
(Addresses the FIXME)
Commit: b872179bebe7a9aa42163fdb3334ab9e388c9dfd
https://github.com/llvm/llvm-project/commit/b872179bebe7a9aa42163fdb3334ab9e388c9dfd
Author: Xavier Roche <roche at httrack.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
A llvm/test/CodeGen/AArch64/bitcnt-i256.ll
A llvm/test/CodeGen/AArch64/cmp-i256.ll
A llvm/test/CodeGen/AArch64/div-i256.ll
A llvm/test/CodeGen/AArch64/mul-i256.ll
A llvm/test/CodeGen/AArch64/shift-i256.ll
Log Message:
-----------
[AArch64][test] Add i256 codegen baseline tests (#183587)
## Summary
Add baseline codegen tests for i256 operations on AArch64:
- `bitcnt-i256.ll`: ctpop, ctlz, cttz, Hamming distance, parity (3 RUN
lines: +neon, +sve, +cssc)
- `cmp-i256.ll`: 8 icmp variants (slt/sgt/sle/sge/ult/ugt/ule/uge) +
select
- `div-i256.ll`: udiv, sdiv, urem, srem, power-of-2, and constant
division
- `mul-i256.ll`: multiply, multiply-by-constant, add, sub, and, or, xor
- `shift-i256.ll`: variable shl/lshr/ashr, constant shifts, narrow (i32)
amounts
These are test-only NFC pre-patches for `__int256` builtin type support
(#182733). i256 is already a valid LLVM IR type; these tests capture the
current baseline codegen. The main PR will update the CHECK lines to
show codegen improvements (e.g., direct libcall routing for
division/multiply).
## Test plan
- All 5 tests pass with `llvm-lit` on upstream `main` (generated with
`update_llc_test_checks.py` using upstream `llc`)
## AI Disclosure
This patch was developed with assistance from Claude (Anthropic). All
commits carry `Assisted-by: Claude (Anthropic)` and `Co-Authored-By:
Claude Opus 4.6 <noreply at anthropic.com>` trailers, per the [LLVM AI Tool
Policy](https://llvm.org/docs/DeveloperPolicy.html#use-of-ai-generated-contributions).
All code has been reviewed and validated by the author.
---------
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 9ffa08f097d45a36a50d5a8066d00488db3596ed
https://github.com/llvm/llvm-project/commit/9ffa08f097d45a36a50d5a8066d00488db3596ed
Author: Krzysztof Drewniak <krzysdrewniak at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/test/mlir-tblgen/op-properties-predicates.td
Log Message:
-----------
[mlir][NFC] Fix typo in property predicate tests (#183987)
Commit: d74c6b1176e92b1741bb3275c2befbe76b7449e9
https://github.com/llvm/llvm-project/commit/d74c6b1176e92b1741bb3275c2befbe76b7449e9
Author: Matthias Springer <me at m-sp.org>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/Support/InterfaceSupport.h
M mlir/lib/AsmParser/AttributeParser.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/AttributeDetail.h
M mlir/lib/IR/BuiltinAttributes.cpp
M mlir/lib/IR/BuiltinTypeInterfaces.cpp
M mlir/lib/IR/BuiltinTypes.cpp
A mlir/test/IR/dense-elements-type-interface.mlir
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Test/TestTypes.h
Log Message:
-----------
[mlir][IR] Generalize `DenseElementsAttr` to custom element types (#183920)
`DenseElementsAttr` supports only a hard-coded list of element types:
`int`, `index`, `float`, `complex`. This commit generalizes the
`DenseElementsAttr` infrastructure: it now supports arbitrary element
types, as long as they implement the new `DenseElementTypeInterface`.
The `DenseElementTypeInterface` has the following helper functions:
- `getDenseElementBitSize`: Query the size of an element in bits. (When
storing an element in memory, each element is padded to a full byte.
This is an existing limitation of the `DenseElementsAttr`; with an
exception for `i1`.)
- `convertToAttribute`: Attribute factory / deserializer. Converts bytes
into an MLIR attribute. The attribute provides the assembly format /
printer for a single element.
- `convertFromAttribute`: Serializer. Converts an MLIR attribute into
bytes.
Note: `convertToAttribute` / `convertFromAttribute` are mainly for
writing test cases. For performance reasons, `DenseElementsAttr` users
should work with raw bytes / elements and avoid any API that
materializes MLIR attributes. However, MLIR attributes typically have
human-readable parsers/printers, making them suitable for lit tests and
debugging.
This PR introduces an additional assembly format for
`DenseElementsAttrs`. There are now two formats. (The existing one is
kept for compatibility reasons.)
- Literal-first (existing): `dense<[1, 2, 3]> : tensor<3xi32>`
- Type-first (new): `dense<tensor<3xi32> : [1 : i32, 2 : i32, 3 : i32]>`
The new syntax is needed to disambiguate between "literal" (e.g., `1`)
and attribute (e.g., `1 : i32`) when parsing the first token. In the
literal-first syntax, we only parse literals. In the type-first syntax,
we only parse attributes.
The existing `int`, `index`, `float`, `complex` types also implement the
`DenseElementTypeInterface`. This allows us to implement
`DenseElementsAttr::get` and `AttributeElementIterator::operator*` in a
generic way.
RFC:
https://discourse.llvm.org/t/rfc-allow-custom-element-types-in-denseelementattr/89656
This is a re-upload of #179122.
Commit: 5768ee2dcdad1bba9763361313ccce5641497033
https://github.com/llvm/llvm-project/commit/5768ee2dcdad1bba9763361313ccce5641497033
Author: fogsong233 <fogsong233 at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/lib/Interpreter/IncrementalParser.cpp
A clang/test/Interpreter/incremental-c-implicit-error.c
A clang/test/Interpreter/incremental-c-implicit-undo.c
Log Message:
-----------
[clang-repl] fix CleanUpPTU by removing decl according to C implicitly FuncitonDecl. (#178648)
fix #171440
---------
Co-authored-by: Vassil Vassilev <v.g.vassilev at gmail.com>
Commit: 0f63db5c665b77c943ed19d2615f94dbf24cfb7a
https://github.com/llvm/llvm-project/commit/0f63db5c665b77c943ed19d2615f94dbf24cfb7a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/IPO/Attributor.cpp
Log Message:
-----------
Attributor: Avoid calling identifyDefaultAbstractAttributes on declarations (#182663)
Previously it would be called and inserted into a visited map,
but would never be used. This could possibly go one step further
and never add declarations to the SetVector of Functions. If I try
that, only one call graph printing test fails.
Commit: d68d47db7b5a08f1722cc03ccfbc1bf441b34fe2
https://github.com/llvm/llvm-project/commit/d68d47db7b5a08f1722cc03ccfbc1bf441b34fe2
Author: David Green <david.green at arm.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMInstrFormats.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMInstrNEON.td
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/lib/Target/ARM/ARMInstrThumb2.td
M llvm/test/CodeGen/ARM/bfx.ll
M llvm/test/CodeGen/ARM/extract-bits.ll
M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
M llvm/test/CodeGen/ARM/vector-DAGCombine.ll
M llvm/test/CodeGen/ARM/vector-store.ll
M llvm/test/CodeGen/ARM/vext.ll
M llvm/test/CodeGen/ARM/vselect_imax.ll
M llvm/test/CodeGen/ARM/vtrn.ll
M llvm/test/CodeGen/Thumb/pr35836.ll
M llvm/test/CodeGen/Thumb/pr35836_2.ll
M llvm/test/CodeGen/Thumb/umulo-128-legalisation-lowering.ll
M llvm/test/tools/llvm-mca/ARM/cortex-a57-basic-instructions.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-neon-instructions.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s
M llvm/test/tools/llvm-mca/ARM/m4-int.s
M llvm/test/tools/llvm-mca/ARM/m55-int.s
M llvm/test/tools/llvm-mca/ARM/m7-int.s
M llvm/test/tools/llvm-mca/ARM/m85-int.s
M llvm/test/tools/llvm-mca/ARM/simple-cortex-m33.s
Log Message:
-----------
[ARM] Explicitly mark certain instructions as having no side effects. (#182771)
This goes through some Arm instructions and adds hasSideEffects = 0 to
ones where it was not already implied. This should help with scheduling
and instruction movement.
Commit: 6fa90a3f7e893fa83880f42a76ec2346917e331f
https://github.com/llvm/llvm-project/commit/6fa90a3f7e893fa83880f42a76ec2346917e331f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/lib/IR/SymbolTable.cpp
M mlir/test/Dialect/IRDL/invalid.irdl.mlir
Log Message:
-----------
[MLIR][SymbolTable] Fix crash when SymbolTable is built on unverified IR (#183945)
The SymbolTable::SymbolTable constructor asserted that all symbol names
in the region were unique. This could cause mlir-opt to crash instead of
producing a proper diagnostic when the IR contained both:
1. An IsolatedFromAbove op (e.g., irdl.dialect) with a symbol user that
looks up symbols in an ancestor symbol table, and
2. Duplicate symbols in that ancestor (e.g., two func.func @test).
The crash occurred because IsolatedFromAbove ops are verified in
verifyOnExit() before verifyRegionInvariants() runs the SymbolTable
trait's verifyRegionTrait (which produces the proper duplicate-symbol
diagnostic). When the isolated op's symbol use verification triggered
SymbolTableCollection::getSymbolTable() on the ancestor, the constructor
would assert instead of gracefully handling the invalid-but-not-yet-
reported duplicate symbols.
The fix removes the assertion and silently skips duplicate symbol
insertions (keeping the first definition). The proper diagnostic is
still produced by the SymbolTable trait's verifyRegionTrait, which runs
after all children have been verified.
Add a regression test in invalid.irdl.mlir using a self-referencing IRDL
parametric type combined with duplicate function symbols.
Fixes #159673
Commit: 74c0ee7e72bf62589c4dfa6f4601887bafa82d7c
https://github.com/llvm/llvm-project/commit/74c0ee7e72bf62589c4dfa6f4601887bafa82d7c
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/CostModel.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[TTI] Remove TargetLibraryInfo from IntrinsicCostAttributes (NFC) (#183764)
This is a remnant from when `sincos` costs used the vector mappings from
`TargetLibraryInfo::getVectorMappingInfo`.
Commit: 9801e752024ff641d2f7fea308d5cc078d74794e
https://github.com/llvm/llvm-project/commit/9801e752024ff641d2f7fea308d5cc078d74794e
Author: David Green <david.green at arm.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/test/tools/llvm-mca/ARM/simple-cortex-m33.s
Log Message:
-----------
[ARM] tADDrSPi no side effects change (#183071)
This is pulled out of #182771 in case it causes issues. The mis-compile
I believe is no longer present, as tADDrSPi is used in several test
cases which do not change due to of marking tADDrSPi as not affect side
effects.
Commit: 2cb2fe7f2a1dfd51642651264c644e213809cb0b
https://github.com/llvm/llvm-project/commit/2cb2fe7f2a1dfd51642651264c644e213809cb0b
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/test/Dialect/SCF/invalid.mlir
Log Message:
-----------
[mlir][scf] Fix crash in ForOp verifier when body block has no arguments (#183946)
A malformed `scf.for` whose body block contains no arguments caused
`getRegionIterArgs()` to crash via an out-of-bounds `drop_front(1)`
call. This happened because `verifyLoopLikeOpInterface` (a
`verifyRegionTrait`) invokes `getRegionIterArgs()` during
`verifyRegionInvariants`, which runs before `verifyRegions()` has a
chance to report a proper diagnostic.
Fix by adding an explicit check in `ForOp::verify()` (which runs in
`verifyInvariants`, before any region trait verifiers execute) that
ensures the body block has at least as many arguments as there are
induction variables. This prevents the crash and produces a clear error
message.
Fixes #159737
Commit: b7e20442d5edc768c986cc1f3363ab76cd9d7281
https://github.com/llvm/llvm-project/commit/b7e20442d5edc768c986cc1f3363ab76cd9d7281
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/OpBase.td
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/mlir-tblgen/types.mlir
Log Message:
-----------
[MLIR][ODS] Fix AllElementCountsMatch crash on dynamic shaped types (#183948)
The AllElementCountsMatch trait called ShapedType::getNumElements() on
operands or results with dynamic dimensions, which unconditionally
asserts hasStaticShape(). This caused mlir-opt to crash instead of
failing gracefully when the trait was used with dynamically-shaped
types.
Fix this by rewriting AllElementCountsMatch to use an And<> predicate
combining Neg<AnyMatchOperatorPred> (requiring all types to be
statically shaped) with AllMatchSameOperatorPred (requiring equal
element counts). When any type has dynamic dimensions the verification
now fails with a diagnostic instead of crashing.
Update the regression test to expect a verification failure rather than
success when dynamic shapes are present.
Fixes #159740
Commit: 785490e9db54ef03988d8e9fe56aab45e4b29129
https://github.com/llvm/llvm-project/commit/785490e9db54ef03988d8e9fe56aab45e4b29129
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/include/mlir/Transforms/Passes.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/include/mlir/Transforms/ViewOpGraph.h
M mlir/lib/Transforms/CSE.cpp
M mlir/lib/Transforms/Canonicalizer.cpp
M mlir/lib/Transforms/ControlFlowSink.cpp
M mlir/lib/Transforms/GenerateRuntimeVerification.cpp
M mlir/lib/Transforms/InlinerPass.cpp
M mlir/lib/Transforms/LoopInvariantCodeMotion.cpp
M mlir/lib/Transforms/OpStats.cpp
M mlir/lib/Transforms/PrintIR.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/lib/Transforms/SCCP.cpp
M mlir/lib/Transforms/StripDebugInfo.cpp
M mlir/lib/Transforms/SymbolDCE.cpp
M mlir/lib/Transforms/SymbolPrivatize.cpp
M mlir/lib/Transforms/TopologicalSort.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
M mlir/test/CAPI/pass.c
M mlir/test/Pass/ir-printing.mlir
M mlir/test/Pass/pass-timing.mlir
M mlir/test/Pass/run-reproducer.mlir
M mlir/test/Transforms/composite-pass.mlir
M mlir/test/python/pass_manager.py
Log Message:
-----------
[MLIR] Remove `let constructor = ` from mlir/include/mlir/Transforms/Passes.td (#183950)
This makes the constructor auto-generated.
Commit: 0ba4f13b264a385ffdcdcb77c935f6c503ba62df
https://github.com/llvm/llvm-project/commit/0ba4f13b264a385ffdcdcb77c935f6c503ba62df
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/test/Dialect/Affine/invalid-reify-bound-dim.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
Log Message:
-----------
[mlir][test] Fix crash in ReifyBoundOp with invalid 'type' attribute (#184004)
The `ReifyBoundOp::getBoundType()` called `llvm_unreachable("invalid
bound type")` when the `type` attribute was set to a value other than
"EQ", "LB", or "UB" (e.g., "scalable"). This caused an abort instead of
a user-visible diagnostic.
Add a verification check that rejects invalid `type` values with a
proper error message before `getBoundType()` is ever called.
Fixes #128805
Commit: 2c9720972e90fce4a5409cac9d9141c048a64632
https://github.com/llvm/llvm-project/commit/2c9720972e90fce4a5409cac9d9141c048a64632
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/CMakeLists.txt
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
M mlir/include/mlir/Bindings/Python/IRCore.h
M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
M mlir/include/mlir/Bindings/Python/NanobindUtils.h
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/test/CMakeLists.txt
M mlir/test/lit.cfg.py
M mlir/test/lit.site.cfg.py.in
M mlir/test/python/ir/auto_location.py
A mlir/test/python/ir/auto_location_stable_abi.py
Log Message:
-----------
[mlir][python] Add stable ABI (abi3) support (#183856)
Add `MLIR_ENABLE_PYTHON_STABLE_ABI` cmake flag to build bindings against
the Python limited/stable API (abi3 / PEP 384). This allow for
compatibility across different >=3.12 versions with a single .so /
wheel. We also require CMake >=3.26.
The stable ABI restricts usage to a subset of the CPython C API: frame
and code object structs are opaque, so introspection APIs like
`PyCode_Addr2Location`, `PyFrame_GetLasti`, and `PyFrame_GetCode` are
unavailable. The traceback-based auto-location logic is dropped because
we don’t have stable ABI to produce complete locations.
Assisted-by: claude
Commit: 3bdee9b5576bd0b64da9501c267d4b40d768be9a
https://github.com/llvm/llvm-project/commit/3bdee9b5576bd0b64da9501c267d4b40d768be9a
Author: Valeriy Savchenko <vsavchenko at apple.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/test/Transforms/GVN/PRE/pre-load-through-select.ll
M llvm/test/Transforms/GVN/PRE/pre-loop-load-through-select.ll
A llvm/test/Transforms/GVN/load-select-addr-store-fwd.ll
Log Message:
-----------
[GVN] Forward store values through select addresses in findDominatingValue (#183316)
## Alive2 proof
https://alive2.llvm.org/ce/z/v6pX7C
Commit: 49b77e3b45555b022d0a0e2aac239708d706ae10
https://github.com/llvm/llvm-project/commit/49b77e3b45555b022d0a0e2aac239708d706ae10
Author: Valeriy Savchenko <vsavchenko at apple.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AArch64/fold-signbit-reduction-cmp.ll
M llvm/test/Transforms/VectorCombine/RISCV/fold-signbit-reduction-cmp.ll
M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll
Log Message:
-----------
[VectorCombine] Fold sign-bit check for multiple vectors (#182911)
## Alive2 proofs
| Reduction | Shift | Cmp | Sources | Proof |
|-----------|-------|----------|---------|-------|
| add | lshr | == 0 | 2 | [proof](https://alive2.llvm.org/ce/z/f44vco) |
| add | lshr | == 8 | 2 | [proof](https://alive2.llvm.org/ce/z/Ks_nea) |
| add | ashr | == 0 | 2 | [proof](https://alive2.llvm.org/ce/z/ZsXJ5k) |
| add | ashr | == -8 | 2 | [proof](https://alive2.llvm.org/ce/z/HZfans)
|
| add | lshr | == 0 | 3 | [proof](https://alive2.llvm.org/ce/z/x-dEdz) |
| add | lshr | == 12 | 3 | [proof](https://alive2.llvm.org/ce/z/sfNvhr)
|
These proofs are not very exhaustive, but somewhat show that it works
for addition. Apart from the fact that we use multiple vectors, the
proofs from the previous changes generally apply here as well because we
effectively match on reductions of size M x N.
Commit: a6e7c38ea6310ef8d8e6ba0d8158d7d1f4e28f5b
https://github.com/llvm/llvm-project/commit/a6e7c38ea6310ef8d8e6ba0d8158d7d1f4e28f5b
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/AArch64/revec-select-scalar-vector-cond.ll
Log Message:
-----------
[SLP]Do not vectorize select nodes with scalar and vector conditions
If the select nodes contains selects with mixed scalar/vector
conditions, such nodes should not be revectorized.
Fixes #170836
Commit: 7b26069828aa88064b92f73f764b708754e441ec
https://github.com/llvm/llvm-project/commit/7b26069828aa88064b92f73f764b708754e441ec
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
Log Message:
-----------
[VPlan] Pass ForceTargetInstructionCost insted of NumOccurences.
Update code incorrectly passing
ForceTargetInstructionCost.getNumOccurrences().
Fixes a cost-divergence with legacy cost model.
Commit: 9730d3128435350c5ef90c198979df25004ccc1f
https://github.com/llvm/llvm-project/commit/9730d3128435350c5ef90c198979df25004ccc1f
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/AArch64/revec-reductions.ll
Log Message:
-----------
[SLP]Fix types for reductions in revec
Need to consider vector inputs, when building casts for the reduced
values
Fixes #170828
Commit: 320220e48b8f1054ce7a37c8b2a528315080e29c
https://github.com/llvm/llvm-project/commit/320220e48b8f1054ce7a37c8b2a528315080e29c
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
M llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
M llvm/test/Transforms/LoopVectorize/unsupported_early_exit.ll
Log Message:
-----------
[VPlan] Support arbitrary predicated early exits. (#182396)
This removes the restriction requiring a single predicated early exit.
Using MaskedCond, we only combine early-exit conditions with block
masks from non-exiting control flow.
This means we have to ensure that we check the early exit conditions in
program order, to make sure we take the first exit in program order that
exits at the first lane for the combined exit condition.
To do so, sort the exits by their reverse post-order numbers.
Depends on https://github.com/llvm/llvm-project/pull/182395
PR: https://github.com/llvm/llvm-project/pull/182396
Commit: ae7916539918544655bd92b7f9a05b48563483b4
https://github.com/llvm/llvm-project/commit/ae7916539918544655bd92b7f9a05b48563483b4
Author: Dave Bartolomeo <dave_bartolomeo at apple.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftCXXABI.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/VTableBuilder.cpp
M clang/test/CodeGenObjC/aarch64-sve-types.m
Log Message:
-----------
[clang][NFC][diagnostics] Remove several uses of `getCustomDiagID()` (#172532)
This change converts all existing uses of `getCustomDiagID()` within the
`clang/AST` library into regular diagnostics defined in
`DiagnosticASTKinds.td`.
This is mostly just cleanup, but it will also help with future changes
to the diagnostic system by letting us focus on the custom diagnostic
scenarios that _don't_ fit into the usual pre-declared diagnostic
scenario.
Commit: 02c7a6cd7f35a9ad5d1c650b4f56593db1210641
https://github.com/llvm/llvm-project/commit/02c7a6cd7f35a9ad5d1c650b4f56593db1210641
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll
Log Message:
-----------
[SLP][NFC]Add tests for bitcasts/bswaps with large target type
Commit: 451529778d428ee691ce699c5ae8acfa9b9ea6c4
https://github.com/llvm/llvm-project/commit/451529778d428ee691ce699c5ae8acfa9b9ea6c4
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/Sema/sugar-common-types.c
Log Message:
-----------
[clang] fix common type calculation for l-values of 'void' type (#183972)
Fixes #111300
Commit: e4301c48fdd95f43644d84868f560b291d46bc60
https://github.com/llvm/llvm-project/commit/e4301c48fdd95f43644d84868f560b291d46bc60
Author: David Zbarsky <dzbarsky at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Fix windows stack space on llvm driver link (#182998)
Bazel was missing this logic from cmake:
https://github.com/llvm/llvm-project/blob/cd200c8dfae0de1602b59011381377d147a86bdb/llvm/cmake/modules/HandleLLVMOptions.cmake#L567-L580
Commit: 3041c90718df44617382af80c3b1fc8d68ce9f2c
https://github.com/llvm/llvm-project/commit/3041c90718df44617382af80c3b1fc8d68ce9f2c
Author: Matthias Springer <me at m-sp.org>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/fold-constant-extract-slice.mlir
Log Message:
-----------
[mlir][tensor] Remove hard-coded types from `ConstantOpExtractSliceFolder` (#184013)
Use the `Attribute` API, which works with arbitrary element types.
Commit: a13afe84bb4240608b9ce822918c43e689d63b47
https://github.com/llvm/llvm-project/commit/a13afe84bb4240608b9ce822918c43e689d63b47
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll
Log Message:
-----------
[SLP][NFC]Add more bitcast/bswap tests with immediate loads, NFC
Commit: 48209b6777be924b4384f2fc3148d713ac3f411c
https://github.com/llvm/llvm-project/commit/48209b6777be924b4384f2fc3148d713ac3f411c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/known-pow2.ll
Log Message:
-----------
[DAG] isKnownToBeAPowerOfTwo - add ISD::EXTRACT_VECTOR_ELT handling (#183924)
Initialize DemandedElts mask when the index is constant and inbounds, otherwise check all elements.
Commit: 1dc85c60410f8366e59fd518afa1d9cf22a909e6
https://github.com/llvm/llvm-project/commit/1dc85c60410f8366e59fd518afa1d9cf22a909e6
Author: Daniil Dudkin <unterumarmung at yandex.ru>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/unittests/clang-tidy/LexerUtilsTest.cpp
Log Message:
-----------
[clang-tidy][NFC] Add `getCommentsInRange` utility (#183940)
Commit: 3cf53f684d511c5e31b27ab40397f24efaba1866
https://github.com/llvm/llvm-project/commit/3cf53f684d511c5e31b27ab40397f24efaba1866
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/X86/iv-live-outs.ll
Log Message:
-----------
[LV] Handle sunk reverse VPInstruction in planContainsAdditionalSimps.
Licm can now sink reverse VPInstructions outside the loop region; they
won't be considered when computing costs. Account for that in
planContainsAdditionalSimplifications.
Fixes https://github.com/llvm/llvm-project/issues/183592.
Commit: f62adea305d6e0a9307fa69943c625f407a73688
https://github.com/llvm/llvm-project/commit/f62adea305d6e0a9307fa69943c625f407a73688
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[ProfCheck] Exclude new GVN test
Added in a recent PR. We still have not gotten through GVN, so this is
likely caused by existing code. Exclude it to keep the bot green.
Commit: dddd06be8c3ed10eaef4f986ec4ceb828be7e789
https://github.com/llvm/llvm-project/commit/dddd06be8c3ed10eaef4f986ec4ceb828be7e789
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
Log Message:
-----------
[NFC][Clang] Auto generate check lines for `clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl` (#183926)
Commit: d1d2a1ed76a687ae0dea54b6925bd8c104341d4a
https://github.com/llvm/llvm-project/commit/d1d2a1ed76a687ae0dea54b6925bd8c104341d4a
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/multi-use-bicasted-reduction.ll
Log Message:
-----------
[SLP][NFC]Add a test with the incorrect compare, extracted from the transformed vector
Commit: cf1e76835febe1e6f1bcd5c3ebf4178b4c92dbe7
https://github.com/llvm/llvm-project/commit/cf1e76835febe1e6f1bcd5c3ebf4178b4c92dbe7
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.h
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h
Log Message:
-----------
[clang-tidy][NFC] Don't call `getLangOpts` in `isLanguageVersionSupported` (#184029)
This is just a little inconsistency I noticed. Basically all checks
inspect the `LangOpts` parameter, but these two ignore the parameter and
call `getLangOpts` instead.
Commit: 789bf51f0ce64c541ab0ca81d43c912cf0731628
https://github.com/llvm/llvm-project/commit/789bf51f0ce64c541ab0ca81d43c912cf0731628
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/multi-use-bicasted-reduction.ll
Log Message:
-----------
[SLP]Do not consider condition with multiple uses and negate predicate as a candidate for inversed select
If the select/zext comparison has negate predicate and is used in
several places, it should not be considered as a candidate for inversed
zext/select pattern, it will be replaced by a negate vector predicate,
leading to an incorrect codegen for other uses
Commit: d9ca61b6e7b9aa94d244b831a3cb6274d3839d1c
https://github.com/llvm/llvm-project/commit/d9ca61b6e7b9aa94d244b831a3cb6274d3839d1c
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
Log Message:
-----------
Revert "[NFC][Clang] Auto generate check lines for `clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl`" (#184035)
Reverts llvm/llvm-project#183926 because of some BB failures.
Commit: e2ef93fc5750e1d5bd15cfbac49996c8b9b5e8ff
https://github.com/llvm/llvm-project/commit/e2ef93fc5750e1d5bd15cfbac49996c8b9b5e8ff
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
R clang/test/CodeGenOpenCL/.gdb_history
Log Message:
-----------
[NFC] Remove `clang/test/CodeGenOpenCL/.gdb_history` (#184038)
Commit: f05d2e8a39987b8d87e0a7d6ef887749b5b1700e
https://github.com/llvm/llvm-project/commit/f05d2e8a39987b8d87e0a7d6ef887749b5b1700e
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
M clang/test/OpenMP/amdgcn-attributes.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
A llvm/test/Bitcode/upgrade-uniform-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-uniform-workgroup-size-v5.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
M llvm/test/CodeGen/AMDGPU/inline-attr.ll
M llvm/test/CodeGen/AMDGPU/inlineasm-sgmask.ll
M llvm/test/CodeGen/AMDGPU/invalid-hidden-kernarg-in-kernel-signature.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
M llvm/test/CodeGen/AMDGPU/si-opt-vgpr-liverange-bug-deadlanes.mir
M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.mir
M llvm/test/CodeGen/AMDGPU/swdev-549940.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_12.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_20.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_spirv.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_subgroup_rotate/subgroup-rotate.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-comparison.ll.bak
M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[AMDGPU] Make uniform-work-group-size a valueless attribute (#183925)
The "uniform-work-group-size" function attribute previously took a
string value of "true" or "false". Since presence alone can convey the
"true" semantics and absence can convey "false", the value is
unnecessary.
This patch converts it to a valueless string attribute: presence
indicates true, absence indicates false. For backward compatibility,
auto-upgrade logic is added in both UpgradeAttributes (bitcode) and
UpgradeFunctionAttributes: if the old value is "true", the attribute is
kept without a value; if "false", the attribute is removed.
Commit: d947f8f699eb7d14c883f180f72329cae3a23fd3
https://github.com/llvm/llvm-project/commit/d947f8f699eb7d14c883f180f72329cae3a23fd3
Author: Serosh <janmejayapanda400 at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaTemplate.cpp
A clang/test/SemaCXX/builtin_templates_invalid_parameters.cpp
Log Message:
-----------
[clang][Sema] fix crash on __type_pack_element with dependent packs (GH180307) (#180407)
dependent pack expansions in __type_pack_element can result in
single-element template argument lists. When performing semantic
analysis for these builtins, the compiler needs to account for the
dependent expansions and handle them without triggering strict size
assertions. The patch adds this analysis and ensures we either defer
evaluation for dependent cases or report clear out-of-bounds diagnostics
instead of crashing
Ai was used for test generation and CI debugging
fixes #180307
Commit: e6aafae828e0c6f7045cdc17253b42b844f52098
https://github.com/llvm/llvm-project/commit/e6aafae828e0c6f7045cdc17253b42b844f52098
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M polly/lib/External/isl/GIT_HEAD_ID
M polly/lib/External/isl/isl_ast_build_expr.c
A polly/lib/External/isl/test_inputs/codegen/polly3.c
A polly/lib/External/isl/test_inputs/codegen/polly3.st
Log Message:
-----------
[Polly] Update isl to isl-0.27-86-gcf471c16 (#184044)
Update isl to include
https://repo.or.cz/isl.git/commit/d1b49851aca59c1edd01cb1dc97674e6d79d07af
which fixes #180958
Closes #180958
Thanks @skimo-openhub for the fix and @thapgua for the bugreport.
Commit: 81872e7049ea9b19d91bb01da92869060edbf2a3
https://github.com/llvm/llvm-project/commit/81872e7049ea9b19d91bb01da92869060edbf2a3
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
Log Message:
-----------
[NFC] Fix check lines for `clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl` on Darwin (#184042)
Commit: 8774da8f2f4d28e1b806da38af8732603dc63530
https://github.com/llvm/llvm-project/commit/8774da8f2f4d28e1b806da38af8732603dc63530
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
Log Message:
-----------
[MLIR][XeGPU] Preserve anchor layouts in recoverTemporaryLayout (#182186)
Commit: e95dabef96f481d78f2b4da9d6f8b5d27195c2b2
https://github.com/llvm/llvm-project/commit/e95dabef96f481d78f2b4da9d6f8b5d27195c2b2
Author: Twice <twice at apache.org>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/python/mlir/dialects/ext.py
M mlir/test/python/dialects/ext.py
Log Message:
-----------
[MLIR][Python] Support attribute definitions in Python-defined dialects (#183907)
This PR is quite similiar to
https://github.com/llvm/llvm-project/pull/182805.
We added basic support of attribute definitions in Python-defined
dialects, including:
- IRDL codegen for attribute definitions
- Attr builders like `MyAttr.get(..)` and attr parameter accessors (e.g.
`my_attr.param1`)
- Use Python-defined attrs in Python-defined operations
Assisted by GitHub Copilot.
Commit: 686987a540bc176bceaad43ffe530cb3e88796d5
https://github.com/llvm/llvm-project/commit/686987a540bc176bceaad43ffe530cb3e88796d5
Author: Ruiling, Song <ruiling.song at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
A llvm/test/Transforms/InstCombine/AMDGPU/canonicalize-add-to-gep.ll
M llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.wave.shuffle.ll
M llvm/test/Transforms/InstCombine/AMDGPU/mbcnt.ll
Log Message:
-----------
ValueTracking/AMDGPU: handle mbcnt in computeKnownBitsFromOperator (#183229)
This helps canonicalize some address calculation. This would further
help immediate folding into memory load instructions in the backend.
The order changes to v_mad_u32_u24 is just because
@llvm.amdgcn.mul.u24.i32 was used in codegen prepare after this change.
It does not really change anything important.
Commit: 8fff1c042d14d903ad8bcd1b169e06f0ba04882d
https://github.com/llvm/llvm-project/commit/8fff1c042d14d903ad8bcd1b169e06f0ba04882d
Author: Mend Renovate <bot at renovateapp.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M .github/workflows/upload-release-artifact/action.yml
Log Message:
-----------
Update actions/attest-build-provenance action to v4 (#184051)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
|
[actions/attest-build-provenance](https://redirect.github.com/actions/attest-build-provenance)
| action | major | `v3.1.0` → `v4.1.0` |
---
> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/160328) for more information.
---
### Release Notes
<details>
<summary>actions/attest-build-provenance
(actions/attest-build-provenance)</summary>
###
[`v4.1.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v4.1.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v4.0.0...v4.1.0)
> \[!NOTE]
> As of version 4, `actions/attest-build-provenance` is simply a wrapper
on top of
[`actions/attest`](https://redirect.github.com/actions/attest).
>
> Existing applications may continue to use the
`attest-build-provenance` action, but new implementations should use
`actions/attest` instead.
#### What's Changed
- Update RELEASE.md docs by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#836](https://redirect.github.com/actions/attest-build-provenance/pull/836)
- Bump `actions/attest` from 4.0.0 to 4.1.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#838](https://redirect.github.com/actions/attest-build-provenance/pull/838)
- Bump `@actions/attest` from 3.0.0 to 3.1.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#362](https://redirect.github.com/actions/attest/pull/362)
- Bump `@actions/attest` from 3.1.0 to 3.2.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#365](https://redirect.github.com/actions/attest/pull/365)
- Add new `subject-version` input for inclusion in storage record by
[@bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#364](https://redirect.github.com/actions/attest/pull/364)
- Add storage record content to README by
[@bdehamer](https://redirect.github.com/bdehamer) in
[actions/attest#366](https://redirect.github.com/actions/attest/pull/366)
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v4.0.0...v4.1.0>
###
[`v4.0.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v4.0.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v3.2.0...v4.0.0)
> \[!NOTE]
> As of version 4, `actions/attest-build-provenance` is simply a wrapper
on top of
[`actions/attest`](https://redirect.github.com/actions/attest).
>
> Existing applications may continue to use the
`attest-build-provenance` action, but new implementations should use
`actions/attest` instead.
#### What's Changed
- Prepare v4 release by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#835](https://redirect.github.com/actions/attest-build-provenance/pull/835)
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v3.2.0...v4.0.0>
###
[`v3.2.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v3.2.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v3.1.0...v3.2.0)
#### What's Changed
- Bump [@actions/core](https://redirect.github.com/actions/core)
from 1.11.1 to 2.0.1 by
[@dependabot](https://redirect.github.com/dependabot)\[bot] in
[#776](https://redirect.github.com/actions/attest-build-provenance/pull/776)
- Add more documentation on Artifact Metadata Storage Records by
[@malancas](https://redirect.github.com/malancas) in
[#797](https://redirect.github.com/actions/attest-build-provenance/pull/797)
- Update actions/attest to latest version v3.2.0 by
[@malancas](https://redirect.github.com/malancas) in
[#812](https://redirect.github.com/actions/attest-build-provenance/pull/812)
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v3.1.0...v3.2.0>
</details>
---
### Configuration
📅 **Schedule**: Branch creation - Between 12:00 AM and 12:59 AM, only on
Monday ( * 0 * * 1 ) (UTC), Automerge - At any time (no schedule
defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/llvm/llvm-project).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My40My4yIiwidXBkYXRlZEluVmVyIjoiNDMuNDMuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Commit: 52a9eb37db83e1891b20c8d9cf0d03559bb4b2ca
https://github.com/llvm/llvm-project/commit/52a9eb37db83e1891b20c8d9cf0d03559bb4b2ca
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M .github/workflows/upload-release-artifact/action.yml
Log Message:
-----------
[Github] Add TODO around actions/attest
Commit: ab1d59e72524c0fbb77b614c46d67265f1f6a47d
https://github.com/llvm/llvm-project/commit/ab1d59e72524c0fbb77b614c46d67265f1f6a47d
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/unittests/Format/ConfigParseTest.cpp
Log Message:
-----------
[clang-format] Allow InheritParentConfig to accept a directory (#182791)
Add support for `BasedOnStyle: InheritParentConfig=<directory-path>` in
config files to redirect inheritance to the `.clang-format` or
`_clang-format` file in the `<directory_path>` directory.
Closes #107808
Commit: f1620e44412fd01a453f6f36d561bb395e1c0627
https://github.com/llvm/llvm-project/commit/f1620e44412fd01a453f6f36d561bb395e1c0627
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
M clang/test/Misc/nvptx.languageOptsOpenCL.cl
Log Message:
-----------
[OpenCL] Enable __cl_clang_function_scope_local_variables for AMDGPU and NVPTX targets (#183892)
I'd like to use this extension in our downstream SYCL compiler to
implement the __clc__group_scratch helper function, allowing us to
replace .ll files with .cl files for the two targets:
https://github.com/intel/llvm/blob/sycl/libclc/libspirv/lib/amdgcn-amdhsa/group/collectives_helpers.ll
https://github.com/intel/llvm/blob/sycl/libclc/libspirv/lib/ptx-nvidiacl/group/collectives_helpers.ll
Commit: 6d82f143dee1add67f64ceca89a7bce7bcf2277a
https://github.com/llvm/llvm-project/commit/6d82f143dee1add67f64ceca89a7bce7bcf2277a
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/performance/use-std-move.rst
A clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp
Log Message:
-----------
[clang-tidy] New performance linter: performance-use-std-move (#179467)
This linter suggests calls to ``std::move`` when a costly copy would
happen otherwise. It does not try to suggest ``std::move`` when they are
valid but obviously not profitable (e.g. for trivially movable types)
This is a very simple version that only considers terminating basic
blocks. Further work will extend the approach through the control flow
graph.
It has already been used successfully on llvm/lib to submit bugs
#178174,
#178169, #178176, #178172, #178175, #178180, #178178, #178177, #178179,
#178173 and #178167, and on the firefox codebase to submit most of the
dependencies of bug https://bugzilla.mozilla.org/show_bug.cgi?id=2012658
Commit: b8d0bb2ddc77c6f9a856ae90fd1329778c070823
https://github.com/llvm/llvm-project/commit/b8d0bb2ddc77c6f9a856ae90fd1329778c070823
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
Log Message:
-----------
[WebKit checkers] Trivial function analysis ignores some nodelete annotation (#183970)
This PR fixes the bug that TrivialFunctionAnalysis can ignore nodelete
annotation set on some but not all function declarations because it does
not check the annotation on prior declarations unlike
alpha.webkit.NoDeleteChecker which checks it on any declaration by
replacing isNoDeleteFunction with NoDeleteChecker's
hasNoDeleteAnnotation.
Commit: 3270bbf04cbae1d11b6a2283056974b10047094b
https://github.com/llvm/llvm-project/commit/3270bbf04cbae1d11b6a2283056974b10047094b
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M bolt/runtime/instr.cpp
Log Message:
-----------
[BOLT][instr] Make instrumentation counter reset thread safe (#183186)
Use `GlobalWriteProfileMutex` to synchronize between data reset and
dump. Between static counter reset and increment, we use atomic store
in counter reset - the counter increment sequence inserted within user
code already takes care of thread safety, so we just need to make sure
the counter reset code is also thread safe (no torn write to counter).
Commit: b4b32e88dde64ffc97fc0265e356c8743695fe0c
https://github.com/llvm/llvm-project/commit/b4b32e88dde64ffc97fc0265e356c8743695fe0c
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M bolt/runtime/common.h
M bolt/runtime/instr.cpp
Log Message:
-----------
[BOLT][instr] Disable stderr diagnostic output when targeting Android (#183185)
Disable all stderr diagnostic output on Android since there is typically
no terminal to read diagnostic message. The `noinline`annotation is to
keep same inline decision before and after this change. On AArch64
the `.text` section in instr runtime library is now ~4.8 KB smaller.
Commit: 14bcb1a0095408cbf04bad4cea984eb9f448de23
https://github.com/llvm/llvm-project/commit/14bcb1a0095408cbf04bad4cea984eb9f448de23
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2026-03-01 (Sun, 01 Mar 2026)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT] Make sure IOAddressMap exist before lookup (NFC) (#183184)
`BinaryFunction::translateInputToOutputAddress()` contains fallback
logic in case that querying `IOAddressMap` doesn't yield an output
address. Because this function could be called in scenarios where
`IOAddressMap` won't be set up, we should check if the map actually
exists before lookup.
Commit: 1c3327561977a77aea21956c084d63e0e4fd2860
https://github.com/llvm/llvm-project/commit/1c3327561977a77aea21956c084d63e0e4fd2860
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
Log Message:
-----------
[mlir][spirv] Introduce a base class for spirv.TOSA convolution ops (#183751)
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: 265c1f483398e2b8dbbd193258570a16fc4c5e09
https://github.com/llvm/llvm-project/commit/265c1f483398e2b8dbbd193258570a16fc4c5e09
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/max-interleave-factor-debug.ll
Log Message:
-----------
[LV] Add debug print for TTI.MaxInterleaveFactor (NFC) (#183309)
As its not currently visible in the debug output.
---------
Co-authored-by: Sander de Smalen <sander.desmalen at arm.com>
Commit: f7b1107bf5641b199340d08f96980cd228755da7
https://github.com/llvm/llvm-project/commit/f7b1107bf5641b199340d08f96980cd228755da7
Author: Mel Chen <mel.chen at sifive.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/IVDescriptors.h
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
M llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
M llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
M llvm/test/Transforms/LoopVectorize/minmax_reduction.ll
Log Message:
-----------
[IVDescriptors] Remove function FMF attribute check for FP min/max reduction (#183523)
Remove the use of function attributes no-nans-fp-math and
no-signed-zeros-fp-math in FP min/max reduction detection. The required
fast-math flags nnan and nsz should be present on the intrinsic calls,
fcmp and select instructions themselves.
Commit: 51d9b40b0d094f2de64a5ec9493fb8689daf1e08
https://github.com/llvm/llvm-project/commit/51d9b40b0d094f2de64a5ec9493fb8689daf1e08
Author: David Green <david.green at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/sve-lrint.ll
Log Message:
-----------
[AArch64] Remove iXLen from sve-lrint.ll. NFC
Commit: c62c00c52405da2650512ab030bef30a9ccaec6a
https://github.com/llvm/llvm-project/commit/c62c00c52405da2650512ab030bef30a9ccaec6a
Author: Mel Chen <mel.chen at sifive.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/cast-induction.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/version-mem-access.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
Log Message:
-----------
[VPlan] Remove unused VPExpandSCEVRecipe before expansion (#181329)
VPExpandSCEVRecipe may become unused after VPlan optimizations. This
patch removes VPExpandSCEVRecipes with no users before expansion in
expandSCEVs, avoiding generating dead code during VPlan execution.
Commit: 0704b68a027a84863bbdc654df1e2989b4de3ab7
https://github.com/llvm/llvm-project/commit/0704b68a027a84863bbdc654df1e2989b4de3ab7
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/tools/gold/X86/thinlto.ll
Log Message:
-----------
[gold] Fix test
Update for https://github.com/llvm/llvm-project/pull/183793.
Commit: 4922ab9915b0bc8cb6528583fe2da324d2d4bdeb
https://github.com/llvm/llvm-project/commit/4922ab9915b0bc8cb6528583fe2da324d2d4bdeb
Author: Kito Cheng <kito.cheng at sifive.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/CodeGen/RISCV/prefetch.ll
M llvm/test/CodeGen/RISCV/riscv-zihintpause.ll
Log Message:
-----------
[RISCV] Relax codegen predicates for HINT-based instructions (#179872)
Following the assembler/disassembler changes in #178609, this patch also
relaxes the codegen predicates for HINT-based instructions. Since these
instructions use encodings that are architecturally guaranteed not to
trap, the compiler can safely generate them regardless of extension
availability.
Changes:
- int_riscv_pause: Remove HasStdExtZihintpause predicate. The pause
intrinsic now generates the FENCE hint encoding unconditionally.
- NTL hints: Remove hasStdExtZihintntl() check in emitNTLHint().
Non-temporal locality hints are now emitted for all nontemporal memory
operations.
Commit: 36c6c689dc3141b557638808a073b71104e82c35
https://github.com/llvm/llvm-project/commit/36c6c689dc3141b557638808a073b71104e82c35
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M compiler-rt/test/builtins/CMakeLists.txt
Log Message:
-----------
[compiler-rt][ARM] Fix conditions for strict-mode FP testing (#183507)
On sufficiently old versions of the Arm architecture, the optimized FP
routines are not enabled. So commit a84ee1416b6c179 should not have
enabled the extra-strict tests that go with them.
Also in that commit, I wrote a comment saying I was setting two separate
compile-time definitions (-DCOMPILER_RT_ARM_OPTIMIZED_FP and
-DCOMPILER_RT_ARM_OPTIMIZED_FP_THUMB1), and then didn't actually do it!
This caused the strict mulsf3 tests to be wrongly disabled in Thumb2.
Commit: 4c2ac846bb776659ad9b7bf330f0152249b13764
https://github.com/llvm/llvm-project/commit/4c2ac846bb776659ad9b7bf330f0152249b13764
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
M mlir/test/Target/SPIRV/tosa-ops.mlir
Log Message:
-----------
[mlir][spirv] Add Element Binary Logical operators to TOSA Ext Inst Set (#183703)
This patch introduces the following element binary operators:
* spirv.Tosa.LogicalAnd
* spirv.Tosa.LogicalLeftShift
* spirv.Tosa.LogicalRightShift
* spirv.Tosa.LogicalOr
* spirv.Tosa.LogicalXor
Also dialect and serialization round-trip tests have been added.
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: c7e1ec97b9794da3154f44ad198d9b8eaddc7dfd
https://github.com/llvm/llvm-project/commit/c7e1ec97b9794da3154f44ad198d9b8eaddc7dfd
Author: Ritanya-B-Bharadwaj <ritanya.b.bharadwaj at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Lower/OpenMP/task-implicit-firstprivate.f90
Log Message:
-----------
[flang][OpenMP] Implicitly capture variables in enclosing task for nested firstprivate (#183770)
Fixes https://github.com/llvm/llvm-project/issues/181271
If a variable is marked firstprivate in a nested task but not actually
used in the outer task body, we still need the outer task to capture it
as firstprivate. Otherwise the nested task can end up pointing to the
parallel region’s stack frame, which might already be gone when the
deferred task runs, causing a use-after-free.
Commit: 86b07a79a9c34cbd6ecd9e814a68796ca9c38a46
https://github.com/llvm/llvm-project/commit/86b07a79a9c34cbd6ecd9e814a68796ca9c38a46
Author: David Green <david.green at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/arm64-abi-varargs.ll
M llvm/test/CodeGen/AArch64/arm64-abi_align.ll
M llvm/test/CodeGen/AArch64/arm64-variadic-aapcs.ll
M llvm/test/CodeGen/AArch64/ilp32-va.ll
M llvm/test/CodeGen/AArch64/machine-outliner.ll
Log Message:
-----------
[AArch64] Remove -aarch64-load-store-renaming=true from test. NFC
This is the default nowadays, and can be removed from tests not specific to the
feature.
Commit: 037fd6eaaf45e5bd9969d6a62d2b4cbc7820be7a
https://github.com/llvm/llvm-project/commit/037fd6eaaf45e5bd9969d6a62d2b4cbc7820be7a
Author: Mariusz Sikora <mariusz.sikora at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
M llvm/test/MC/AMDGPU/vinterp-fake16.s
M llvm/test/MC/Disassembler/AMDGPU/vinterp.txt
Log Message:
-----------
[AMDGPU] Add VINTERP encoding to gfx13 (#182481)
Commit: 96113ac416e7af1343d4ca9620ac312c301e9fc7
https://github.com/llvm/llvm-project/commit/96113ac416e7af1343d4ca9620ac312c301e9fc7
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/test/CodeGen/ubsan-function-sugared.cpp
M clang/test/CodeGen/ubsan-function.cpp
Log Message:
-----------
[Clang] Use llvm.ptrmask to mask out thumb bit (#183535)
Use llvm.ptrmask instead of a ptrtoint + and + inttoptr sequence to mask
out the thumb bit.
Commit: 3ad43f2d1c03f7f04bd2943e9411a7986b1962c3
https://github.com/llvm/llvm-project/commit/3ad43f2d1c03f7f04bd2943e9411a7986b1962c3
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/intrinsic-select.ll
Log Message:
-----------
[LangRef] Clarify nsz semantics (#180906)
The current LangRef wording says that the sign of a zero argument or
result is "insignificant", which is not really clear on what this means.
Alive2 models this as non-deterministically flipping the zero sign bits
for both inputs and outputs.
This PR proposes to specify this flag as non-deterministically flipping
inputs only. A consequence of this is that fabs is guaranteed to have an
unset sign bit even if the input is zero (that is,
https://alive2.llvm.org/ce/z/irCftQ is no longer a valid transform), and
that the copysign result sign only depends on the second operand (that
is, https://alive2.llvm.org/ce/z/VnHdfh is no longer a valid transform).
These rules are still more liberal than we'd really like them to be, but
at least avoid some of the issues with nsz.
This is based on the discussion in:
https://discourse.llvm.org/t/rfc-clarify-the-behavior-of-fp-operations-on-bit-strings-with-nsz-flag/85981
Commit: 900f70258b905d0b5d9eaecc74cc9130e79f899d
https://github.com/llvm/llvm-project/commit/900f70258b905d0b5d9eaecc74cc9130e79f899d
Author: David Spickett <david.spickett at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M lldb/include/lldb/Utility/AnsiTerminal.h
M lldb/source/Interpreter/Options.cpp
M lldb/test/API/commands/help/TestHelp.py
M lldb/unittests/Utility/AnsiTerminalTest.cpp
Log Message:
-----------
[lldb] Indent option help with ANSI cursor codes when possible. (#183558)
This avoids formatting empty space when a range of text formatted by
ANSI codes is split across lines.
This is not currently done in any option, but the `${...}` syntax we
have does support marking any range of text, so it could be done in
future, and fixing it is simple.
As an example, if I change a breakpoint option:
```
"${S}et the breakpoint only in this shared library. Can repeat "
- "this option multiple times to specify multiple shared libraries.">;
+ "this option multiple ${times to specify multiple} shared libraries.">;
```
This applies the underline to words that will be split across lines. In
the outputs below, `^` represents an underlined character.
With spaces:
```
-s <shlib-name> ( --shlib <shlib-name> )
Set the breakpoint only in this shared library. Can repeat this option multiple times to
^^^^^^^^
specify multiple shared libraries.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
```
The indent and the text are underlined, this is not what we want.
With cursor movement:
```
-s <shlib-name> ( --shlib <shlib-name> )
Set the breakpoint only in this shared library. Can repeat this option multiple times to
^^^^^^^^
specify multiple shared libraries.
^^^^^^^^^^^^^^^^
```
Only the text is underlined, which is correct.
If we are not allowed to use ANSI (use-color is off), then the
descriptions will be stripped of ANSI anyway, so this is not a problem.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: f46aca9bf84e810e3c97216a4d95eebc5652f651
https://github.com/llvm/llvm-project/commit/f46aca9bf84e810e3c97216a4d95eebc5652f651
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
Log Message:
-----------
[AArch64] Combine (and/or X, (dup (not Y))) -> (bic/orn X, (dup Y)) (#175739)
Commit: 925ec952ddd88f51fe022c5caeb47c6bbdca6c6f
https://github.com/llvm/llvm-project/commit/925ec952ddd88f51fe022c5caeb47c6bbdca6c6f
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/MC/ARM/dwarf-asm-multiple-sections.s
Log Message:
-----------
[llvm][DebugInfo][test] dwarf-asm-multiple-sections.s: refine FileCheck checks
Renames the `DWARF6` check-prefix to `DWARF7` because it's the check we use for `-dwarf-version 7`.
Also adds a check prefix for just `-dwarf-version 5` because we will
diverge DWARFv5 and DWARFv6 CU langauge attribute in https://github.com/llvm/llvm-project/pull/183897.
Commit: 0c89071fa33ff0b8a719a1671f2b3551ccf0902a
https://github.com/llvm/llvm-project/commit/0c89071fa33ff0b8a719a1671f2b3551ccf0902a
Author: Kleis Auke Wolthuizen <github at kleisauke.nl>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/utils/git/github-automation.py
Log Message:
-----------
github-automation.py: Fix mis-indented statement (#149653)
Ensure all reviewers who approved the original PR are properly notified
and added as reviewers on backport PRs.
Resolves: #109429.
Commit: 61faf7d3db72dcfe8d19f9bd926133be1be0f62b
https://github.com/llvm/llvm-project/commit/61faf7d3db72dcfe8d19f9bd926133be1be0f62b
Author: Ryan Cowan <ryan.cowan at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/inttoptr_add.ll
M llvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-build-vector.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-constant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-dup.mir
M llvm/test/CodeGen/AArch64/aarch64-mops.ll
M llvm/test/CodeGen/AArch64/arm64-fp-imm-size.ll
M llvm/test/CodeGen/AArch64/arm64-fp-imm.ll
M llvm/test/CodeGen/AArch64/arm64-fp128.ll
M llvm/test/CodeGen/AArch64/arm64-vhadd.ll
M llvm/test/CodeGen/AArch64/dup.ll
M llvm/test/CodeGen/AArch64/fcvt_combine.ll
M llvm/test/CodeGen/AArch64/fpimm.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
M llvm/test/CodeGen/AArch64/frem-power2.ll
M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
M llvm/test/CodeGen/AArch64/neon-extadd-extract.ll
M llvm/test/CodeGen/AArch64/rem-by-const.ll
Log Message:
-----------
[AArch64][GlobalISel] Use GPR for illegal fconstants and extend < 32 bit GPR constants to 32 bits (#178692)
In a similar fashion to
https://github.com/llvm/llvm-project/pull/175810, this PR aims to
simplify the handling of constants by extending smaller than 32 bit
integer constants to 32 bits in regbankselect. This is only done for
constants that were going to be assigned to a GPR and aims to simplify
the selection of these.
In addition, fconstants that would have lead to a constant pool load
because they are illegal as immediates (except for 128 bit) are now
converted to a constant on GPR registers before being copied to the FPR.
This hopefully reduces cache pressure & simplifies selection.
I have tried to rely on tablegen as much as possible for selecting the
instructions for this.
Commit: 730587d3be6cdd984d91336c0992176d72f5d5c1
https://github.com/llvm/llvm-project/commit/730587d3be6cdd984d91336c0992176d72f5d5c1
Author: Aaron Smull <45045667+asmull at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 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 DemandedElts for ISD::SMIN/SMAX (#184054)
Resolves #183039
Commit: 13751c87076b9fe1c235a951e75715a6761203a7
https://github.com/llvm/llvm-project/commit/13751c87076b9fe1c235a951e75715a6761203a7
Author: David Sherwood <david.sherwood at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/CodeGen/AArch64/replace-with-veclib-armpl.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll
Log Message:
-----------
[AArch64] Vectorise llvm.pow using vector intrinsic for ArmPL library (#183319)
When vectorising loops containing calls to the llvm.pow intrinsic we
currently end up with direct calls to the vector math library equivalent
of llvm.pow. This causes problems later on because we then miss out on
optimisations in the backend for things like
pow(x, 0.25)
pow(x, 0.75)
etc.
There are a few different ways of trying to solve this, but I think the
cleanest way is to leave the call in the intrinsic form and then teach
the backend how to lower the FPOW DAG node to the vector math library
function. This is similar to what we already do for llvm.sincos/FSINCOS
today.
I've done this by removing the entries in Analysis/VecFuncs.def that map
the intrinsic to the vector math functions, whilst also teaching the
cost model that the vector intrinsic form of llvm.pow is cheap in the
presence of the library.
Commit: e3b01e132908836aebc142d5e92d96314fd44951
https://github.com/llvm/llvm-project/commit/e3b01e132908836aebc142d5e92d96314fd44951
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
Log Message:
-----------
[lldb] Fix wchar addition tests in DIL (#184082)
This patch fixes tests on systems where `wchar`'s underlying type is
`unsigned long`, or `long` and `int` types have the same width, so
`unsigned int` gets promoted to `unsigned long` during binary addition.
These tests check that `wchar` types get promoted to regular integer
types at all.
Commit: e44fd05035a3d6a55fff4e29049ba05340c447da
https://github.com/llvm/llvm-project/commit/e44fd05035a3d6a55fff4e29049ba05340c447da
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/Maintainers.md
M mlir/docs/TargetLLVMIR.md
R mlir/include/mlir-c/Dialect/AMX.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Conversion/VectorToAMX/VectorToAMX.h
R mlir/include/mlir/Dialect/AMX/AMX.td
R mlir/include/mlir/Dialect/AMX/AMXDialect.h
R mlir/include/mlir/Dialect/AMX/AMXInterfaces.td
R mlir/include/mlir/Dialect/AMX/CMakeLists.txt
R mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/Dialect/CMakeLists.txt
M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
M mlir/include/mlir/Dialect/X86/Transforms.h
M mlir/include/mlir/Dialect/X86/X86.td
M mlir/include/mlir/Dialect/X86/X86Dialect.h
R mlir/lib/CAPI/Dialect/AMX.cpp
M mlir/lib/CAPI/Dialect/CMakeLists.txt
M mlir/lib/Conversion/VectorToAMX/CMakeLists.txt
M mlir/lib/Conversion/VectorToAMX/VectorToAMX.cpp
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
R mlir/lib/Dialect/AMX/CMakeLists.txt
R mlir/lib/Dialect/AMX/IR/AMXDialect.cpp
R mlir/lib/Dialect/AMX/IR/CMakeLists.txt
R mlir/lib/Dialect/AMX/Transforms/CMakeLists.txt
R mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/CMakeLists.txt
M mlir/lib/Dialect/X86/IR/X86Dialect.cpp
M mlir/lib/Dialect/X86/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/RegisterAllDialects.cpp
M mlir/lib/RegisterAllExtensions.cpp
M mlir/test/CMakeLists.txt
M mlir/test/Conversion/VectorToAMX/contract-to-amx.mlir
M mlir/test/Conversion/VectorToAMX/transfer-to-amx.mlir
M mlir/test/Conversion/VectorToLLVM/pass-option-serialization.mlir
R mlir/test/Dialect/AMX/invalid.mlir
R mlir/test/Dialect/AMX/legalize-for-llvm.mlir
R mlir/test/Dialect/AMX/roundtrip.mlir
R mlir/test/Dialect/AMX/side-effects.mlir
M mlir/test/Dialect/Linalg/invalid.mlir
A mlir/test/Dialect/X86/AMX/invalid.mlir
A mlir/test/Dialect/X86/AMX/legalize-for-llvm.mlir
A mlir/test/Dialect/X86/AMX/roundtrip.mlir
A mlir/test/Dialect/X86/AMX/side-effects.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/lit.local.cfg
R mlir/test/Integration/Dialect/Vector/CPU/AMX/mulf-full.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/mulf.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/muli-ext.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/muli-full.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/muli.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/tilezero-block.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/tilezero.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/lit.local.cfg
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/mulf-full.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/mulf.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/muli-ext.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/muli-full.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/muli.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/tilezero-block.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/tilezero.mlir
M mlir/test/Integration/Dialect/Vector/CPU/X86/dot.mlir
M mlir/test/Integration/Dialect/Vector/CPU/X86/sparse-dot-product.mlir
M mlir/test/Target/LLVMIR/amx.mlir
M mlir/test/lit.site.cfg.py.in
M mlir/test/mlir-opt/commandline.mlir
Log Message:
-----------
[mlir][x86] Move AMX dialect into X86 dialect (#183717)
Unifies the two dialects that define x86 operations into a single one.
The AMX dialect is moved into X86 in line with other x86 extensions.
Following the dialect renaming, X86 dialect is now a suitable home for
wider range of operations targeting specific hardware features. Moving
AMX definitions to X86 dialect creates a single, centralized hub for
defining all x86 intrinsic-like operations. The new grouping aims to
eliminate the need for new dialects as new hardware extensions become
available.
The two dialects are simply merged together. X86 dialect refactoring
will be addressed separately.
List of changes:
- operations: 'amx.tile_*' => 'x86.amx.tile_*'
- types: '!amx.tile' => '!x86.amx.tile'
- namespace: 'mlir::amx' => 'mlir::x86::amx'
- test define: 'MLIR_RUN_AMX_TESTS' => 'MLIR_RUN_X86_AMX_TESTS'
- vector lowering: AMX is enabled by default together with X86
The MLIR AMX tests are now nested under X86 directory. To enable AMX
integration tests, 'MLIR_RUN_X86_TESTS' must also be defined.
Commit: 482a7718a8d8376b56e9dad7432624c1491ee1e6
https://github.com/llvm/llvm-project/commit/482a7718a8d8376b56e9dad7432624c1491ee1e6
Author: fbrv <Fabio.Baravalle at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/RISCV/combine-clmul.ll
M llvm/test/CodeGen/X86/combine-clmul.ll
Log Message:
-----------
[DAG] visitCLMUL - fold (clmul x, c_pow2) -> (shl x, log2(c_pow2)) (#184049)
Implements the missing basic folds for `ISD::CLMUL` in `visitCLMUL`:
- `(clmul x, 1)` → `x`
- `(clmul x, c_pow2)` → `(shl x, log2(c_pow2))`
These were previously only folded during scalar expansion
(`expandCLMUL`), so targets with native CLMUL support (e.g. X86 pclmul,
RISCV Zbc) never had the opportunity to simplify these cases.
Fixes #181831
Commit: 00af181a4eddad6ad2b0ea2e435ecde5f4033314
https://github.com/llvm/llvm-project/commit/00af181a4eddad6ad2b0ea2e435ecde5f4033314
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/test/Dialect/EmitC/form-expressions.mlir
Log Message:
-----------
[mlir][emitc] Fix crash in form-expressions when identity cast is folded (#183894)
When the --form-expressions pass runs applyPatternsGreedily, the greedy
rewriter calls CastOpInterface::foldTrait on ops inside ExpressionOp
bodies. For an identity cast (e.g. `emitc.cast i32 to i32`), this fold
succeeds and replaces the op's result with its operand (a block
argument), leaving the ExpressionOp body in the form `{ yield %arg }`.
Subsequently, if the cast expression's result had its use count reduced
to one (e.g. because a dead non-EmitC use was eliminated),
FoldExpressionOp would select this expression as a candidate to fold
into an outer expression. It then calls usedExpression.getRootOp(),
which returns nullptr because the body yields a block argument rather
than an op result. The subsequent mapper.lookup(nullptr) crashes with an
assertion.
Fix by adding a FoldTrivialExpressionOp canonicalization pattern that
handles ExpressionOps whose body yields a block argument directly: such
an expression is a passthrough and can be replaced by the corresponding
operand value. This canonicalization fires during greedy rewriting
before FoldExpressionOp encounters the invalid state.
Fixes #179844
Commit: c1d82e2f3e83c89b78825233afe05796ae2f73c0
https://github.com/llvm/llvm-project/commit/c1d82e2f3e83c89b78825233afe05796ae2f73c0
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/lib/Reducer/OptReductionPass.cpp
Log Message:
-----------
[mlir][reducer] Use LDBG in opt-reduction-pass (NFC) (#184026)
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 6cce18b9f5185e7285a3de5202b494282e6ef43f
https://github.com/llvm/llvm-project/commit/6cce18b9f5185e7285a3de5202b494282e6ef43f
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/test/Transforms/LoopIdiom/AArch64/find-first-byte.ll
Log Message:
-----------
[LoopIdiomVectorize] Avoid wrapping in find_first_of loops. (#180570)
As noted in
https://github.com/llvm/llvm-project/pull/179298#discussion_r2757948654,
use integer induction variables to avoid potential pointer wrap.
Commit: 47383919d11171607ec2f00d4122a1a958551a3e
https://github.com/llvm/llvm-project/commit/47383919d11171607ec2f00d4122a1a958551a3e
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64][NFC] Remove unused parameters for `performORCombine` (#184075)
Commit: dd871f55f01870bb29468ceea89f7b810a330add
https://github.com/llvm/llvm-project/commit/dd871f55f01870bb29468ceea89f7b810a330add
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang/test/Lower/HLFIR/goto-do-body.f90
Log Message:
-----------
[flang] Use CHECK-DAG to check constants (NFC) (#184097)
It is part of https://github.com/llvm/llvm-project/pull/180556, as a
separate NFC PR.
Commit: 52df4a19599b9b51bc8ac7c612e979e361aded93
https://github.com/llvm/llvm-project/commit/52df4a19599b9b51bc8ac7c612e979e361aded93
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
Log Message:
-----------
[AMDGPU] Fix typos "SPGR" / "VPGR" in comments
Commit: 82a1905c4bd33c26d8d91c3ba892652d978f7b74
https://github.com/llvm/llvm-project/commit/82a1905c4bd33c26d8d91c3ba892652d978f7b74
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Log Message:
-----------
InstCombine: Pass SimplifyQuery through SimplifyDemandedFPClass (#184096)
Commit: d2b6a5a3f6e8a1d9bf0ff2d6329653f9873d3c4d
https://github.com/llvm/llvm-project/commit/d2b6a5a3f6e8a1d9bf0ff2d6329653f9873d3c4d
Author: Pradeep Kumar <pradeepku at nvidia.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
Log Message:
-----------
[LLVM][NVPTX] Fix infinite legalization loop in tcgen05.st (#183012)
This commit adds missing legalizer check without which ISel Lowering gets stuck in an infinite loop
Commit: 24d21ca03cd2ba7792f72c5acad1d8715b622237
https://github.com/llvm/llvm-project/commit/24d21ca03cd2ba7792f72c5acad1d8715b622237
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang/lib/Semantics/check-omp-loop.cpp
A flang/test/Semantics/OpenMP/fuse1.f90
Log Message:
-----------
[flang][OpenMP] Fix counting generated nests (#183957)
The code in `CountGeneratedNests` returned std::nullopt if the LOOPRANGE
clause was not present on a FUSE construct. That is incorrect, the
answer should be 1 instead, except in cases where the FUSE itself was
invalid, such as having no loops nested in it.
Returning std::nullopt will not cause any messages to be emitted. The
case of zero loops inside of FUSE will be diagnosed when analyzing the
body of the FUSE construct itself, not when checking a construct in
which the FUSE is nested.
This prevents error messages caused by the same problem from being
emitted for every enclosing loop construct.
Commit: b39247c391c4eca1ce1a327716ca5e8e7557feb7
https://github.com/llvm/llvm-project/commit/b39247c391c4eca1ce1a327716ca5e8e7557feb7
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
Log Message:
-----------
[AMDGPU] Fix typo "PGRM" in variable name. NFC. (#184104)
Commit: 87cbea6cdc9a55c1fda2d83820d0d81f314868a7
https://github.com/llvm/llvm-project/commit/87cbea6cdc9a55c1fda2d83820d0d81f314868a7
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M openmp/cmake/modules/LibompHandleFlags.cmake
M openmp/cmake/modules/LibompUtils.cmake
M openmp/docs/CMakeLists.txt
M openmp/libompd/src/CMakeLists.txt
M openmp/runtime/CMakeLists.txt
M openmp/runtime/cmake/LibompExports.cmake
M openmp/runtime/cmake/LibompMicroTests.cmake
M openmp/runtime/cmake/config-ix.cmake
M openmp/runtime/src/CMakeLists.txt
M openmp/tools/omptest/CMakeLists.txt
Log Message:
-----------
[openmp][cmake][NFCI] Avoid non-eval uses of ${var} (#182267)
When using
set(var "Example")
if (${var})
CMake will first resolve the if-argument to
if (Example)
And what then happens depends on the existance of a variable with the
name "Example":
1. If instead of "Example", a truth constant is used ("TRUE", "FALSE",
"ON", "OFF", "", "-NOTFOUND" ...), it is prioritized
(https://cmake.org/cmake/help/latest/command/if.html#constant)
2. If a variable with the name "Example" exists: Use the truthiness of
its content
(https://cmake.org/cmake/help/latest/command/if.html#variable)
3. Otherwise, it is false-y
That is, the the result of the conditional does not only depend on the
content of `var`, but also some other variable. This is usually
unintended and leads to problems such as addressed with #154537. The
only case where this is intended is when passing an expression to be
evaluated such as with `pythonize_bool`, `append_if` and
`libomp_append`. In all other cases, using `${var}` without quotes is a
pattern to be avoided.
Remark:
If `${var}` is not one of the values considered a [truthiness
constant](https://cmake.org/cmake/help/latest/command/if.html#constant),
the result of `if (var)` and `if ("${var}")` is different:
* `if (var)` is true-ish
(https://cmake.org/cmake/help/latest/command/if.html#variable)
* `if ("Example")` and therefore `if ("${var}")` are false-y
(https://cmake.org/cmake/help/latest/command/if.html#string)
In this PR I am preferring `if (var)` over `if ("${var}")` because has
less clutter, resembles Python's behaviour, and problably what most
users are expecting, even though `if (${var})` in most cases would
evaluate to false-y because a variable does not exist. This ambiguity
does not exist for STREQUAL and MATCHES.
Commit: 88693c49d9ac58a33af5978d31f6c70fe1d5b45b
https://github.com/llvm/llvm-project/commit/88693c49d9ac58a33af5978d31f6c70fe1d5b45b
Author: Ella Ma <alansnape3058 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
R clang/test/Analysis/PR37855.c
R clang/test/Analysis/bitint-z3.c
R clang/test/Analysis/cstring-addrspace.c
R clang/test/Analysis/unary-sym-expr-z3-refutation.c
R clang/test/Analysis/z3-crosscheck-max-attempts.cpp
R clang/test/Analysis/z3-crosscheck.c
R clang/test/Analysis/z3-refute-enum-crash.cpp
R clang/test/Analysis/z3-unarysymexpr.c
A clang/test/Analysis/z3/PR37855.c
A clang/test/Analysis/z3/bitint-z3.c
A clang/test/Analysis/z3/cstring-addrspace.c
A clang/test/Analysis/z3/unary-sym-expr-z3-refutation.c
A clang/test/Analysis/z3/z3-crosscheck-max-attempts.cpp
A clang/test/Analysis/z3/z3-crosscheck.c
A clang/test/Analysis/z3/z3-refute-enum-crash.cpp
A clang/test/Analysis/z3/z3-unarysymexpr.c
Log Message:
-----------
[NFC][analyzer][test][z3] Move test cases requiring Z3 to the `Analysis/z3/` subdirectory (#183724)
Addressing #181581, continuing #183034
This enables executing all test cases with the `REQUIRES: z3` tag via
the `check-clang-analysis-z3` target.
Commit: 60fec80bdcb3b1bc4f67ebf56ff509fef0097c85
https://github.com/llvm/llvm-project/commit/60fec80bdcb3b1bc4f67ebf56ff509fef0097c85
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/cast-induction.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/version-mem-access.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
Log Message:
-----------
Revert "[VPlan] Remove unused VPExpandSCEVRecipe before expansion" (#184108)
Reverts llvm/llvm-project#181329
Breaks: https://lab.llvm.org/buildbot/#/builders/123/builds/36163
Local revert fixes the issue seen in the buildbot.
Commit: cd0eb16a11f8c3102d1fe0d8d135b9f592515ff9
https://github.com/llvm/llvm-project/commit/cd0eb16a11f8c3102d1fe0d8d135b9f592515ff9
Author: David Green <david.green at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
Log Message:
-----------
[AArch64] Add maybe_unused to DstTy in assert. NFC
Commit: ce79fb371245c53cad00817b246e920f21568e08
https://github.com/llvm/llvm-project/commit/ce79fb371245c53cad00817b246e920f21568e08
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume-icmp-null-select.ll
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
Log Message:
-----------
[InstCombine] Always fold nonnull assumptions into operand bundles (#169923)
Fixes #168688
Commit: bcc272b3220fac5badb3e2f439f6d91fae15c4f4
https://github.com/llvm/llvm-project/commit/bcc272b3220fac5badb3e2f439f6d91fae15c4f4
Author: Luke Lau <luke at igalia.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
Log Message:
-----------
[LV] Remove DataAndControlFlowWithoutRuntimeCheck. NFC (#183762)
After #144963 and #183292 we never emit the runtime check, so
DataAndControlFlowWithoutRuntimeCheck is equivalent to
DataAndControlFlow.
With that we only need to store one tail folding style instead of two,
because we don't need to distinguish whether or not the IV update
overflows (to a non-zero value)
Commit: 4af885c0c13c0cf1fe9aee554634020d801b4999
https://github.com/llvm/llvm-project/commit/4af885c0c13c0cf1fe9aee554634020d801b4999
Author: Gaëtan Bossu <gaetan.bossu at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/zext-shuffle.ll
Log Message:
-----------
[AArch64] Fix performZExtUZPCombine() DAG combine (#183765)
This used to look through all extract_subvector nodes, including those
extracting a fixed vector from a scalable one. One consequence is that
we could end up generating a NVCAST from a scalable vector to a fixed
one, even when vscale was unknown.
Commit: 4a907a526dd735acf7433be2cbddb30d48e96095
https://github.com/llvm/llvm-project/commit/4a907a526dd735acf7433be2cbddb30d48e96095
Author: Shaojie Zhu <shaojie.zhu at intel.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/cmake/modules/LLVMConfig.cmake.in
M llvm/docs/CMake.rst
Log Message:
-----------
[CMake] Add LLVM_ENABLE_WARNING_SUPPRESSIONS to toggle warning suppressions (#183439)
This PR introduces a new opt-in CMake option
`LLVM_ENABLE_WARNING_SUPPRESSIONS` (default `ON`) to toggle warning
suppressions
Previously, several compiler warnings were explicitly disabled using
`-wd` (for MSVC) or `-Wno-...` (for GCC/Clang) flags by default.
However, this causes validation failures with strict compliance scanners
like BinSkim, which require builds to run without any warning
suppressions to meet SDL compliance standards.
This change introduces an opt-in `LLVM_ENABLE_WARNING_SUPPRESSIONS`
option (default ON). When explicitly disabled (OFF), it selectively
filters out the `-wd` flags for MSVC and removes all `-Wno-...` flags
for GCC/Clang in HandleLLVMOptions.cmake. This ensures all compiler
warnings are exposed as intended for static analysis tools while
preserving the default noise-free build experience for regular users.
The option has also been exported to `LLVMConfig.cmake.in` and
documented in `CMake.rst`.
Signed-off-by: Zhu, Shaojie <shaojie.zhu at intel.com>
Commit: 9d5ca5282d13603dc923d4710cbb7c1ef5089dfd
https://github.com/llvm/llvm-project/commit/9d5ca5282d13603dc923d4710cbb7c1ef5089dfd
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/Value.h
M llvm/lib/IR/Value.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Log Message:
-----------
[IR] Return bool from replaceUsesWithIf() (#184107)
We regularly want to know whether replaceUsesWithIf() actually replaced
any uses for the purpose of change tracking. It's possible to do this by
maintaining a Changed flag inside the callback, but it's cleaner if the
method directly returns whether it modified anything.
Commit: 4e8be20faa1c3bc43f18eb1b250453e69aaf4eca
https://github.com/llvm/llvm-project/commit/4e8be20faa1c3bc43f18eb1b250453e69aaf4eca
Author: earnol <earnol at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
A clang/test/Sema/multi-dim-array.c
Log Message:
-----------
[clang][test] Add multi-dim-array diagnostic test for multi-dimensional array function passing (#183847)
Add test coverage for incompatible pointer type diagnostics when passing
multidimensional arrays to functions expecting flat pointers. Tests
covers 2D, 3D, 4D arrays, zero-sized dimensions, struct arrays, and type
mismatches.
Co-authored-by: Vladislav Aranov <vladislav.aranov at ericsson.com>
Commit: 977355be38d10c62c3d5498a64618ec926348252
https://github.com/llvm/llvm-project/commit/977355be38d10c62c3d5498a64618ec926348252
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Dialect/Tosa/error_if_check.mlir
Log Message:
-----------
[mlir][tosa] Disallow inferable dim in reshape/slice validation (#182472)
This commit ensures that the validation pass checks for the presence of
inferable dimensions (represented by -1) in reshape and slice
operations. These are not compliant with the TOSA specification. If such
dimensions are found, an error message is emitted indicating that they
do not conform to the TOSA specification.
Commit: 19be8d60662be4972cf52ca58a3c35e0983c1d73
https://github.com/llvm/llvm-project/commit/19be8d60662be4972cf52ca58a3c35e0983c1d73
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
Log Message:
-----------
[mlir][tosa] Fix crash in TosaInferShapes when while_loop carries sparse tensors (#183943)
TypeModificationState::commit() inserted a tensor.cast immediately after
the defining operation of the value whose type changed. For block
arguments (e.g., loop-carried variables in tosa.while_loop), there is no
defining operation, so getDefiningOp() returns nullptr, causing a
segmentation fault when the insertion point was set via
setInsertionPointAfter(nullptr).
Fix by checking whether the value is defined by an operation; if not
(i.e., it is a block argument), insert the cast at the start of the
block that owns the argument.
Fixes #181449
Commit: c5e5c9735a33909e2268f99e84654e46bd98b109
https://github.com/llvm/llvm-project/commit/c5e5c9735a33909e2268f99e84654e46bd98b109
Author: sweiglbosker <stefan at s00.xyz>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Dialect/MemRef/high-rank-overflow.mlir
Log Message:
-----------
[MLIR][MemRef] Validate linear size before lowering allocs (#179155)
See discussion here: https://github.com/llvm/llvm-project/pull/178395,
https://github.com/llvm/llvm-project/pull/178994
Detect when the total number of elements overflows, and allocate poison
instead of the overflowed size.
Commit: 1175046d14b9ce11c6b171df4e935882fe2c80b3
https://github.com/llvm/llvm-project/commit/1175046d14b9ce11c6b171df4e935882fe2c80b3
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M libc/test/CMakeLists.txt
M libc/test/lit.site.cfg.py.in
Log Message:
-----------
[libc] Fix GPU loader propagation to lit test infrastructure (#184105)
The lit-based test execution added in c776a52fa263 did not propagate the
GPU loader executable to the lit site configuration. When building for
GPU targets, the loader (amdhsa-loader, nvptx-loader, or a
user-specified LIBC_GPU_LOADER_EXECUTABLE) was resolved into the
libc.utils.gpu.loader target but never passed through to the generated
lit.site.cfg.py.
Fix this by resolving the executable path from the libc.utils.gpu.loader
target property and including it in configure_lit_site_cfg's PATHS list.
In lit.site.cfg.py.in, if no explicit LIBC_TEST_CMD is set but a GPU
loader is present, construct libc_test_cmd from the loader path,
mirroring the logic in add_libc_hermetic() in LLVMLibCTestRules.cmake.
Tested:
* GPU build with LIBC_GPU_LOADER_EXECUTABLE set to /bin/echo used to
fail (tried to run the binary), now it works.
* Native compiler check-libc-lit continues to work after this change.
Commit: e0fa4952fd7853c542639f0747a8a06435486a7d
https://github.com/llvm/llvm-project/commit/e0fa4952fd7853c542639f0747a8a06435486a7d
Author: David Green <david.green at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
Log Message:
-----------
[ARM] Format ARMLoadStoreOptimizer Pass classes. NFC
These will need modifications to support the NPM, pre-format the classes to
reduce the needed differences.
Commit: eb8f171629730ed73004afd5c535c696fcd5191d
https://github.com/llvm/llvm-project/commit/eb8f171629730ed73004afd5c535c696fcd5191d
Author: Fady Farag <com.webkit.iidmsa at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/test/C/C11/n1311.c
Log Message:
-----------
[clang][test] Add missing FileCheck pipe in n1311.c (#183965)
The test had CHECK directives that were never executed because the RUN
line did not pipe the output to FileCheck.
Commit: cca5bb52f37af8ff263af68e5efd4afbe106185b
https://github.com/llvm/llvm-project/commit/cca5bb52f37af8ff263af68e5efd4afbe106185b
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/task_codegen.cpp
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/IR/IRBuilder.cpp
Log Message:
-----------
[OpenMP] Use CreatePtrDiff() (#184127)
This will use ptrtoaddr instead of ptrtoint in the pointer difference
calculation, avoiding unnecessary provenance exposure.
Add an IsNUW flag to allow specifying nuw on the subtraction.
Commit: bb42c74b05c6070c894a4e45be3c750c80b56111
https://github.com/llvm/llvm-project/commit/bb42c74b05c6070c894a4e45be3c750c80b56111
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp
Log Message:
-----------
[clang-tidy] Add fixit capability to performance-use-std-move linter (#184072)
Commit: 644f07cef5dca8d7926da866a09af1e42d356e12
https://github.com/llvm/llvm-project/commit/644f07cef5dca8d7926da866a09af1e42d356e12
Author: Akimasa Watanuki <mencotton0410 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
Log Message:
-----------
[CIR] Use `-verify` on clang/test/CIR/CodeGen/nonzeroinit-struct.cpp (#183910)
Update clang/test/CIR/CodeGen/nonzeroinit-struct.cpp to use `-verify`
with expected CIR NYI diagnostics.
Commit: 919ae1cd2f464e5e453049fe17662b5fbdfc2504
https://github.com/llvm/llvm-project/commit/919ae1cd2f464e5e453049fe17662b5fbdfc2504
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M lldb/test/API/tools/lldb-dap/variables/children/TestDAP_variables_children.py
Log Message:
-----------
[lldb-dap] Skip return_variable_with_children on arm64 (#184132)
In lldb arm64 does not support scalar return types that is larger than
the register size. skip the test on that architecture.
Unblocks CI.
Commit: 8da1bb891e003b4fdf4253a76b05ad8d4a19cceb
https://github.com/llvm/llvm-project/commit/8da1bb891e003b4fdf4253a76b05ad8d4a19cceb
Author: Janek van Oirschot <janek.vanoirschot at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/imm.ll
M llvm/test/CodeGen/AMDGPU/siloadstoreopt-misaligned-regsequence.ll
Log Message:
-----------
Reapply "[AMDGPU] Elide bitcast fold i64 imm to build_vector" (#160325) (#184114)
Reapplies commit 341cdbc9703d3cdd151f897b63548387f0017f49
Commit: 07068315776663412b801c964d99207071564ff2
https://github.com/llvm/llvm-project/commit/07068315776663412b801c964d99207071564ff2
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Fix build after changes from #183856. (#184134)
This PR fixes the bazel build breakages introduced by #183856, which
introduced a new CMake flag that wasn't set in the bazel build, thus
leading to a placeholder not being replaced and a consequent syntax
error. The fix consists of setting this value to the default (`0`),
which is how similar flags are handled.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: dfcbf6c70e7088e4b10e9c9c47bdfa19eb031228
https://github.com/llvm/llvm-project/commit/dfcbf6c70e7088e4b10e9c9c47bdfa19eb031228
Author: lijinpei-amd <jinpei.li at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/test/Transforms/CorrelatedValuePropagation/conflict.ll
M llvm/test/Transforms/CorrelatedValuePropagation/icmp.ll
Log Message:
-----------
[CVP] Stop CVP constant propagation from destroying `llvm.assume` (#183688)
For following code sequence:
```
%cmp = icmp ugt i64 %idx, 1
tail call void @llvm.assume(i1 %cmp)
```
CVP may replace all use of `%cmp` with `true`, and the information about
`%idx` is lost. This commit stop CVP from doing that, so that later pass
can exploit the `llvm.assume`.
Fixes https://github.com/llvm/llvm-project/issues/90206.
Commit: bc0af9901b5178204ece0658a0a0b0f57aef6aac
https://github.com/llvm/llvm-project/commit/bc0af9901b5178204ece0658a0a0b0f57aef6aac
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/docs/TableGen/BackEnds.rst
M llvm/include/llvm/TableGen/SearchableTable.td
M llvm/test/TableGen/generic-tables.td
M llvm/utils/TableGen/SearchableTableEmitter.cpp
Log Message:
-----------
[TableGen] Allow specification of underlying type for GenericEnum (#183769)
Allow specification of the underlying C++ data type for `GenericEnum`.
I ran into this because I was trying to use a TableGen-genered enum in
`DenseSet` which requires the underlying type be specified.
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Commit: 4f84347b2e7e02b4fbcb43376a93a1e9dd198c66
https://github.com/llvm/llvm-project/commit/4f84347b2e7e02b4fbcb43376a93a1e9dd198c66
Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/tools/llvm-ir2vec/bindings/ir2vec-bindings.py
M llvm/tools/llvm-ir2vec/Bindings/PyIR2Vec.cpp
M llvm/tools/llvm-ir2vec/lib/Utils.cpp
M llvm/tools/llvm-ir2vec/lib/Utils.h
Log Message:
-----------
[llvm-ir2vec] Adding Inst Embeddings Map API to ir2vec python bindings (#180140)
- Returns a Inst Embedding Map based on the input function name
`getInstEmbMap(funcName) -> Map<Inst string, Embedding>`
- Refactors IR2VecTool methods to have a separate call to create the
embedder object
Commit: dbacb148dc41e16b1fdb33f83097816235106614
https://github.com/llvm/llvm-project/commit/dbacb148dc41e16b1fdb33f83097816235106614
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel][libc] Enable layering_check for libc/BUILD.bazel (#183822)
Commit: 24ac5987b482edb33b73f0ebff509e0a520eca1c
https://github.com/llvm/llvm-project/commit/24ac5987b482edb33b73f0ebff509e0a520eca1c
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel][libc] Add missing dep (#184152)
#183822 enabled layering checks, but there was some backsliding
Commit: a8fb8eb49f002abdb05013fcc0072896a7969b50
https://github.com/llvm/llvm-project/commit/a8fb8eb49f002abdb05013fcc0072896a7969b50
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
Log Message:
-----------
AMDGPU: Stop copying triple into AMDGPUSubtarget (#184147)
Really the triple doesn't belong here at all.
Commit: bd02c17123226f7e701126e62a99ec0964240fb1
https://github.com/llvm/llvm-project/commit/bd02c17123226f7e701126e62a99ec0964240fb1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[X86] known-never-zero.ll - add shift right vector test coverage for #183577 (#184140)
Commit: 64139516e5c22028ca5c7c9d998e358b3ecf4116
https://github.com/llvm/llvm-project/commit/64139516e5c22028ca5c7c9d998e358b3ecf4116
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[X86] known-never-zero.ll - remove unnecessary declarations (#184142)
Commit: 3357e487cf0ee7bb9a565cb79ac7ea65f12583b0
https://github.com/llvm/llvm-project/commit/3357e487cf0ee7bb9a565cb79ac7ea65f12583b0
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/lib/APINotes/APINotesWriter.cpp
M clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit.apinotes
M clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKit.h
A clang/test/APINotes/objc_designated_init_protocol.m
Log Message:
-----------
[clang/APINotes] Fix assertion crash in addObjCMethod for protocol DesignatedInit methods (#183799)
Commit: f5e8e98a4ef4a4889523101b4d4039e13bccbdf4
https://github.com/llvm/llvm-project/commit/f5e8e98a4ef4a4889523101b4d4039e13bccbdf4
Author: Lukas Sommer <lukas.sommer at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][VectorOps] Fold extract on constant_mask (#183780)
Fold `vector.extract(vector.constant_mask)` to `vector.constant_mask` if
possible.
If the static position is outside of the masked area, the pattern will
fold to a constant all-false value instead.
Dynamic positions are only supported if the mask covers the entire
vector in that dimension.
Assisted-by: Claude Code
---------
Signed-off-by: Lukas Sommer <lukas.sommer at amd.com>
Commit: 11576569336d5c92baf8fbc9a3f1502a95f57e52
https://github.com/llvm/llvm-project/commit/11576569336d5c92baf8fbc9a3f1502a95f57e52
Author: Minsoo Choo <minsoochoo0122 at proton.me>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.cpp
Log Message:
-----------
[lldb][Process/FreeBSDKernelCore] Fix RegisterContext for arm64 (#183947)
Since `pcb.lr` always contains the value of pc, `gpr_lr_arm64` should be
unavailable. This also fixes the case where `gpr_pc_arm64` displays sp
not lr field in pcb.
Reported by: jrtc27
Fixes: 4f0eb3d3af443ff54425ebafce83b87ee61ee403 (#180222)
---------
Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
Commit: b11a424e05826aadba71d9c15c4ae3821c92f713
https://github.com/llvm/llvm-project/commit/b11a424e05826aadba71d9c15c4ae3821c92f713
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/test/HLFIR/assign-codegen.fir
M flang/test/Lower/OpenMP/cfg-conversion-omp.private.f90
Log Message:
-----------
[flang] Inline trivial scalar allocatable assignments in HLFIR-to-FIR (#183177)
For trivial scalar allocatable assignments (non-polymorphic,
non-character, non-array, non-temporary), inline the assignment directly
instead of calling the `_FortranAAssign` runtime. The inlined code
checks whether the allocatable is already allocated: if so, it stores
directly; otherwise, it allocates memory via `fir.allocmem`, stores, and
updates the box descriptor. The if-branch is necessary to handle both
cases:
```fortran
integer, allocatable :: k
allocate(k)
k = 42 ! already allocated: store directly
```
```fortran
integer, allocatable :: k
k = 42 ! not allocated: allocmem, store, update box
```
Commit: 82d747e491422776998f5fe415ea7104ddb9b436
https://github.com/llvm/llvm-project/commit/82d747e491422776998f5fe415ea7104ddb9b436
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[X86] known-never-zero.ll - add additional demanded elts vector test coverage (#184159)
vector variants of existing tests where we only demand 1 element for the
never zero test
Commit: 95832c9bfd7c018e7b4a7a933942d4eeb792dc85
https://github.com/llvm/llvm-project/commit/95832c9bfd7c018e7b4a7a933942d4eeb792dc85
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/test/Driver/linker-wrapper-hip-no-rdc.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[LinkerWrapper] Fix a bunch of minor issues and typos (#183679)
Summary:
A bunch of small issues found through linting and LLM checking.
- Broken sort comparator that violated strict weak ordering (UB)
- SearchLibrary corrupting .lib filenames via erroneous drop_front()
- Hardcoded x86_64-unknown-linux-gnu host triple in AMDGPU fatbinary
- OffloadFile loop variable shadowing its own type, causing std::move on
the type rather than the variable
- GetDeviceInput calling exit() directly instead of returning Error
- Redundant double-wrapping of DerivedArgList
- Various typo and style fixes
Commit: 9ae143149b6fa287e166851ad4d0cde9613dc24b
https://github.com/llvm/llvm-project/commit/9ae143149b6fa287e166851ad4d0cde9613dc24b
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Fix build after moving AMX into X86 in #183717. (#184165)
This PR fixes the bazel build that got broken by #183717, which moved
the AMX dialect into the X86 dialect. The fix consists of replicating
the changes from the CMake files into BUILD files as usual; in this
case, mostly removing the AMX dialect targets, adding a few new
references to the corresponding X86 targets, and adding a few new
dependencies to the existing X86 targets due to the new code.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: f3e8508ac771074edd60889a33e512265990ef6e
https://github.com/llvm/llvm-project/commit/f3e8508ac771074edd60889a33e512265990ef6e
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
M clang/lib/Analysis/Scalable/CMakeLists.txt
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/LUSummary.cpp
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/LUSummaryEncoding.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummary.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummaryEncoding.cpp
M clang/unittests/Analysis/Scalable/CMakeLists.txt
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/LUSummaryTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
Log Message:
-----------
[clang][ssaf] Add `JSONFormat` serialization support for `LUSummary` and `LUSummaryEncoding`
This change extends `SerializationFormat` and `JSONFormat` with APIs to
read and write `LUSummary` and `LUSummaryEncoding`, completing the
serialization interface for both TU-level and LU-level summaries. As
part of the implementation, common serialization infrastructure has been
extracted into `JSONFormatImpl.{cpp, h}`, eliminating duplication across
the TU and LU translation units. A comprehensive `LUSummaryTest` suite
has been added to test `LUSummary` and `LUSummaryEncoding`, mirroring
the structure of the existing `TUSummaryTest` suite. Shared testing
infrastructure has been extracted into `JSONFormatTest.{cpp, h}`.
Commit: 148b10be8ad3dad0aeabf6845cc9468f42de820f
https://github.com/llvm/llvm-project/commit/148b10be8ad3dad0aeabf6845cc9468f42de820f
Author: Krish Gupta <krishom70 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Lower/OpenMP/declare-mapper.f90
A flang/test/Semantics/OpenMP/target-update-mapper.f90
A offload/test/offloading/fortran/target-update-custom-mapper.f90
Log Message:
-----------
[flang][OpenMP] Support custom mappers in target update to/from clauses (#169673)
Implement support for the OpenMP `mapper` modifier on `target update` `to` and
`from` clauses in Flang.
Semantic name resolution is extended to bind the mapper symbol for
`OmpClause::To` and `OmpClause::From` via a shared `ResolveMapperModifier`
helper. Lowering is extended in `ClauseProcessor` with a `getMapperIdentifier`
template helper to extract the mapper name for both `map` and `target update`
clauses and forward it to `omp.map_info`.
Fixes #168701.
Reviewed By: TIFitis, kparzysz
Assited By: Copilot( For review and articulations of messages)
Commit: d7eec97bd83fca9016e0718dca7fb929f42b2921
https://github.com/llvm/llvm-project/commit/d7eec97bd83fca9016e0718dca7fb929f42b2921
Author: Maria Fernanda Guimarães <66797940+mafeguimaraes at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/include/clang/APINotes/APINotesReader.h
M clang/lib/APINotes/APINotesManager.cpp
M clang/lib/APINotes/APINotesReader.cpp
Log Message:
-----------
[APINotes] Refactor APINotesReader to propagate llvm::Error (#183812)
**Context:** While exploring the `APINotes` codebase, I found 54 `FIXME`
comments in `APINotesReader.cpp` stating: `// FIXME this drops the error
on the floor.`
This happened because the internal `read*Block` methods returned a
boolean, and the `APINotesReader` constructor reported failures via a
`bool &Failed` out-parameter. This forced the actual `llvm::Errors`
returned from the bitstream cursor to be silently consumed with
`consumeError()`.
This patch refactors this behavior to properly propagate the errors up
the stack.
**Changes in this patch:**
**1.** Changed all `read*Block` methods in
`APINotesReader::Implementation` to return `llvm::Error` instead of
`bool`.
**2.** Made the `APINotesReader` and `Implementation` constructors
private.
**3.** Created a static factory method `APINotesReader::Create(...)`
that returns an `llvm::Expected<std::unique_ptr<APINotesReader>>`,
allowing us to propagate the error instead of dropping it.
**4.** Updated `APINotesManager.cpp` to handle the new `Expected` return
type. (Note: For now, `APINotesManager` consumes the error to maintain
its existing behavior, but the `APINotesReader` is now fully ready for
future error propagation).
Commit: cf8597bd3b87aeed6696454f22311e86ed70138f
https://github.com/llvm/llvm-project/commit/cf8597bd3b87aeed6696454f22311e86ed70138f
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Serialization/ASTReader.h
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/Serialization/ASTReader.cpp
A clang/test/ClangScanDeps/build-session-validation-relocated-modules.c
M clang/test/ClangScanDeps/modules-relocated-mm-macro.c
M clang/test/ClangScanDeps/modules-symlink-dir-from-module.c
A clang/test/Modules/build-session-validation-relocated-modules.c
Log Message:
-----------
[clang][Modules] Handle relocated modules during implicit module builds (#181836)
* To avoid the build time overhead of checking for relocated modules,
only check it once per build session.
* Enable relocated module checks in the dependency scanner.
* Add remarks to know when this is happening with `-Rmodule-validation`
This check is necessary to be able to handle new libraries appearing in
earlier search paths. This is a valid scenario when dependency info
changes between incremental builds of the same scheme, thus new build
sessions.
It is still malformed to expect new versions of libraries to be added
within the same build session.
resolves: rdar://169174750
Commit: 41fc9b98459c47d71579faef761160f0675b0772
https://github.com/llvm/llvm-project/commit/41fc9b98459c47d71579faef761160f0675b0772
Author: Igor Kirillov <igor.kirillov at arm.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
A llvm/test/Transforms/LoopVectorize/non-vectorizable-call-remark.ll
Log Message:
-----------
[LAA] Fix recordAnalysis receiving null Instruction pointer (#183512)
When a memory-reading or memory-writing instruction is not a
LoadInst/StoreInst, the dyn_cast to Ld/St returns nullptr, which is then
passed to recordAnalysis. This causes the optimization remark to fall
back to the loop header location instead of pointing at the actual
problematic instruction.
Pass &I (the actual Instruction) instead.
Commit: fd578f7c5c98d7a5edfbd1ad5f72db6541ddc679
https://github.com/llvm/llvm-project/commit/fd578f7c5c98d7a5edfbd1ad5f72db6541ddc679
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M openmp/runtime/src/CMakeLists.txt
Log Message:
-----------
[libomp] Fix hwloc include for non-standard paths (#184087)
Fixes https://github.com/llvm/llvm-project/issues/183884
---------
Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>
Commit: 447eba88c8d7f219667c9914a0d91bf44c1d1512
https://github.com/llvm/llvm-project/commit/447eba88c8d7f219667c9914a0d91bf44c1d1512
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M lldb/source/Target/Target.cpp
M lldb/unittests/Target/CMakeLists.txt
A lldb/unittests/Target/ScratchTypeSystemTest.cpp
Log Message:
-----------
[lldb][Target] Allow eLanguageTypeAssembly to use ScratchTypeSystemClang (#183771)
After cleaning up some of our `LanguageType`/`SourceLangage`
round-tripping (see `7f51a2a47d2e706d04855b0e41690ebafa2b3238`), a CU
with `DW_LANG_MIPS_Assembler` will get a language type of
`eLanguageTypeAssembly` (as opposed to `eLanguageTypeMipsAssembler`).
Reason being that there is no `DW_LNAME_` (DWARFv6 language code) for
`MIPS Assembler`, only for generic `Assembly`. So it's not possible to
round-trip cleanly between pre-DWARFv6 and DWARFv6 language codes, which
LLDB relies on for storing language types (and will lean into more
heavily in the future). This broke a special provision we have where we
allow `ScratchTypeSystemClang` to be used when evaluating expressions in
assembly CUs (i.e., CUs where the debug-info explicitly sets the
language to assembly).
If we ever want to distinguish MIPS from other Assembly, the proper way
to do so is introduce a `DW_LNAME_Mips_Assembler`. For now, this patch
adds another case for `eLanguageTypeAssembly` in
`GetScratchTypeSystemForLanguage`.
The test is a bit quirky because it checks for error messages in all
cases. For the `TypeSystem`s to exist we would have to initialize the
`TypeSystem` plugins, which I couldn't find a precedent for. But happy
to hear other suggestions for testing
Fixes https://github.com/llvm/llvm-project/issues/183388
Commit: 9d1fd9ec1eb860ceaba06e8650d017aa4fd52617
https://github.com/llvm/llvm-project/commit/9d1fd9ec1eb860ceaba06e8650d017aa4fd52617
Author: hidekisaito <hidekido at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.mir
Log Message:
-----------
[AMDGPU] Extend DS loop wait optimization with flush point tracking (#175658)
Add support for prefetch patterns where some DS loads are used in the
same iteration (creating flush points) while others remain unflushed at
the backedge.
This complements the existing pure prefetch optimization (PR172728) by
handling cases where partial same-iteration consumption occurs.
Assisted-by: Cursor / claude-4.5-opus-high
Commit: 573a5412020716c4f983dd70366cc4822f008c64
https://github.com/llvm/llvm-project/commit/573a5412020716c4f983dd70366cc4822f008c64
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/boost/use-to-string.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-prefixsuffixname.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-container.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nodiscard.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-string-concatenation.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static-deducing-this.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-subscript-expr.cpp
Log Message:
-----------
[clang-tidy][NFC] Use singe mock string header in tests (#183996)
Commit: ab5205c916a754bbd262d38c4494c78077cdec90
https://github.com/llvm/llvm-project/commit/ab5205c916a754bbd262d38c4494c78077cdec90
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/MC/MCDwarf.cpp
A llvm/test/DebugInfo/AArch64/asm-cu-language.s
Log Message:
-----------
[llvm][DebugInfo] Emit DW_LNAME_Assembly for DWARFv6 assembly CUs (#183897)
Use the new DWARFv6 language code for assembly CUs. While we have a
`DW_LANG_Assembly` pre-DWARFv6 I kept the `DW_LANG_Mips_Assembler`
pre-DWARFv6 for now (I added a FIXME if we want to address it).
Commit: 307d912378ac107e67ae26248e83fe3ddf8dc2df
https://github.com/llvm/llvm-project/commit/307d912378ac107e67ae26248e83fe3ddf8dc2df
Author: Daniel Krupp <daniel.krupp at ericsson.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/test/Analysis/taint-generic.c
A clang/test/Analysis/taint-main-parameters/argc.c
A clang/test/Analysis/taint-main-parameters/envp.c
A clang/test/Analysis/taint-main-parameters/envp2.c
A clang/test/Analysis/taint-main-parameters/invalid.c
A clang/test/Analysis/taint-main-parameters/main_void.c
A clang/test/Analysis/taint-main-parameters/simple.c
A clang/test/Analysis/taint-main-parameters/simple.cpp
A clang/test/Analysis/taint-main-parameters/trusted.c
Log Message:
-----------
[clang][analyzer] Add taintedness to argv (#178054)
If the execution environment is untrusted, we assume that the argv, argc
and envp parameters of the main function are attacker controlled values
and set them as taint analysis sources.
Commit: f486fc95db20ec64efcf90ae82f6e64b2394b4f2
https://github.com/llvm/llvm-project/commit/f486fc95db20ec64efcf90ae82f6e64b2394b4f2
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang-tools-extra/Maintainers.rst
Log Message:
-----------
[clang-tidy] Nominate myself as a maintainer (#183173)
For the past ~8 months, I've been regularly working on clang-tidy, doing
features and cleanups, fixing issues, and reviewing PRs. I'm passionate
about the project, and I'd like to step up to be a maintainer for it!
Commit: dd3d727c88b5b1e066437166bce15f1d0a7c0973
https://github.com/llvm/llvm-project/commit/dd3d727c88b5b1e066437166bce15f1d0a7c0973
Author: Kewen Meng <Kewen.Meng at amd.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/test/tools/llvm-ir2vec/bindings/ir2vec-bindings.py
M llvm/tools/llvm-ir2vec/Bindings/PyIR2Vec.cpp
M llvm/tools/llvm-ir2vec/lib/Utils.cpp
M llvm/tools/llvm-ir2vec/lib/Utils.h
Log Message:
-----------
Revert "[llvm-ir2vec] Adding Inst Embeddings Map API to ir2vec python bindings" (#184179)
Reverts llvm/llvm-project#180140
Unblock bot: https://lab.llvm.org/buildbot/#/builders/140
Commit: d723d14e4c34c7fa17a4fd496aea224b90396f60
https://github.com/llvm/llvm-project/commit/d723d14e4c34c7fa17a4fd496aea224b90396f60
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang-rt/lib/runtime/edit-output.cpp
M flang-rt/lib/runtime/edit-output.h
M flang-rt/unittests/Runtime/NumericalFormatTest.cpp
Log Message:
-----------
[flang][runtime] Emit "Infinity" rather than "Inf" when required (#183359)
The ISO Fortran standard requires that numeric output editing produce
the full word "Infinity", rather than my current "Inf", when the output
field is wide enough to hold it. Comply.
Commit: 28d294e080b3b4525dfab912149b7b0c02d5d112
https://github.com/llvm/llvm-project/commit/28d294e080b3b4525dfab912149b7b0c02d5d112
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/bug2236.f90
Log Message:
-----------
[flang] Let -fdisable-real-10 affect only user code (#183870)
Don't let -fdisable-real-10 elicit errors from intrinsic modules.
Commit: ae363d50ad292b4d8c33bf795ad16c79eb640b19
https://github.com/llvm/llvm-project/commit/ae363d50ad292b4d8c33bf795ad16c79eb640b19
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/include/clang/AST/TypeBase.h
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/test/AST/HLSL/matrix-constructors.hlsl
M clang/test/AST/HLSL/matrix-general-initializer.hlsl
A clang/test/AST/HLSL/matrix-init-list-row-major.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixConstructor.hlsl
A clang/test/CodeGenHLSL/BasicFeatures/MatrixInitializerListOrder.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
M clang/test/CodeGenHLSL/BoolMatrix.hlsl
Log Message:
-----------
[HLSL][Matrix] Make Matrix InitListExprs and AST row-major order, and respect /Zpr and /Zpc in codegen (#182904)
Fixes #166410 and #181902
This PR makes matrix initializer lists be kept in row-major order in
InitListExpr and the AST for HLSL by not reordering the element indices
in `InitListChecker::CheckMatrixType` in `clang/lib/Sema/SemaInit.cpp`.
This PR also makes the codegen respect /Zpr and /Zpc during codegen for
matrix initializer lists by adding a vector shuffle to
`VisitInitListExpr` in `clang/lib/CodeGen/CGExprScalar.cpp`.
Assisted-by: claude-opus-4.6
---------
Co-authored-by: Farzon Lotfi <farzonl at gmail.com>
Commit: 5ff5a1f14761ecc7160125aadb38c59d29f58e5c
https://github.com/llvm/llvm-project/commit/5ff5a1f14761ecc7160125aadb38c59d29f58e5c
Author: gulfemsavrun <gulfem at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/cmake/modules/AddClang.cmake
M lld/tools/lld/CMakeLists.txt
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/LLVM-Config.cmake
M mlir/cmake/modules/AddMLIR.cmake
Log Message:
-----------
Revert "[CMake] Use keyword signature in two additional callsites (#1… (#184186)
…83889)"
This reverts commit 2342db00ab4d0305580814fb00f477b4b5cebec6.
Revert "[CMake] Propagate dependencies to OBJECT libraries in
`add_llvm_library` (#183541)"
This reverts commit e3c045415ae52167e197d4a6ed4ad5a04e49423a.
Commit: a171b8d4d5231363d99d11b9546e1fc1ed0d0323
https://github.com/llvm/llvm-project/commit/a171b8d4d5231363d99d11b9546e1fc1ed0d0323
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
A llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/test/CodeGen/NVPTX/lower-args.ll
M llvm/test/CodeGen/NVPTX/lower-kernel-ptr-arg.ll
A llvm/test/CodeGen/NVPTX/mark-kernel-ptrs-global.ll
Log Message:
-----------
[NVPTX] Refactor NVPTXLowerArgs and move helpers to NVPTXUtilities (#183686)
A couple of refactoring changes to simplify `NVPTXLowerArgs` and reduce
unnecessary coupling to `NVPTXTargetLowering`:
- Move `getFunctionParamOptimizedAlign`, `getFunctionArgumentAlignment`,
and `getFunctionByValParamAlign` from `NVPTXTargetLowering` to
`NVPTXUtilities` as free functions. These don't use any TLI state and
were only member functions because they called each other. This also
lets `getArgumentAlignment` become file-static in
`NVPTXISelLowering.cpp`, and removes the `NVPTXTargetLowering`
dependency from `NVPTXLowerArgs` for byval alignment.
- Split the CUDA kernel pointer-marking logic out of `NVPTXLowerArgs`
into a new `NVPTXMarkKernelPtrsGlobal` pass. This code (marking pointers
loaded from byval params as global, handling int-to-ptr patterns) is
conceptually independent of the argument lowering and was guarded by a
`DrvInterface == CUDA` check that is now at pipeline scheduling time.
The new pass is a simple `FunctionPass` with no `TargetMachine`
dependency.
Commit: b3c4d44c44237fb8df98f09390e391d16fd3f4b1
https://github.com/llvm/llvm-project/commit/b3c4d44c44237fb8df98f09390e391d16fd3f4b1
Author: Bar Soloveychik <barsolo at meta.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M lldb/include/lldb/Target/ThreadList.h
M lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
M lldb/source/Target/ThreadList.cpp
M lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
A lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
A lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
Log Message:
-----------
[lldb] Batch breakpoint step-over for threads stopped at the same BP (#183412)
When multiple threads are stopped at the same breakpoint, LLDB currently
steps each thread over the breakpoint one at a time. Each step requires
disabling the breakpoint, single-stepping one thread, and re-enabling
it, resulting in N disable/enable cycles and N individual vCont packets
for N threads. This is a common scenario for hot breakpoints in
multithreaded programs and scales poorly.
This patch batches the step-over so that all threads at the same
breakpoint site are stepped together in a single vCont packet, with the
breakpoint disabled once at the start and re-enabled once after the last
thread finishes.
At the top of WillResume, any leftover StepOverBreakpoint plans from a
previous cycle are popped with their re-enable side effect suppressed
via SetReenabledBreakpointSite, giving a clean slate.
SetupToStepOverBreakpointIfNeeded then creates fresh plans for all
threads that still need to step over a breakpoint, and these are grouped
by breakpoint address.
For groups with multiple threads, each plan is set to defer its
re-enable through SetDeferReenableBreakpointSite. Instead of re-enabling
the breakpoint directly when a plan completes, it calls
ThreadFinishedSteppingOverBreakpoint, which decrements a per-address
tracking count. The breakpoint is only re-enabled when the count reaches
zero.
All threads in the largest group are resumed together in a single
batched vCont packet. If some threads don't complete their step in one
cycle, the pop-and-recreate logic naturally re-batches the remaining
threads on the next WillResume call.
For 10 threads at the same breakpoint, this reduces the operation from
10 z0/Z0 pairs and 10 vCont packets to 1 z0 + 1 Z0 and a few
progressively smaller batched vCont packets.
EDIT:
Tried to merge this PR twice, the first time the test was flaky so we
had to revert. The second time, we broke 2 tests on windows machine:
https://lab.llvm.org/buildbot/#/builders/141/builds/15798
The tests that were failing were failing because the cleanup code in
`WillResume` was popping **ALL** `StepOverBreakpoint` plans, including
non-deferred ones from incomplete single-steps.
The issue was:
1) Multiple threads hit the same breakpoint. One thread's breakpoint
condition evaluates to false, so it needs to auto-continue.
2) A `StepOverBreakpoint` plan is created for that thread
(non-deferred).
3) On the next WillResume, the cleanup pops that non-deferred plan.
4) Now the `StopOthers` scan finds no thread with a StopOthers() plan,
so thread_to_run stays null.
5) The else branch runs, calling `SetupToStepOverBreakpointIfNeeded` on
**ALL** threads, including the thread that legitimately hit the
breakpoint with a true condition.
6) That thread gets a new `StepOverBreakpoint` plan pushed, which
overwrites its breakpoint stop reason with trace when the step
completes.
The error `trace (2) != breakpoint (3)` confirms this, the thread that
should have reported breakpoint as its stop reason instead reports
trace, because an unwanted `StepOverBreakpoint` plan was pushed on it
and completed.
The newly added code fixes it by only popping plans that have
`GetDeferReenableBreakpointSite() == true`
Co-authored-by: Bar Soloveychik <barsolo at fb.com>
Commit: fb6038d93781bd051a0c0641c4ab5229de62a92b
https://github.com/llvm/llvm-project/commit/fb6038d93781bd051a0c0641c4ab5229de62a92b
Author: Pranshu Goyal <78131793+pranshoe at users.noreply.github.com>
Date: 2026-03-02 (Mon, 02 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::SRA/SRL DemandedElts handling and tests (#183577)
This patch updates `SelectionDAG::isKnownNeverZero` to support
`ISD::SRA`/`ISD::SRL` by forwarding the `DemandedElts` mask to its
operands.
Fixes #183046
Commit: 0cabe933812f23ecd605baa82adb2b03fa0ab37d
https://github.com/llvm/llvm-project/commit/0cabe933812f23ecd605baa82adb2b03fa0ab37d
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/test/CodeGenHLSL/inline-functions.hlsl
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-cs.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-lib.ll
R llvm/test/CodeGen/DirectX/ShaderFlags/lib-entry-attr-error.ll
Log Message:
-----------
[HLSL] Reintroduce dx.disable_optimizations to set DisableOptimization Shader Flag (#180069)
This patch removes optnone from HLSL entry functions and instead uses
`dx.disable_optimizations` module flag to know when to enable
`DisableOptimization` Shader Flag. This is part of: #167936
---------
Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Commit: 973f7606fba48afc3427c8c8dbbc186139c982e7
https://github.com/llvm/llvm-project/commit/973f7606fba48afc3427c8c8dbbc186139c982e7
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-02 (Mon, 02 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/test/CodeGen/AArch64/stack-tagging.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
Log Message:
-----------
[HWASan] [MTE] support double lifetime.end in same BB
We can just ignore the second one, because it will always be a no-op.
Reviewers: pcc, usama54321, vitalybuka
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/183809
Commit: ac7a8f2be72842471062f058d61236acc6fb4924
https://github.com/llvm/llvm-project/commit/ac7a8f2be72842471062f058d61236acc6fb4924
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-03 (Tue, 03 Mar 2026)
Changed paths:
M .github/workflows/upload-release-artifact/action.yml
M bolt/include/bolt/Core/BinaryContext.h
M bolt/lib/Core/BinaryFunction.cpp
M bolt/runtime/common.h
M bolt/runtime/instr.cpp
M bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
M clang-tools-extra/Maintainers.rst
M clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.h
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
A clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.h
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/performance/use-std-move.rst
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/initializer_list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/memory
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/vector
M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/boost/Inputs/use-ranges/fake_std.h
M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges-pipe.cpp
M clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/boost/use-to-string.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-prefixsuffixname.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-container.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-module.cpp
R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/smart-ptr/initializer_list.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique-default-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-random-shuffle.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/shrink-to-fit.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace-ignore-implicit-constructors.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nodiscard.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges-pipe.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-string-concatenation.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static-deducing-this.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-subscript-expr.cpp
M clang-tools-extra/unittests/clang-tidy/LexerUtilsTest.cpp
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang/APINotes/APINotesReader.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Serialization/ASTReader.h
M clang/lib/APINotes/APINotesManager.cpp
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftCXXABI.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/VTableBuilder.cpp
M clang/lib/Analysis/Scalable/CMakeLists.txt
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/LUSummary.cpp
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/LUSummaryEncoding.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummary.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummaryEncoding.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/Hexagon.cpp
M clang/lib/Basic/Targets/Hexagon.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/CIR/CodeGen/Address.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/CodeGen/TargetInfo.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit.apinotes
M clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKit.h
A clang/test/APINotes/objc_designated_init_protocol.m
M clang/test/AST/HLSL/matrix-constructors.hlsl
M clang/test/AST/HLSL/matrix-general-initializer.hlsl
A clang/test/AST/HLSL/matrix-init-list-row-major.hlsl
M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
R clang/test/Analysis/PR37855.c
R clang/test/Analysis/bitint-z3.c
R clang/test/Analysis/cstring-addrspace.c
M clang/test/Analysis/taint-generic.c
A clang/test/Analysis/taint-main-parameters/argc.c
A clang/test/Analysis/taint-main-parameters/envp.c
A clang/test/Analysis/taint-main-parameters/envp2.c
A clang/test/Analysis/taint-main-parameters/invalid.c
A clang/test/Analysis/taint-main-parameters/main_void.c
A clang/test/Analysis/taint-main-parameters/simple.c
A clang/test/Analysis/taint-main-parameters/simple.cpp
A clang/test/Analysis/taint-main-parameters/trusted.c
R clang/test/Analysis/unary-sym-expr-z3-refutation.c
R clang/test/Analysis/z3-crosscheck-max-attempts.cpp
R clang/test/Analysis/z3-crosscheck.c
R clang/test/Analysis/z3-refute-enum-crash.cpp
R clang/test/Analysis/z3-unarysymexpr.c
A clang/test/Analysis/z3/PR37855.c
A clang/test/Analysis/z3/bitint-z3.c
A clang/test/Analysis/z3/cstring-addrspace.c
A clang/test/Analysis/z3/unary-sym-expr-z3-refutation.c
A clang/test/Analysis/z3/z3-crosscheck-max-attempts.cpp
A clang/test/Analysis/z3/z3-crosscheck.c
A clang/test/Analysis/z3/z3-refute-enum-crash.cpp
A clang/test/Analysis/z3/z3-unarysymexpr.c
M clang/test/C/C11/n1311.c
R clang/test/CIR/CodeGen/address-of.cpp
R clang/test/CIR/CodeGen/builtin-bit-cast.cpp
R clang/test/CIR/CodeGen/builtin-floating-point.c
R clang/test/CIR/CodeGen/builtin-memchr.c
R clang/test/CIR/CodeGen/builtins-elementwise.c
M clang/test/CIR/CodeGen/cleanup.cpp
M clang/test/CIR/CodeGen/coro-task.cpp
M clang/test/CIR/CodeGen/defaultarg.cpp
M clang/test/CIR/CodeGen/dtors.cpp
M clang/test/CIR/CodeGen/implicit-value-init-expr.cpp
M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
R clang/test/CIR/CodeGen/object-size.c
R clang/test/CIR/CodeGen/object-size.cpp
R clang/test/CIR/CodeGen/offset-of.cpp
R clang/test/CIR/CodeGen/pred-info-builtins.c
M clang/test/CIR/CodeGen/stmt-expr.cpp
M clang/test/CIR/CodeGen/struct.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-address-of.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-bit-cast.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-bit.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-call.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-inline.c
A clang/test/CIR/CodeGenBuiltins/builtin-memchr.c
A clang/test/CIR/CodeGenBuiltins/builtin-new-delete.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-object-size.c
A clang/test/CIR/CodeGenBuiltins/builtin-object-size.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-offset-of.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-prefetch.c
A clang/test/CIR/CodeGenBuiltins/builtin-printf.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_bit.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_inline.c
R clang/test/CIR/CodeGenBuiltins/builtin_new_delete.cpp
R clang/test/CIR/CodeGenBuiltins/builtin_prefetch.c
R clang/test/CIR/CodeGenBuiltins/builtin_printf.cpp
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
M clang/test/CIR/CodeGenBuiltins/builtins-floating-point.c
A clang/test/CIR/CodeGenBuiltins/builtins-pred-info.c
M clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl
A clang/test/CIR/IR/address-space.cir
M clang/test/CIR/IR/invalid-addrspace.cir
A clang/test/ClangScanDeps/build-session-validation-relocated-modules.c
M clang/test/ClangScanDeps/modules-relocated-mm-macro.c
M clang/test/ClangScanDeps/modules-symlink-dir-from-module.c
M clang/test/CodeGen/distributed-thin-lto/cfi-devirt.ll
M clang/test/CodeGen/distributed-thin-lto/cfi.ll
M clang/test/CodeGen/thinlto-funcattr-prop.ll
M clang/test/CodeGen/ubsan-function-sugared.cpp
M clang/test/CodeGen/ubsan-function.cpp
M clang/test/CodeGenCUDA/amdgpu-kernel-attrs.cu
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenHLSL/BasicFeatures/MatrixConstructor.hlsl
A clang/test/CodeGenHLSL/BasicFeatures/MatrixInitializerListOrder.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
M clang/test/CodeGenHLSL/BoolMatrix.hlsl
M clang/test/CodeGenHLSL/inline-functions.hlsl
M clang/test/CodeGenObjC/aarch64-sve-types.m
R clang/test/CodeGenOpenCL/.gdb_history
M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
A clang/test/DebugInfo/CXX/ptrauth-member-function-pointer-debuglocs.cpp
M clang/test/Driver/linker-wrapper-hip-no-rdc.c
A clang/test/Driver/reloc-section-sym.c
A clang/test/Interpreter/incremental-c-implicit-error.c
A clang/test/Interpreter/incremental-c-implicit-undo.c
M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
A clang/test/Misc/cc1as-reloc-section-sym.s
M clang/test/Misc/nvptx.languageOptsOpenCL.cl
A clang/test/Modules/build-session-validation-relocated-modules.c
M clang/test/OpenMP/amdgcn-attributes.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/task_codegen.cpp
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/Preprocessor/hexagon-predefines.c
M clang/test/Sema/builtins-elementwise-math.c
A clang/test/Sema/multi-dim-array.c
M clang/test/Sema/sugar-common-types.c
A clang/test/SemaCXX/GH175783.cpp
A clang/test/SemaCXX/builtin_templates_invalid_parameters.cpp
M clang/test/SemaCXX/builtins-elementwise-math.cpp
M clang/test/TableGen/builtin-docs.td
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/unittests/Analysis/Scalable/CMakeLists.txt
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/LUSummaryTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
M compiler-rt/CMakeLists.txt
M compiler-rt/lib/gwp_asan/CMakeLists.txt
M compiler-rt/lib/msan/tests/CMakeLists.txt
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/scudo/standalone/CMakeLists.txt
M compiler-rt/lib/ubsan/ubsan_diag.h
M compiler-rt/test/asan/TestCases/fakeframe-right-redzone.cpp
M compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp
M compiler-rt/test/builtins/CMakeLists.txt
M flang-rt/lib/runtime/edit-output.cpp
M flang-rt/lib/runtime/edit-output.h
M flang-rt/unittests/Runtime/NumericalFormatTest.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/HLFIR/assign-codegen.fir
M flang/test/Lower/HLFIR/goto-do-body.f90
M flang/test/Lower/OpenMP/cfg-conversion-omp.private.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
A flang/test/Lower/OpenMP/task-implicit-firstprivate.f90
A flang/test/Semantics/OpenMP/fuse1.f90
A flang/test/Semantics/OpenMP/target-update-mapper.f90
A flang/test/Semantics/bug2236.f90
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/shared/math.h
A libc/shared/math/acospif.h
M libc/shared/math/asinf16.h
M libc/shared/math/asinhf16.h
M libc/shared/math/asinpif16.h
M libc/shared/math/atanf16.h
M libc/shared/math/atanhf16.h
M libc/shared/math/bf16fmaf128.h
M libc/shared/math/bf16mul.h
M libc/shared/math/bf16mulf.h
M libc/shared/math/bf16mulf128.h
M libc/shared/math/bf16mull.h
M libc/shared/math/bf16sub.h
M libc/shared/math/bf16subf.h
M libc/shared/math/bf16subf128.h
M libc/shared/math/ceil.h
M libc/shared/math/ceilbf16.h
M libc/shared/math/ceilf.h
M libc/shared/math/ceilf128.h
M libc/shared/math/ceilf16.h
M libc/shared/math/ceill.h
M libc/shared/math/cosf16.h
M libc/shared/math/coshf16.h
M libc/shared/math/cospif16.h
M libc/shared/math/dfmal.h
M libc/shared/math/exp10f16.h
M libc/shared/math/exp10m1f16.h
M libc/shared/math/exp2f16.h
M libc/shared/math/exp2m1f16.h
M libc/shared/math/expf16.h
M libc/shared/math/expm1f16.h
M libc/shared/math/f16div.h
M libc/shared/math/f16divf.h
M libc/shared/math/f16divf128.h
M libc/shared/math/f16divl.h
M libc/shared/math/f16fma.h
M libc/shared/math/f16fmaf.h
M libc/shared/math/f16fmaf128.h
M libc/shared/math/f16fmal.h
M libc/shared/math/f16mul.h
M libc/shared/math/f16mulf.h
M libc/shared/math/f16mulf128.h
M libc/shared/math/f16mull.h
M libc/shared/math/f16sqrtf128.h
M libc/shared/math/f16sqrtl.h
M libc/shared/math/f16sub.h
M libc/shared/math/f16subf.h
M libc/shared/math/f16subf128.h
M libc/shared/math/f16subl.h
M libc/shared/math/fadd.h
M libc/shared/math/faddf128.h
M libc/shared/math/faddl.h
M libc/shared/math/fdim.h
M libc/shared/math/fdimbf16.h
M libc/shared/math/fdimf.h
M libc/shared/math/fdimf128.h
M libc/shared/math/fdimf16.h
M libc/shared/math/fdiml.h
A libc/shared/math/floor.h
A libc/shared/math/floorbf16.h
A libc/shared/math/floorf.h
A libc/shared/math/floorf128.h
A libc/shared/math/floorf16.h
A libc/shared/math/floorl.h
M libc/shared/math/fmax.h
M libc/shared/math/fmaxbf16.h
M libc/shared/math/fmaxf.h
M libc/shared/math/fmaxf128.h
M libc/shared/math/fmaxf16.h
M libc/shared/math/fmaxl.h
M libc/shared/math/frexpf16.h
M libc/shared/math/fsqrtf128.h
M libc/shared/math/getpayload.h
M libc/shared/math/getpayloadbf16.h
M libc/shared/math/getpayloadf.h
M libc/shared/math/getpayloadf128.h
M libc/shared/math/getpayloadf16.h
M libc/shared/math/getpayloadl.h
M libc/shared/math/hypotf.h
M libc/shared/math/hypotf16.h
M libc/shared/math/ilogbf.h
M libc/shared/math/ilogbf16.h
M libc/shared/math/ldexpf16.h
M libc/shared/math/log.h
M libc/shared/math/log10.h
M libc/shared/math/log1p.h
M libc/shared/math/log2.h
M libc/shared/math/logb.h
M libc/shared/math/logbf.h
M libc/shared/math/logbf128.h
M libc/shared/math/logbf16.h
M libc/shared/math/logf16.h
M libc/shared/math/setpayload.h
M libc/shared/math/setpayloadbf16.h
M libc/shared/math/setpayloadf.h
M libc/shared/math/setpayloadf128.h
M libc/shared/math/setpayloadf16.h
M libc/shared/math/setpayloadl.h
M libc/shared/math/setpayloadsig.h
M libc/shared/math/setpayloadsigbf16.h
M libc/shared/math/setpayloadsigf.h
M libc/shared/math/setpayloadsigf128.h
M libc/shared/math/setpayloadsigf16.h
M libc/shared/math/setpayloadsigl.h
M libc/shared/math/sinhf16.h
M libc/shared/math/tanpif16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/acospif.h
M libc/src/__support/math/asinpif.h
A libc/src/__support/math/floor.h
A libc/src/__support/math/floorbf16.h
A libc/src/__support/math/floorf.h
A libc/src/__support/math/floorf128.h
A libc/src/__support/math/floorf16.h
A libc/src/__support/math/floorl.h
M libc/src/__support/math/inv_trigf_utils.h
M libc/src/math/CMakeLists.txt
A libc/src/math/acospif.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/acospif.cpp
M libc/src/math/generic/floor.cpp
M libc/src/math/generic/floorbf16.cpp
M libc/src/math/generic/floorf.cpp
M libc/src/math/generic/floorf128.cpp
M libc/src/math/generic/floorf16.cpp
M libc/src/math/generic/floorl.cpp
M libc/test/CMakeLists.txt
M libc/test/lit.site.cfg.py.in
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/acospif_test.cpp
M libc/test/src/math/asinpif_test.cpp
M libc/test/src/math/exhaustive/CMakeLists.txt
A libc/test/src/math/exhaustive/acospif_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/acospif_test.cpp
M libclc/clc/lib/generic/math/clc_fdim.inc
M libcxx/include/__algorithm/find.h
M libcxx/include/__algorithm/find_if.h
M libcxx/include/__algorithm/find_if_not.h
M libcxx/include/__algorithm/ranges_find_if.h
M libcxx/include/__algorithm/ranges_find_if_not.h
M libcxx/include/__algorithm/ranges_remove_if.h
M lld/test/ELF/aarch64-branch-to-branch.s
M lld/test/ELF/aarch64-feature-bti.s
M lld/test/ELF/aarch64-funcinit64-invalid.s
M lld/test/ELF/aarch64-funcinit64.s
M lld/test/ELF/aarch64-range-thunk-extension-plt32.s
M lld/test/ELF/aarch64-reloc-gotpcrel32.s
M lld/test/ELF/aarch64-reloc-plt32.s
M lld/test/ELF/aarch64-undefined-weak.s
M lld/test/ELF/lto/comdat-nodeduplicate.ll
M lldb/docs/index.rst
M lldb/examples/python/formatter_bytecode.py
M lldb/include/lldb/Host/HostInfoBase.h
M lldb/include/lldb/Host/aix/HostInfoAIX.h
M lldb/include/lldb/Host/linux/HostInfoLinux.h
M lldb/include/lldb/Host/windows/HostInfoWindows.h
M lldb/include/lldb/Initialization/SystemInitializerCommon.h
M lldb/include/lldb/Target/ThreadList.h
M lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
M lldb/include/lldb/Utility/AnsiTerminal.h
M lldb/source/API/SystemInitializerFull.cpp
M lldb/source/Host/aix/HostInfoAIX.cpp
M lldb/source/Host/common/HostInfoBase.cpp
M lldb/source/Host/linux/HostInfoLinux.cpp
M lldb/source/Host/windows/HostInfoWindows.cpp
M lldb/source/Initialization/SystemInitializerCommon.cpp
M lldb/source/Interpreter/Options.cpp
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/CMakeLists.txt
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.cpp
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.cpp
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_ppc64le.h
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.cpp
A lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_riscv64.h
M lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ThreadFreeBSDKernelCore.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
M lldb/source/Utility/ZipFile.cpp
M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
M lldb/test/API/commands/help/TestHelp.py
A lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
A lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py
M lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
M lldb/test/API/lang/cpp/gmodules/basic/TestWithModuleDebugging.py
M lldb/test/API/macosx/add-dsym/TestAddDsymDownload.py
M lldb/test/API/macosx/add-dsym/TestAddDsymMidExecutionCommand.py
M lldb/test/API/macosx/delay-init-dependency/TestDelayInitDependency.py
M lldb/test/API/tools/lldb-dap/variables/children/TestDAP_variables_children.py
M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-mcp/lldb-mcp.cpp
M lldb/tools/lldb-server/SystemInitializerLLGS.h
M lldb/tools/lldb-test/SystemInitializerTest.cpp
M lldb/unittests/Host/common/CMakeLists.txt
A lldb/unittests/Host/common/Inputs/zip-test-no-extras.zip
M lldb/unittests/Host/common/ZipFileResolverTest.cpp
M lldb/unittests/Target/CMakeLists.txt
A lldb/unittests/Target/ScratchTypeSystemTest.cpp
M lldb/unittests/Utility/AnsiTerminalTest.cpp
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/cmake/modules/LLVMConfig.cmake.in
M llvm/docs/CMake.rst
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/TableGen/BackEnds.rst
M llvm/include/llvm/Analysis/IVDescriptors.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/Value.h
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/TableGen/SearchableTable.td
M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/CMakeLists.txt
M llvm/lib/Analysis/CostModel.cpp
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
M llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/ModuleSummaryIndex.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/MC/MCDwarf.cpp
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMInstrFormats.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMInstrMVE.td
M llvm/lib/Target/ARM/ARMInstrNEON.td
M llvm/lib/Target/ARM/ARMInstrThumb.td
M llvm/lib/Target/ARM/ARMInstrThumb2.td
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
A llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
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/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
M llvm/test/Assembler/thinlto-memprof-summary.ll
M llvm/test/Assembler/thinlto-multiple-summaries-for-guid.ll
M llvm/test/Assembler/thinlto-summary-visibility.ll
M llvm/test/Assembler/thinlto-summary.ll
M llvm/test/Assembler/thinlto-vtable-summary.ll
M llvm/test/Bitcode/thinlto-alias.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-relbf.ll
M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
M llvm/test/Bitcode/thinlto-index-disassembled-by-llvm-dis.ll
M llvm/test/Bitcode/thinlto-type-tests.ll
M llvm/test/Bitcode/thinlto-type-vcalls.ll
A llvm/test/Bitcode/upgrade-uniform-work-group-size.ll
M llvm/test/CodeGen/AArch64/GlobalISel/inttoptr_add.ll
M llvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
M llvm/test/CodeGen/AArch64/GlobalISel/regbankselect-build-vector.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-constant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-dup.mir
M llvm/test/CodeGen/AArch64/aarch64-mops.ll
M llvm/test/CodeGen/AArch64/arm64-abi-varargs.ll
M llvm/test/CodeGen/AArch64/arm64-abi_align.ll
M llvm/test/CodeGen/AArch64/arm64-fp-imm-size.ll
M llvm/test/CodeGen/AArch64/arm64-fp-imm.ll
M llvm/test/CodeGen/AArch64/arm64-fp128.ll
M llvm/test/CodeGen/AArch64/arm64-variadic-aapcs.ll
M llvm/test/CodeGen/AArch64/arm64-vhadd.ll
A llvm/test/CodeGen/AArch64/bitcnt-i256.ll
A llvm/test/CodeGen/AArch64/cmp-i256.ll
A llvm/test/CodeGen/AArch64/div-i256.ll
M llvm/test/CodeGen/AArch64/dup.ll
A llvm/test/CodeGen/AArch64/fcvt-i256.ll
M llvm/test/CodeGen/AArch64/fcvt_combine.ll
M llvm/test/CodeGen/AArch64/fpimm.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
M llvm/test/CodeGen/AArch64/frem-power2.ll
M llvm/test/CodeGen/AArch64/ilp32-va.ll
M llvm/test/CodeGen/AArch64/machine-outliner.ll
A llvm/test/CodeGen/AArch64/mul-i256.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
M llvm/test/CodeGen/AArch64/neon-extadd-extract.ll
M llvm/test/CodeGen/AArch64/ptrauth-irelative.ll
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/replace-with-veclib-armpl.ll
A llvm/test/CodeGen/AArch64/shift-i256.ll
M llvm/test/CodeGen/AArch64/sve-lrint.ll
M llvm/test/CodeGen/AArch64/zext-shuffle.ll
M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-chain-metadata.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/hazard-shift64.mir
M llvm/test/CodeGen/AMDGPU/hsa-metadata-uniform-workgroup-size-v5.ll
M llvm/test/CodeGen/AMDGPU/imm.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
M llvm/test/CodeGen/AMDGPU/inline-attr.ll
M llvm/test/CodeGen/AMDGPU/inlineasm-sgmask.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/invalid-hidden-kernarg-in-kernel-signature.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
M llvm/test/CodeGen/AMDGPU/si-opt-vgpr-liverange-bug-deadlanes.mir
M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.mir
M llvm/test/CodeGen/AMDGPU/siloadstoreopt-misaligned-regsequence.ll
M llvm/test/CodeGen/AMDGPU/swdev-549940.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.mir
M llvm/test/CodeGen/ARM/bfx.ll
M llvm/test/CodeGen/ARM/extract-bits.ll
M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll
M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
M llvm/test/CodeGen/ARM/vector-DAGCombine.ll
M llvm/test/CodeGen/ARM/vector-store.ll
M llvm/test/CodeGen/ARM/vext.ll
M llvm/test/CodeGen/ARM/vselect_imax.ll
M llvm/test/CodeGen/ARM/vtrn.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-cs.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-lib.ll
R llvm/test/CodeGen/DirectX/ShaderFlags/lib-entry-attr-error.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
M llvm/test/CodeGen/NVPTX/lower-args.ll
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
M llvm/test/CodeGen/NVPTX/lower-kernel-ptr-arg.ll
A llvm/test/CodeGen/NVPTX/mark-kernel-ptrs-global.ll
M llvm/test/CodeGen/RISCV/combine-clmul.ll
M llvm/test/CodeGen/RISCV/prefetch.ll
M llvm/test/CodeGen/RISCV/riscv-zihintpause.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_12.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_20.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_split_barrier/split_work_group_barrier_spirv.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroups/cl_intel_sub_groups.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_subgroup_rotate/subgroup-rotate.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-comparison.ll.bak
M llvm/test/CodeGen/Thumb/pr35836.ll
M llvm/test/CodeGen/Thumb/pr35836_2.ll
M llvm/test/CodeGen/Thumb/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/Thumb2/mve-sli-sri.ll
A llvm/test/CodeGen/X86/code_placement_ext_tsp_size_and_perf.ll
M llvm/test/CodeGen/X86/combine-clmul.ll
M llvm/test/CodeGen/X86/known-never-zero.ll
M llvm/test/CodeGen/X86/known-pow2.ll
A llvm/test/DebugInfo/AArch64/asm-cu-language.s
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
M llvm/test/MC/AArch64/data-directive-specifier.s
M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
M llvm/test/MC/AMDGPU/vinterp-fake16.s
M llvm/test/MC/ARM/dwarf-asm-multiple-sections.s
M llvm/test/MC/Disassembler/AMDGPU/vinterp.txt
M llvm/test/MC/ELF/gen-dwarf.s
M llvm/test/TableGen/generic-tables.td
A llvm/test/ThinLTO/X86/Inputs/reduce-promotion-same-file-local-name.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-maythrow.ll
M llvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
M llvm/test/ThinLTO/X86/import_callee_declaration.ll
M llvm/test/ThinLTO/X86/load-store-caching.ll
A llvm/test/ThinLTO/X86/reduce-promotion-devirt.ll
A llvm/test/ThinLTO/X86/reduce-promotion-same-file-local-name.ll
A llvm/test/ThinLTO/X86/reduce-promotion-same-local-name.ll
A llvm/test/ThinLTO/X86/reduce-promotion.ll
M llvm/test/Transforms/CorrelatedValuePropagation/conflict.ll
M llvm/test/Transforms/CorrelatedValuePropagation/icmp.ll
M llvm/test/Transforms/GVN/PRE/pre-load-through-select.ll
M llvm/test/Transforms/GVN/PRE/pre-loop-load-through-select.ll
A llvm/test/Transforms/GVN/load-select-addr-store-fwd.ll
A llvm/test/Transforms/InstCombine/AMDGPU/canonicalize-add-to-gep.ll
M llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.wave.shuffle.ll
M llvm/test/Transforms/InstCombine/AMDGPU/mbcnt.ll
M llvm/test/Transforms/InstCombine/assume-icmp-null-select.ll
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/InstCombine/intrinsic-select.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
M llvm/test/Transforms/LoopIdiom/AArch64/find-first-byte.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/fixed-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/mul-simplification.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs-apple.ll
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions-tf.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-fold-uniform-memops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-fold-tail.ll
A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-group-requires-scalar-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vector-loop-backedge-elimination-with-evl.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/iv-live-outs.ll
M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
A llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory-live-outs.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
M llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
A llvm/test/Transforms/LoopVectorize/max-interleave-factor-debug.ll
M llvm/test/Transforms/LoopVectorize/minmax_reduction.ll
A llvm/test/Transforms/LoopVectorize/non-vectorizable-call-remark.ll
A llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
M llvm/test/Transforms/LoopVectorize/reduction-minmax-users-and-predicated.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
M llvm/test/Transforms/LoopVectorize/unsupported_early_exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
M llvm/test/Transforms/LowerTypeTests/import-unsat.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/revec-reductions.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/revec-select-scalar-vector-cond.ll
M llvm/test/Transforms/SLPVectorizer/X86/bv-root-part-of-graph.ll
M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-use-bicasted-reduction.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-node-with-non-schedulable-parent.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-vectorize-gathered-def-after-use.ll
M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
A llvm/test/Transforms/SLPVectorizer/last-buildvector-node.ll
M llvm/test/Transforms/VectorCombine/AArch64/fold-signbit-reduction-cmp.ll
M llvm/test/Transforms/VectorCombine/RISCV/fold-signbit-reduction-cmp.ll
M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll
M llvm/test/Transforms/WholeProgramDevirt/Inputs/import-indir.yaml
M llvm/test/Transforms/WholeProgramDevirt/import-indir.ll
M llvm/test/tools/gold/X86/thinlto.ll
M llvm/test/tools/llvm-cov/mcdc-macro.test
M llvm/test/tools/llvm-dwarfdump/X86/verify_unit_header_chain.s
M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5_invalid.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-basic-instructions.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-neon-instructions.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-thumb.s
M llvm/test/tools/llvm-mca/ARM/m4-int.s
M llvm/test/tools/llvm-mca/ARM/m55-int.s
M llvm/test/tools/llvm-mca/ARM/m7-int.s
M llvm/test/tools/llvm-mca/ARM/m85-int.s
M llvm/test/tools/llvm-mca/ARM/simple-cortex-m33.s
M llvm/test/tools/llvm-symbolizer/split-dwarf-dwp-invalid.test
M llvm/tools/llvm-mc/llvm-mc.cpp
M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
M llvm/unittests/DebugInfo/DWARF/DWARFListTableTest.cpp
M llvm/utils/TableGen/SearchableTableEmitter.cpp
M llvm/utils/git/github-automation.py
M llvm/utils/profcheck-xfail.txt
M mlir/CMakeLists.txt
M mlir/Maintainers.md
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
M mlir/docs/TargetLLVMIR.md
R mlir/include/mlir-c/Dialect/AMX.h
M mlir/include/mlir-c/Rewrite.h
M mlir/include/mlir/Bindings/Python/IRCore.h
M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
M mlir/include/mlir/Bindings/Python/NanobindUtils.h
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Conversion/VectorToAMX/VectorToAMX.h
R mlir/include/mlir/Dialect/AMX/AMX.td
R mlir/include/mlir/Dialect/AMX/AMXDialect.h
R mlir/include/mlir/Dialect/AMX/AMXInterfaces.td
R mlir/include/mlir/Dialect/AMX/CMakeLists.txt
R mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOpsInterfaces.td
M mlir/include/mlir/Dialect/CMakeLists.txt
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/include/mlir/Dialect/X86/Transforms.h
M mlir/include/mlir/Dialect/X86/X86.td
M mlir/include/mlir/Dialect/X86/X86Dialect.h
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/OpBase.td
M mlir/include/mlir/Support/InterfaceSupport.h
M mlir/include/mlir/Transforms/Passes.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/include/mlir/Transforms/ViewOpGraph.h
M mlir/lib/AsmParser/AttributeParser.cpp
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/lib/Bindings/Python/Rewrite.cpp
R mlir/lib/CAPI/Dialect/AMX.cpp
M mlir/lib/CAPI/Dialect/CMakeLists.txt
M mlir/lib/CAPI/Transforms/Rewrite.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
M mlir/lib/Conversion/VectorToAMX/CMakeLists.txt
M mlir/lib/Conversion/VectorToAMX/VectorToAMX.cpp
M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
R mlir/lib/Dialect/AMX/CMakeLists.txt
R mlir/lib/Dialect/AMX/IR/AMXDialect.cpp
R mlir/lib/Dialect/AMX/IR/CMakeLists.txt
R mlir/lib/Dialect/AMX/Transforms/CMakeLists.txt
R mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/CMakeLists.txt
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/X86/IR/X86Dialect.cpp
M mlir/lib/Dialect/X86/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/AttributeDetail.h
M mlir/lib/IR/BuiltinAttributes.cpp
M mlir/lib/IR/BuiltinTypeInterfaces.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/SymbolTable.cpp
M mlir/lib/Reducer/OptReductionPass.cpp
M mlir/lib/RegisterAllDialects.cpp
M mlir/lib/RegisterAllExtensions.cpp
M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
M mlir/lib/Transforms/CSE.cpp
M mlir/lib/Transforms/Canonicalizer.cpp
M mlir/lib/Transforms/ControlFlowSink.cpp
M mlir/lib/Transforms/GenerateRuntimeVerification.cpp
M mlir/lib/Transforms/InlinerPass.cpp
M mlir/lib/Transforms/LoopInvariantCodeMotion.cpp
M mlir/lib/Transforms/OpStats.cpp
M mlir/lib/Transforms/PrintIR.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/lib/Transforms/SCCP.cpp
M mlir/lib/Transforms/StripDebugInfo.cpp
M mlir/lib/Transforms/SymbolDCE.cpp
M mlir/lib/Transforms/SymbolPrivatize.cpp
M mlir/lib/Transforms/TopologicalSort.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
M mlir/python/mlir/dialects/ext.py
M mlir/test/CAPI/pass.c
M mlir/test/CMakeLists.txt
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Conversion/VectorToAMX/contract-to-amx.mlir
M mlir/test/Conversion/VectorToAMX/transfer-to-amx.mlir
M mlir/test/Conversion/VectorToLLVM/pass-option-serialization.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
R mlir/test/Dialect/AMX/invalid.mlir
R mlir/test/Dialect/AMX/legalize-for-llvm.mlir
R mlir/test/Dialect/AMX/roundtrip.mlir
R mlir/test/Dialect/AMX/side-effects.mlir
M mlir/test/Dialect/Affine/canonicalize.mlir
M mlir/test/Dialect/Affine/invalid-reify-bound-dim.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Dialect/EmitC/form-expressions.mlir
M mlir/test/Dialect/GPU/invalid.mlir
M mlir/test/Dialect/GPU/module-to-binary-invalid-format.mlir
M mlir/test/Dialect/GPU/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/IRDL/invalid.irdl.mlir
M mlir/test/Dialect/Linalg/invalid.mlir
M mlir/test/Dialect/MemRef/high-rank-overflow.mlir
M mlir/test/Dialect/SCF/invalid.mlir
M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
M mlir/test/Dialect/SPIRV/IR/types.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Tensor/fold-constant-extract-slice.mlir
M mlir/test/Dialect/Tosa/error_if_check.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
A mlir/test/Dialect/X86/AMX/invalid.mlir
A mlir/test/Dialect/X86/AMX/legalize-for-llvm.mlir
A mlir/test/Dialect/X86/AMX/roundtrip.mlir
A mlir/test/Dialect/X86/AMX/side-effects.mlir
M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
A mlir/test/IR/dense-elements-type-interface.mlir
M mlir/test/IR/visitors.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/lit.local.cfg
R mlir/test/Integration/Dialect/Vector/CPU/AMX/mulf-full.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/mulf.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/muli-ext.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/muli-full.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/muli.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/tilezero-block.mlir
R mlir/test/Integration/Dialect/Vector/CPU/AMX/tilezero.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/lit.local.cfg
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/mulf-full.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/mulf.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/muli-ext.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/muli-full.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/muli.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/tilezero-block.mlir
A mlir/test/Integration/Dialect/Vector/CPU/X86/AMX/tilezero.mlir
M mlir/test/Integration/Dialect/Vector/CPU/X86/dot.mlir
M mlir/test/Integration/Dialect/Vector/CPU/X86/sparse-dot-product.mlir
M mlir/test/Pass/ir-printing.mlir
M mlir/test/Pass/pass-timing.mlir
M mlir/test/Pass/run-reproducer.mlir
M mlir/test/Target/LLVMIR/amx.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
M mlir/test/Target/SPIRV/tosa-ops.mlir
M mlir/test/Transforms/canonicalize.mlir
M mlir/test/Transforms/composite-pass.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Test/TestTypes.h
M mlir/test/lib/IR/TestVisitors.cpp
M mlir/test/lit.cfg.py
M mlir/test/lit.site.cfg.py.in
M mlir/test/mlir-opt/commandline.mlir
M mlir/test/mlir-tblgen/op-properties-predicates.td
M mlir/test/mlir-tblgen/types.mlir
M mlir/test/python/dialects/ext.py
A mlir/test/python/integration/dialects/bf.py
M mlir/test/python/ir/auto_location.py
A mlir/test/python/ir/auto_location_stable_abi.py
M mlir/test/python/pass_manager.py
M offload/plugins-nextgen/level_zero/include/L0Program.h
A offload/test/offloading/fortran/target-update-custom-mapper.f90
M openmp/cmake/modules/LibompHandleFlags.cmake
M openmp/cmake/modules/LibompUtils.cmake
M openmp/docs/CMakeLists.txt
M openmp/libompd/src/CMakeLists.txt
M openmp/runtime/CMakeLists.txt
M openmp/runtime/cmake/LibompExports.cmake
M openmp/runtime/cmake/LibompMicroTests.cmake
M openmp/runtime/cmake/config-ix.cmake
M openmp/runtime/src/CMakeLists.txt
M openmp/tools/omptest/CMakeLists.txt
M polly/lib/External/isl/GIT_HEAD_ID
M polly/lib/External/isl/isl_ast_build_expr.c
A polly/lib/External/isl/test_inputs/codegen/polly3.c
A polly/lib/External/isl/test_inputs/codegen/polly3.st
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.7
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/fcf2ba2637cb...ac7a8f2be728
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