[all-commits] [llvm/llvm-project] b3d99a: [CodeGen] Use data layout aware constant folder in...
Ryotaro Kasuga via All-commits
all-commits at lists.llvm.org
Mon Mar 9 17:40:23 PDT 2026
Branch: refs/heads/users/kasuga-fj/da-fix-weak-zero-siv-delta-ovfl
Home: https://github.com/llvm/llvm-project
Commit: b3d99ac2cda4d6484ac0dff0b95403b4a8c10465
https://github.com/llvm/llvm-project/commit/b3d99ac2cda4d6484ac0dff0b95403b4a8c10465
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGBuilder.h
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/test/CodeGen/2005-01-02-ConstantInits.c
M clang/test/CodeGen/AArch64/varargs.c
M clang/test/CodeGen/PowerPC/ppc-emmintrin.c
M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c
M clang/test/CodeGen/PowerPC/ppc32-dwarf.c
M clang/test/CodeGen/PowerPC/ppc64-dwarf.c
M clang/test/CodeGen/RISCV/builtin-cpu-is.c
M clang/test/CodeGen/Sparc/sparcv9-dwarf.c
M clang/test/CodeGen/SystemZ/align-systemz-02.c
M clang/test/CodeGen/X86/avx10_2bf16-builtins.c
M clang/test/CodeGen/X86/va-arg-sse.c
M clang/test/CodeGen/aix-builtin-cpu-is.c
M clang/test/CodeGen/aix-builtin-cpu-supports.c
M clang/test/CodeGen/attr-cpuspecific.c
M clang/test/CodeGen/attr-target-clones-riscv.c
M clang/test/CodeGen/attr-target-clones.c
M clang/test/CodeGen/attr-target-version-riscv.c
M clang/test/CodeGen/builtin-cpu-is.c
M clang/test/CodeGen/builtin-cpu-supports.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-in-offsetof-idiom.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
M clang/test/CodeGen/clear_cache.c
M clang/test/CodeGen/complex-strictfp.c
M clang/test/CodeGen/complex.c
M clang/test/CodeGen/mips-inline-asm-modifiers.c
M clang/test/CodeGen/multi-aix-builtin-cpu-supports.c
M clang/test/CodeGen/object-size.c
M clang/test/CodeGen/packed-nest-unpacked.c
M clang/test/CodeGen/ptrauth-function-init.c
M clang/test/CodeGen/ptrauth-restricted-intptr-qualifier.c
M clang/test/CodeGen/unaligned-expr.c
M clang/test/CodeGen/volatile-1.c
M clang/test/CodeGen/volatile-2.c
M clang/test/CodeGen/volatile-complex.c
M clang/test/CodeGenCUDA/address-spaces.cu
M clang/test/CodeGenCUDA/managed-var.cu
M clang/test/CodeGenCXX/2011-12-19-init-list-ctor.cpp
M clang/test/CodeGenCXX/apple-kext-indirect-call-2.cpp
M clang/test/CodeGenCXX/apple-kext-indirect-call.cpp
M clang/test/CodeGenCXX/apple-kext-indirect-virtual-dtor-call.cpp
M clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M clang/test/CodeGenCXX/blocks-cxx11.cpp
M clang/test/CodeGenCXX/builtin-invoke.cpp
M clang/test/CodeGenCXX/catch-nullptr-and-nonzero-offset-in-offsetof-idiom.cpp
M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist-pr12086.cpp
M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist.cpp
M clang/test/CodeGenCXX/cxx11-initializer-aggregate.cpp
M clang/test/CodeGenCXX/cxx1y-initializer-aggregate.cpp
M clang/test/CodeGenCXX/cxx1z-decomposition.cpp
M clang/test/CodeGenCXX/cxx1z-initializer-aggregate.cpp
M clang/test/CodeGenCXX/cxx2a-consteval.cpp
M clang/test/CodeGenCXX/finegrain-bitfield-access.cpp
M clang/test/CodeGenCXX/for-range.cpp
M clang/test/CodeGenCXX/forward-declare-as-array-elem.cpp
M clang/test/CodeGenCXX/global-array-destruction.cpp
M clang/test/CodeGenCXX/inheriting-constructor.cpp
M clang/test/CodeGenCXX/labeled-break-continue.cpp
M clang/test/CodeGenCXX/ms-inline-asm-fields.cpp
M clang/test/CodeGenCXX/no-odr-use.cpp
M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call.cpp
M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
M clang/test/CodeGenCXX/temporaries.cpp
M clang/test/CodeGenCXX/ubsan-nullability-arg.cpp
M clang/test/CodeGenCXX/volatile-1.cpp
M clang/test/CodeGenCXX/vtt-address-space.cpp
M clang/test/CodeGenHIP/amdgpu-barrier-type.hip
M clang/test/CodeGenHLSL/ArrayAssignable.hlsl
M clang/test/CodeGenHLSL/resources/cbuffer_geps.hlsl
M clang/test/CodeGenObjC/super-message-fragileabi.m
M clang/test/DebugInfo/KeyInstructions/complex.c
M clang/test/Modules/templates.mm
M clang/test/OpenMP/atomic_capture_codegen.cpp
M clang/test/OpenMP/atomic_read_codegen.c
M clang/test/OpenMP/atomic_update_codegen.cpp
M clang/test/OpenMP/atomic_write_codegen.c
M clang/test/OpenMP/for_firstprivate_codegen.cpp
M clang/test/OpenMP/for_linear_codegen.cpp
M clang/test/OpenMP/for_private_codegen.cpp
M clang/test/OpenMP/for_reduction_codegen.cpp
M clang/test/OpenMP/parallel_copyin_codegen.cpp
M clang/test/OpenMP/parallel_for_linear_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_firstprivate_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_lastprivate_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/parallel_private_codegen.cpp
M clang/test/OpenMP/parallel_reduction_codegen.cpp
M clang/test/OpenMP/scope_codegen.cpp
M clang/test/OpenMP/sections_firstprivate_codegen.cpp
M clang/test/OpenMP/sections_private_codegen.cpp
M clang/test/OpenMP/sections_reduction_codegen.cpp
M clang/test/OpenMP/single_codegen.cpp
M clang/test/OpenMP/single_firstprivate_codegen.cpp
M clang/test/OpenMP/single_private_codegen.cpp
M clang/test/OpenMP/target_data_codegen.cpp
M clang/test/OpenMP/target_enter_data_codegen.cpp
M clang/test/OpenMP/target_enter_data_depend_codegen.cpp
M clang/test/OpenMP/target_exit_data_codegen.cpp
M clang/test/OpenMP/target_exit_data_depend_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_map_codegen_21.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_update_codegen.cpp
M clang/test/OpenMP/target_update_depend_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/threadprivate_codegen.cpp
M clang/test/SemaHLSL/Resources/static_resources.hlsl
Log Message:
-----------
[CodeGen] Use data layout aware constant folder in CGBuilder (#184819)
Use the DataLayout-aware TargetFolder instead of ConstantFolder in
Clang's CGBuilder. The primary impact of this change is that GEP
constant expressions are now emitted in canonical `getelementptr i8`
form. This is in preparation for the migration to ptradd, which requires
this form.
Part of the test updates were performed by Claude Code and reviewed by
me.
Commit: be9e84e1a9087941f4da9259fb64bb975029b0cb
https://github.com/llvm/llvm-project/commit/be9e84e1a9087941f4da9259fb64bb975029b0cb
Author: ziereis <44057120+ziereis at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
M mlir/test/Dialect/Linalg/specialize-generic-ops.mlir
Log Message:
-----------
[mlir] [linalg] fix failure on specializing matmul with permuted loops (#184294)
This patch fixes generic specialization when the loop dimensions are
permuted in the generic w.r.t. to canonical iterator order of the named
ops by not forwarding the maps of the original generic and instead
recreating them ensuring they always follow the canonical order.
For example, the generic which is to be specialized to a matmul could
have `[parallel, reduction, parallel]` loops, specializing this as is
and just coping the indexing maps like we do now will lead to a
verification error since the dimension will not match the canonical form
the matmul named op expects
e.g. the maps could be:
```
(m, k, n) -> (m,k)
...
```
So we would have to recreate the maps to be:
```
(m,n,k) -> (m,k)
...
```
Assisted by: Claude Code
Commit: a9eeb151fb5681fb254ad8da891424d2fbc033c0
https://github.com/llvm/llvm-project/commit/a9eeb151fb5681fb254ad8da891424d2fbc033c0
Author: Petr Vesely <veselypeta at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A llvm/test/TableGen/SubRegsLaneBitmask.td
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[Tablegen] Fix condition to report when lanemask overflows (#181810)
This PR:
Fixes a slight off-by-one error in the check for how many bits are
allocated for subreg lane masks. If 65 subreg lanes are used, it fails
later, but the error message is not clear as to what has occured.
Commit: 454eb8bc0ac2a3a3e843440c7f45f3fdb32b40b3
https://github.com/llvm/llvm-project/commit/454eb8bc0ac2a3a3e843440c7f45f3fdb32b40b3
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
A lldb/test/API/symstore/Makefile
A lldb/test/API/symstore/TestSymStoreLocal.py
A lldb/test/API/symstore/main.c
Log Message:
-----------
[lldb] Initial plugin and test for SymbolLocatorSymStore (#183302)
Minimal infrastructure for a the SymbolLocator plugin that fetches debug
info from Microsoft SymStore repositories. More features will follow.
SymbolVendorPECOFF was tailored towards DWARF debug info so far. This
patch adds code to load the PDB path from the executable and not bail
out if DWARF sections are missing, so that in the PDB case we still
call `AddSymbolFileRepresentation()` in the very end of
`CreateInstance()`.
The API test in this patch mocks the directory layout from SymStore, so
it doesn't depend on `SymStore.exe` from the Windows SDK. It runs on all
platforms that link debug info in a PDB file, which is still just
Windows, but it could be cross-platform in principle.
Commit: 581f66adf603f17911a45e76f9e11262ce9998c6
https://github.com/llvm/llvm-project/commit/581f66adf603f17911a45e76f9e11262ce9998c6
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Fix valueLocationReference in setVariable request (#184782)
Fixed small typo. We always send invalidated event, so it is not a real
problem.
Commit: 3fd4c0e2a8b173bbd34877821fb616aeb11cdea6
https://github.com/llvm/llvm-project/commit/3fd4c0e2a8b173bbd34877821fb616aeb11cdea6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrAVX512.td
Log Message:
-----------
[X86] Make ISD::ROTL/ROTR vXi16 vector rotates legal on VBMI2 targets (#184768)
Fixes #184002
Commit: d92c56c2f21f123f98b4c3b7e2ba660c925a0192
https://github.com/llvm/llvm-project/commit/d92c56c2f21f123f98b4c3b7e2ba660c925a0192
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Fix various clang-tidy finding (#184831)
I suspect many of them must slipped under the radar in CI because they
were absent in diff (like redundant includes).
Other cases must be some fixed FN in existing checks.
Commit: b5e488e39b1c44cb7d7e16cf846ec9ee7cc56cf7
https://github.com/llvm/llvm-project/commit/b5e488e39b1c44cb7d7e16cf846ec9ee7cc56cf7
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/.clang-tidy
Log Message:
-----------
[clang-tidy][NFC] add config for 22.x clang-tidy (#184834)
Commit: 13a846553b3b2b4b57ee690166dc14de0790a519
https://github.com/llvm/llvm-project/commit/13a846553b3b2b4b57ee690166dc14de0790a519
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/tools/lldb-dap/Handler/ExceptionInfoRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Add memory history in ASan report (#183740)
Added memory history in ASan report (like `memory history` console
command)
Commit: f2e8e2faffb0a1788025dec11c58c015a34757eb
https://github.com/llvm/llvm-project/commit/f2e8e2faffb0a1788025dec11c58c015a34757eb
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.chain.arg.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
Log Message:
-----------
[AMDGPU] Make chain functions receive a stack pointer (#184616)
Currently, chain functions are free to set up a stack pointer if they
need one, and they assume they can start at scratch offset 0. This is
not correct if CWSR and dynamic VGPRs are both enabled, since in that
case we need to reserve an area at offset 0 for the trap handler, but
only when running on a compute queue (which we determine at runtime).
Rather than duplicate in every chain function the code sequence for
determining if/how much scratch space needs to be reserved, this patch
changes the ABI of chain functions so that they receive a stack pointer
from their caller.
Since chain functions can no longer use plain offsets to access their
own stack, we'll also need to allocate a frame pointer more often (and
sometimes also a base pointer). For simplicity, we use the same
registers that `amdgpu_gfx` functions do (s32, s33, s34). This may
change in the future. Chain functions never return to their caller and
thus don't need to preserve the frame or base pointer.
Another consequence is that now we might need to realign the stack in
some cases (since it no longer starts at the infinitely aligned 0).
Commit: 92bd5fc9355eefa65bf1272aea5975e7e9f245bd
https://github.com/llvm/llvm-project/commit/92bd5fc9355eefa65bf1272aea5975e7e9f245bd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A libclc/clc/include/clc/subgroup/clc_subgroup_broadcast.inc
A libclc/clc/include/clc/subgroup/clc_subgroup_broadcast_scalarize.inc
A libclc/clc/include/clc/subgroup/sub_group_broadcast.h
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/subgroup/sub_group_broadcast.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
A libclc/opencl/lib/generic/subgroup/sub_group_broadcast.inc
Log Message:
-----------
libclc: Add sub_group_broadcast (#184846)
Commit: a28699bdcc5fb9075a2f24db6fc89f1f0c920b7d
https://github.com/llvm/llvm-project/commit/a28699bdcc5fb9075a2f24db6fc89f1f0c920b7d
Author: Amina Chabane <amina.chabane at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN1.td
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-forwarding.s
Log Message:
-----------
[AArch64] Model late forwarding in Neoverse N1 (#177590)
Based on the [N1
SWOG](https://developer.arm.com/documentation/109896/latest/), this
patch introduces late forwarding to Neoverse N1.
Commit: 7bce678ec1b60667790914a7a35b75f0bd03a650
https://github.com/llvm/llvm-project/commit/7bce678ec1b60667790914a7a35b75f0bd03a650
Author: Asher Dobrescu <asher.dobrescu at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
A bolt/test/AArch64/check-symbol-area.s
Log Message:
-----------
[BOLT] Check if symbol is in data area of function (#160143)
There are cases in which `getEntryIDForSymbol` is called, where the
given Symbol is in a constant island, and so BOLT can not find its
function. This causes BOLT to reach `llvm_unreachable("symbol not
found")` and crash. This patch adds a check that avoids this crash.
Commit: 2205a23801d4e0cca3cd28670b611a7f6adbeb06
https://github.com/llvm/llvm-project/commit/2205a23801d4e0cca3cd28670b611a7f6adbeb06
Author: Zhijie Wang <yesterda9 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
M clang/test/Sema/Inputs/lifetime-analysis.h
M clang/test/Sema/warn-lifetime-safety.cpp
Log Message:
-----------
[LifetimeSafety] Fix false negative for GSL Owner type with arrow operator (#184725)
`shouldTrackImplicitObjectArg` tracks whether a method call's return
value depends on the implicit object's lifetime. It already handles
operator* on Owner types (return reference), but misses operator->
(return pointer). This fix adds `OO_Arrow` handling for Owner types.
Only affects CFG (-Wlifetime-safety) analysis paths.
Fixes #184361
Commit: 9ce9e4e6c19bed1781db2c20fae7f24c905438e9
https://github.com/llvm/llvm-project/commit/9ce9e4e6c19bed1781db2c20fae7f24c905438e9
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaDeclCXX.cpp
A clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
A clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
Log Message:
-----------
[Clang] Apply exclude_from_explicit_instantiation to dllimport/dllexport (#168171)
Attaching `__declspec(dllexport/dllimport)` to explicit instantiation
declaration made its whole member instantiated even if they were
`__attribute__((__exclude_from_explicit_instantation__))`.
Such members should not be instantiated nor be exported to avoid symbol
leakage or duplication.
Fixes #40363
Fixes #66909
Commit: fee23630db954d75e4a7661cb2c2c56e488aea21
https://github.com/llvm/llvm-project/commit/fee23630db954d75e4a7661cb2c2c56e488aea21
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/test/CodeGen/Mips/optimizeAndPlusShift.ll
M llvm/test/MC/Mips/elf_header.s
Log Message:
-----------
[MIPS] Fix duplicate RUN lines in tests (#182276)
Commit: c044b8b59d8e27070f1ebe4d66733de498a86efc
https://github.com/llvm/llvm-project/commit/c044b8b59d8e27070f1ebe4d66733de498a86efc
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
A mlir/test/Dialect/Affine/SuperVectorize/vectorize_inner_loop_dep_bounds.mlir
Log Message:
-----------
[mlir][affine] Fix crash in super-vectorize when inner loop bounds depend on outer IV (#184770)
When affine-super-vectorize creates the vectorized version of an inner
loop whose bounds reference the outer loop's induction variable, it was
passing the original scalar bound operands directly to the new vector
AffineForOp. These operands reference block arguments of the scalar
outer loop, which are destroyed when the scalar loop nest is erased,
triggering a use_empty() assertion.
Fix this by replacing the bound operands with their scalar value
replacements (via getScalarValueReplacementsFor) before creating the new
vector loop, ensuring the vector inner loop uses the vector outer loop's
induction variable.
Fixes #121321
Commit: 9f1b094fba09590bae54af010cad7780eba764d5
https://github.com/llvm/llvm-project/commit/9f1b094fba09590bae54af010cad7780eba764d5
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/BufferOptimizations.cpp
M mlir/test/Dialect/Bufferization/Transforms/buffer-hoisting.mlir
Log Message:
-----------
[mlir][bufferization] Fix crash in buffer-hoisting on unreachable blocks (#184094)
`BufferAllocationHoisting::hoist()` iterates over all allocations in a
function and tries to move them to their common dominator block. When an
allocation is in an unreachable basic block (a block that cannot be
reached from the function entry), the LLVM dominator tree has no node
for that block. Two subsequent calls would then crash:
1. `findCommonDominator` calls `findNearestCommonDominator` which calls
the LLVM DomTree equivalent and hits the assertion `NodeA && "A must be
in the tree"`.
2. `findPlacementBlock` calls `dominators.getNode(currentBlock)` on the
unreachable block, which returns null, causing a null dereference on
`->getIDom()`.
Fix by skipping allocations whose parent block is not reachable from the
entry block of the function. Such allocations are in dead code and there
is no need to hoist them.
Fixes #118445
Assisted-by: Claude Code
Commit: 2a117f7e13459d966d8c755edca4f32ec1108f83
https://github.com/llvm/llvm-project/commit/2a117f7e13459d966d8c755edca4f32ec1108f83
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/test/Dialect/Affine/invalid.mlir
Log Message:
-----------
[mlir][affine] Reject affine.for with step <= 0 in parser and verifier (#184158)
An affine.for loop with step 0 caused a crash in affine-loop-unroll due
to a division-by-zero assertion in getTripCountMapAndOperands:
llvm::divideCeilSigned(loopSpan, step) -- step == 0
The parser already rejected negative steps but allowed zero through.
Fix this by:
- Updating the parser to reject any step <= 0 (not only negative).
- Adding a verifier check in AffineForOp::verifyRegions() so that loops
constructed programmatically with an invalid step are caught before any
analysis pass runs.
- Adding a defensive early-return guard in getTripCountMapAndOperands
for step <= 0, consistent with getTrivialConstantTripCount which already
performs this guard.
Fixes #107812
Assisted-by: Claude Code
Commit: 0d2c7d71744108fcfcbfb6258994da2c008314ba
https://github.com/llvm/llvm-project/commit/0d2c7d71744108fcfcbfb6258994da2c008314ba
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/test/Dialect/SCF/transform-ops.mlir
Log Message:
-----------
[mlir][scf] Fix crash in loopUnrollJamByFactor for zero trip count loops (#184620)
When loopUnrollJamByFactor is called on a loop with a zero trip count
(e.g., lb == ub), the function correctly detects that the unroll factor
exceeds the trip count and adjusts it to match. However, capping the
factor at 0 leads to unsigned underflow when computing the SmallVector
size for `operandMaps(unrollJamFactor - 1)`, resulting in an attempt to
allocate ~2^64 elements and an immediate crash.
Add an early return when the trip count is zero, matching the pattern
already used by loopUnrollFull. A loop that executes zero times needs no
unrolling.
Fixes #103703
Commit: 119c466e1228f4e5f80953fc6490529f227892f4
https://github.com/llvm/llvm-project/commit/119c466e1228f4e5f80953fc6490529f227892f4
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp
Log Message:
-----------
[LLDB][Windows] Initialize `read_result` (#184874)
When I ran `lldb -o "b main" -o r`, the process crashed at `if
(!read_result || m_read_pending)`, because `read_result` was
uninitialized.
As a sidenote: MSVC inserts calls to `_RTC_UninitUse` which causes a
pretty error message when debugging with VS:
> Exception has occurred: The variable 'read_result' is being used
without being initialized.
> Run-Time Check Failure [#]3 - The variable 'read_result' is being used
without being initialized.
With LLDB, you get
```
(lldb) r
Process 12344 stopped
* thread #9, stop reason = Exception 0x80000003 encountered at address 0x7ff96516c96a
frame #0: 0x00007ff96516c96b liblldb.dll`failwithmessage(retaddr=0x00007ff95742cb02, crttype=1, errnum=3, msg="The variable 'read_result' is being used without being initialized.") at error.cpp:210
```
We could improve on the stop reason that's displayed.
Commit: d64a9fe7814d4061aaaf067fef5b1393f4f1529e
https://github.com/llvm/llvm-project/commit/d64a9fe7814d4061aaaf067fef5b1393f4f1529e
Author: Kito Cheng <kito.cheng at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/riscv.c
Log Message:
-----------
[compiler-rt][RISCV] Initialize length only when __init_riscv_feature… (#115449)
…_bits success
That could give us a simple way to detect `__init_riscv_feature_bits`
got fail.
See also https://github.com/riscv-non-isa/riscv-c-api-doc/pull/95
Commit: df113bd2a25197af6b99501df1975490f159e4ff
https://github.com/llvm/llvm-project/commit/df113bd2a25197af6b99501df1975490f159e4ff
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/bit-manip-i512.ll
M llvm/test/CodeGen/X86/shift-i512.ll
M llvm/test/CodeGen/X86/wide-scalar-shift-by-byte-multiple-legalization.ll
Log Message:
-----------
[X86] Expand i512 shifts on AVX512 targets (#183198)
Cast to vXi64 and use EXPAND/COMPRESS to left/right shift the i64
elements into place, then use FSHL/FSHR to perform the final bitshift
Fixes: #178215
Commit: fb449d017259a6e26df6b37d3d8de7da3db5b544
https://github.com/llvm/llvm-project/commit/fb449d017259a6e26df6b37d3d8de7da3db5b544
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A llvm/test/CodeGen/X86/andnot-sink-not.ll
Log Message:
-----------
[X86] Add baseline andnot tests for #172329 (#184991)
Commit: 9c3029774ad5d30718877286d2df776a9e28e052
https://github.com/llvm/llvm-project/commit/9c3029774ad5d30718877286d2df776a9e28e052
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/include/mlir/Interfaces/LoopLikeInterface.td
M mlir/lib/Interfaces/CMakeLists.txt
M mlir/lib/Interfaces/LoopLikeInterface.cpp
M mlir/test/Dialect/SCF/invalid.mlir
M mlir/test/Dialect/SparseTensor/invalid.mlir
A mlir/test/IR/test-branch-types-compatible.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir] Defer `LoopLikeOpInterface` type checks to `RegionBranchOpInterface` (#184116)
`LoopLikeOpInterface`'s verifier hardcodes type equality checks for
init/iter_arg/yield/result edges. This prevents downstream ops with
compatible-but-unequal types from using the pass verifier, since there
is no override mechanism.
`RegionBranchOpInterface` already verifies types along all control-flow
edges and provides an overridable `areTypesCompatible` hook. In
practice,
most loop ops implement both interfaces, making the
`LoopLikeOpInterface`
type checks redundant (the existing code even had a comment
acknowledging
this).
This PR removes the redundant type checks from `LoopLikeOpInterface`
when the op also implements `RegionBranchOpInterface`, letting that
interface handle type compatibility (including any custom
`areTypesCompatible` overrides). For ops that only implement
`LoopLikeOpInterface` (e.g. `affine.parallel`, `tosa.while_loop`), the
strict type equality checks are retained as a fallback. the verifier's
loop-result check to use structured bindings with `llvm::enumerate` and
remove dead variables.
Commit: 3c0719d32131fea5031c1efd4e7d288ecea17ae4
https://github.com/llvm/llvm-project/commit/3c0719d32131fea5031c1efd4e7d288ecea17ae4
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
[ORC] Add no-overlap check to WaitingOnGraph::ElementSet::merge. (#184992)
When merging ElementSets and ContainerElementMaps, clients can now
assert that no elements in the merged sets / maps overlap.
Use this to (1) replace a loop in the WaitingOnGraph::Coalescer that was
already checking this condition, and (2) add this check to an existing
merge that should have this property.
Commit: e16fc0ccf7ae46e68ac4e71c9b8e5c0543549409
https://github.com/llvm/llvm-project/commit/e16fc0ccf7ae46e68ac4e71c9b8e5c0543549409
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
M llvm/test/CodeGen/AMDGPU/remat-fp64-constants.ll
Log Message:
-----------
AMDGPU/GlobalISel: Regbanklegalize rules for G_PHI (#179735)
Move G_PHI handling to AMDGPURegBankLegalizeRules.cpp.
Support all legal types.
Commit: 576213343f791899c0d94e93ff2e515b1af02eb4
https://github.com/llvm/llvm-project/commit/576213343f791899c0d94e93ff2e515b1af02eb4
Author: Gergo Stomfai <stomfaig at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86TargetMachine.cpp
A llvm/test/CodeGen/X86/GlobalISel/postlegalizer-combiner-identity.mir
Log Message:
-----------
[X86][GISel] Add initial tests for x86 postleg combiner (#183844)
Moved over from AArch64 backend with adjusted registers.
Commit: 182133c3b9e17367b2a65eb2bdd7464794e69120
https://github.com/llvm/llvm-project/commit/182133c3b9e17367b2a65eb2bdd7464794e69120
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/CodeGen/volatile-1.c
M clang/test/CodeGenCXX/volatile-1.cpp
Log Message:
-----------
[Clang] Fix test failures with 32-bit default triple
Fix failures after #184819.
Commit: af0f3379ae3ab5ab49621c575b5ccbc5f597a449
https://github.com/llvm/llvm-project/commit/af0f3379ae3ab5ab49621c575b5ccbc5f597a449
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/builtins-x86.c
Log Message:
-----------
[CIR] Implement 'bzero' builtin lowering in terms of cir.libc.memcpy (#184835)
This showed up on a benchmark, so getting it out of the way. bzero just
does a memset-0, so this lowers to the cir.libc.memset intrinsic. Tests
added were from the classic codegen with improved check lines.
Commit: 57b0ff15880b3d5e798e07d76c3ed03289090cc8
https://github.com/llvm/llvm-project/commit/57b0ff15880b3d5e798e07d76c3ed03289090cc8
Author: Paul Osmialowski <pawel.osmialowski at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/CodeGen/builtin_vectorelements.c
Log Message:
-----------
[clang][test] Ensure the builtin_vectorelements.c test is actually executed (#184978)
The REQUIRES statement in the builtin_vectorelements.c test case is an
all-or-nothing declaration, hence all of the required conditions would
need to be fulfilled to make this test being executed. Namely, all of
those required targets whould have to be registered, which is a rare
situstion, therefore this test case is rarely ever executed.
This patch changes those REQUIRES statements into %if conditions.
These conditions are needed for those particular targets as their test
sections do include the header files available only when those targets
are registered.
Commit: 83bff14dfd5e56544dd594cafe26cf796ce81221
https://github.com/llvm/llvm-project/commit/83bff14dfd5e56544dd594cafe26cf796ce81221
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
Log Message:
-----------
[MLIR][GPUToLLVMSPV] Relax the width check in gpu.shuffle lowering (#183445)
This PR modifies gpu.shuffle lowering so only conduct the width check
when the subgroupsize attribute is available.
Commit: 9d25d5c4a7f7840ef7ea75633757469148f12ebf
https://github.com/llvm/llvm-project/commit/9d25d5c4a7f7840ef7ea75633757469148f12ebf
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/include/mlir/Dialect/Linalg/Passes.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/MorphOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
R mlir/test/Dialect/Linalg/roundtrip-linalg-named-ops.mlir
A mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-category-ops.mlir
A mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-named-ops.mlir
M mlir/test/Dialect/Linalg/specialize-generic-ops.mlir
Log Message:
-----------
[mlir][linalg] Generic to category specialization (#184624)
Adds initial support for generic to category linalg morphism.
Only conversion to contraction op is supported for now.
Commit: 727ace51bc4227d112a8566072210cfe2593c404
https://github.com/llvm/llvm-project/commit/727ace51bc4227d112a8566072210cfe2593c404
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/sve-pred-selectop.ll
M llvm/test/CodeGen/Thumb2/mve-minmax.ll
M llvm/test/CodeGen/Thumb2/mve-pred-selectop.ll
M llvm/test/CodeGen/Thumb2/mve-pred-selectop2.ll
M llvm/test/CodeGen/Thumb2/mve-pred-selectop3.ll
M llvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll
Log Message:
-----------
[AArch64][Thumb2] Add missing select FMF in tests
These currently have the "fast" flag on the fcmp, but not the
select. The transform actually needs it (or more specifically the
nsz flag) to be on the select for correctness, but due to an
implementation bug it's currently accepted on the fcmp as well.
I don't believe the intent of any of these tests is to test
specifically the "fast fcmp with non-fast select" situation,
so add the missing flag to the select instructions.
Commit: 6ecbc0c96e56602705dccada6414385d31b4a98b
https://github.com/llvm/llvm-project/commit/6ecbc0c96e56602705dccada6414385d31b4a98b
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/attr-counted-by-for-pointers.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/union-tbaa1.c
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M flang/test/Integration/unroll-loops.f90
M flang/test/Lower/HLFIR/unroll-loops.fir
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Analysis/BasicAA/featuretest.ll
M llvm/test/CodeGen/AArch64/sme-aarch64-svcount-O3.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-addrspacecast.ll
M llvm/test/CodeGen/Hexagon/autohvx/vector-align-tbaa.ll
M llvm/test/DebugInfo/Generic/instcombine-phi.ll
M llvm/test/Transforms/InstCombine/2006-12-15-Range-Test.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-gatherscatter.ll
M llvm/test/Transforms/InstCombine/AMDGPU/canonicalize-add-to-gep.ll
M llvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
M llvm/test/Transforms/InstCombine/align-addr.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/array.ll
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
M llvm/test/Transforms/InstCombine/canonicalize-gep-mul.ll
M llvm/test/Transforms/InstCombine/cast.ll
M llvm/test/Transforms/InstCombine/cast_phi.ll
M llvm/test/Transforms/InstCombine/cast_ptr.ll
M llvm/test/Transforms/InstCombine/constant-fold-address-space-pointer.ll
M llvm/test/Transforms/InstCombine/dependent-ivs.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstCombine/gep-addrspace.ll
M llvm/test/Transforms/InstCombine/gep-alias.ll
M llvm/test/Transforms/InstCombine/gep-canonicalize-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-combine-loop-invariant.ll
M llvm/test/Transforms/InstCombine/gep-custom-dl.ll
M llvm/test/Transforms/InstCombine/gep-fold-chained-const-select.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-sext.ll
M llvm/test/Transforms/InstCombine/gep-srem-to-and-deref.ll
M llvm/test/Transforms/InstCombine/gep-vector-indices.ll
M llvm/test/Transforms/InstCombine/gep-vector.ll
M llvm/test/Transforms/InstCombine/gepofconstgepi8.ll
M llvm/test/Transforms/InstCombine/gepphigep.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/indexed-gep-compares.ll
M llvm/test/Transforms/InstCombine/known-phi-recurse.ll
M llvm/test/Transforms/InstCombine/load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/load-cmp.ll
M llvm/test/Transforms/InstCombine/load.ll
M llvm/test/Transforms/InstCombine/loadstore-alignment.ll
M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics-inseltpoison.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
M llvm/test/Transforms/InstCombine/mem-gep-zidx.ll
M llvm/test/Transforms/InstCombine/memcpy-addrspace.ll
M llvm/test/Transforms/InstCombine/memcpy-from-global.ll
M llvm/test/Transforms/InstCombine/multi-size-address-space-pointer.ll
M llvm/test/Transforms/InstCombine/narrow.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/pr38984-inseltpoison.ll
M llvm/test/Transforms/InstCombine/pr38984.ll
M llvm/test/Transforms/InstCombine/pr58901.ll
M llvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll
M llvm/test/Transforms/InstCombine/remove-loop-phi-multiply-by-zero.ll
M llvm/test/Transforms/InstCombine/scalable-select.ll
M llvm/test/Transforms/InstCombine/select-gep.ll
M llvm/test/Transforms/InstCombine/shift.ll
M llvm/test/Transforms/InstCombine/sink_instruction.ll
M llvm/test/Transforms/InstCombine/store.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/InstCombine/vec_demanded_elts-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
M llvm/test/Transforms/InstCombine/vec_phi_extract-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vec_phi_extract.ll
M llvm/test/Transforms/InstCombine/vector_gep1-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vector_gep1.ll
M llvm/test/Transforms/InstCombine/vector_gep2.ll
M llvm/test/Transforms/InstCombine/vectorgep-crash.ll
M llvm/test/Transforms/InstCombine/wcslen-1.ll
M llvm/test/Transforms/InstCombine/wcslen-3.ll
M llvm/test/Transforms/InstCombine/wcslen-5.ll
M llvm/test/Transforms/LoopSimplify/merge-exits.ll
M llvm/test/Transforms/LoopUnroll/AArch64/runtime-unroll-generic.ll
M llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
M llvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll
M llvm/test/Transforms/LoopVectorize/AArch64/aarch64-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-large-strides.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vfabi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-no-scalar-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/addressing.ll
M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
M llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/bsd_regex.ll
M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
M llvm/test/Transforms/LoopVectorize/gep_with_bitcast.ll
M llvm/test/Transforms/LoopVectorize/histograms.ll
M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
M llvm/test/Transforms/LoopVectorize/if-conversion.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-2.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/loop-scalars.ll
M llvm/test/Transforms/LoopVectorize/non-const-n.ll
M llvm/test/Transforms/LoopVectorize/phi-cost.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-min-max.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/runtime-check.ll
M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
M llvm/test/Transforms/LoopVectorize/scalar_after_vectorization.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/LoopVectorize/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/vector-geps.ll
M llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM1.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/extra-unroll-simplifications.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-load-from-vector-loop.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleave_vec.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleavevectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/loopflatten.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/peel-multiple-unreachable-exits-for-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/predicated-reduction.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/reduce_submuladd.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sinking-vs-if-conversion.ll
M llvm/test/Transforms/PhaseOrdering/SystemZ/sub-xor.ll
M llvm/test/Transforms/PhaseOrdering/X86/earlycse-after-simplifycfg-two-entry-phi-node-folding.ll
M llvm/test/Transforms/PhaseOrdering/X86/excessive-unrolling.ll
M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions2.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions3.ll
M llvm/test/Transforms/PhaseOrdering/X86/pixel-splat.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr88239.ll
M llvm/test/Transforms/PhaseOrdering/X86/preserve-access-group.ll
M llvm/test/Transforms/PhaseOrdering/X86/simplifycfg-late.ll
M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
M llvm/test/Transforms/PhaseOrdering/X86/spurious-peeling.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv-nounroll.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
M llvm/test/Transforms/PhaseOrdering/gvn-replacement-vs-hoist.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
M llvm/test/Transforms/PhaseOrdering/loop-vectorize-bfi.ll
M llvm/test/Transforms/PhaseOrdering/lto-argpromotion-ipsccp.ll
M llvm/test/Transforms/PhaseOrdering/lto-licm.ll
M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
M llvm/test/Transforms/PhaseOrdering/simplifycfg-options.ll
M llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/uniform-unswitch.ll
M llvm/test/Transforms/SimplifyCFG/Hexagon/switch-to-lookup-table.ll
Log Message:
-----------
[InstCombine] Canonicalize GEP source element types (#180745)
Canonicalize GEP source element types from `%T` to `[sizeof(%T) x i8]`.
This is intended to flush out any remaining places that rely on GEP
element types, as part of the `ptradd` migration. The impact of this
change is expected to be fairly minimal (we might enable a few more
hoist/sink style folds that depend on equal GEP types).
Commit: 63fbf34a7ec5bf16551f83f172905e66071c9353
https://github.com/llvm/llvm-project/commit/63fbf34a7ec5bf16551f83f172905e66071c9353
Author: Natanael Copa <ncopa at alpinelinux.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
Log Message:
-----------
[Hexagon][test] Fix more tests on linux-musl (#66785)
-march=hexagon uses the default target triple and changes the arch part
of hexagon. On linux-musl, this essentially becomes
hexagon-unknown-linux-musl which has different code generation. Use
-mtriple instead.
Link:
https://github.com/llvm/llvm-project/commit/944110353b970fc99de3f012292b4c29d4d91999
Link: https://github.com/llvm/llvm-project/issues/48936
Commit: 8c9a62b9e47a3c3d31f392e7ad628d8dd7d097aa
https://github.com/llvm/llvm-project/commit/8c9a62b9e47a3c3d31f392e7ad628d8dd7d097aa
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
Log Message:
-----------
[CIR][NFC] Add missing enum element added to CIRGenStmt (#185010)
The unresolved SYCL kernel call stmt class was added in a different
patch that didn't deal with CIR. This patch adds it to the list in teh
correct spot, which is an unreachable anyway.
Commit: 23cb4e5f46026da16de2a0457a4391a1a53f62d6
https://github.com/llvm/llvm-project/commit/23cb4e5f46026da16de2a0457a4391a1a53f62d6
Author: Nuri Amari <nuri.amari99 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
A clang/test/CodeGen/distributed-thin-lto/pass-plugin.ll
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M lld/ELF/LTO.cpp
M lld/MachO/LTO.cpp
M llvm/include/llvm/LTO/Config.h
M llvm/lib/LTO/LTOBackend.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
Support -fpass-plugin + -fthinlto-index together (#183525)
Without this change, passing -fthinlto-index causes -fpass-plugin
arguments to be ignored. We want to be able to use plugins with
distributed thin-lto, so add support for this.
Commit: 2b4a5d398fa8b25441a84ceaefcf3beb12c1d3e4
https://github.com/llvm/llvm-project/commit/2b4a5d398fa8b25441a84ceaefcf3beb12c1d3e4
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A .github/workflows/sycl-tests.yml
Log Message:
-----------
[CI][libsycl] Add libsycl precommit testing job (#184174)
We want to add some basic precommit CI for `libsycl`, similar to what we
have for `SPIR-V`.
Here it just builds `libsycl` and runs `check-sycl`, but only non-GPU
tests will be run because this job is run on GitHub-hosted runners which
don't have a GPU, so we will never run GPU tests in this CI job.
Postcommit already runs SYCL GPU tests.
We have runtime GPU detection as part of the `check-sycl` lit setup so
everything works fine.
Currently there is only one `check-sycl` test at all and it is a GPU
test, so `check-sycl` is basically a no op, so this is de-facto build
only.
---------
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Commit: bc077f52c9fe20f60f1319eee0d704e5265fde1b
https://github.com/llvm/llvm-project/commit/bc077f52c9fe20f60f1319eee0d704e5265fde1b
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/test/API/symstore/Makefile
M lldb/test/API/symstore/TestSymStoreLocal.py
Log Message:
-----------
[lldb] Fix lldb-x86_64-win bot after 454eb8bc0ac (#185004)
Attempt to fix forward a test failure after llvm-project#183302,
which seems to be caused by reusing build directories for test
inferiors in LLDB API tests.
Commit: c47fb2d2b70841d00c5990582355632d6607bf51
https://github.com/llvm/llvm-project/commit/c47fb2d2b70841d00c5990582355632d6607bf51
Author: Gowtham Tammana <128911018+gowtham-sarc at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BLAKE3/BUILD.gn
Log Message:
-----------
[gn build] Guard the BLAKE3 assembly sources with platform (#70110)
The source_set target defined for `llvm/lib/Support/BLAKE3` has assembly
files that are specific to x64 platform. Adding the relevant conditional
for this target.
Signed-off-by: Gowtham Tammana <g.tammana at samsung.com>
Commit: 5bdf8ca14b3f0ce4565fde467d0d8aaea0b6d0e6
https://github.com/llvm/llvm-project/commit/5bdf8ca14b3f0ce4565fde467d0d8aaea0b6d0e6
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/CodeGen/X86/andnot-sink-not.ll
Log Message:
-----------
[X86] Sink NOT to be fold into ANDN (#172329)
Undoes a negation being hoisted out of a loop, so that if can be fold
into an inverted bitwise operation in the loop.
Implements #108840 on X86
Commit: 00dd77ac5bd3c5a7bb7ffbd30fb7f1ad97549067
https://github.com/llvm/llvm-project/commit/00dd77ac5bd3c5a7bb7ffbd30fb7f1ad97549067
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Fix build after #184116 (#185019)
This PR adds a dependency to the `BUILD.bazel` files that is missing
after #184116.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: c8f0d37310d6f3c3f492ff22633b700ea5b20278
https://github.com/llvm/llvm-project/commit/c8f0d37310d6f3c3f492ff22633b700ea5b20278
Author: João Andrade <49215007+jpgianfaldoni at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/IfConversion.cpp
Log Message:
-----------
Fix IfConversion UpdatePredRedefs method documentation (#69918)
Fixes #68283
Commit: 03c34bb59eb9e34fd17cb10b1f8c70725c24983d
https://github.com/llvm/llvm-project/commit/03c34bb59eb9e34fd17cb10b1f8c70725c24983d
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
A llvm/test/Transforms/LoopVectorize/VPlan/interleave-conditional-scalar-assignment-vplan.ll
M llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
Log Message:
-----------
[LV] Support interleaving with FindLast reductions (#184099)
This extends the existing support to work with arbitrary interleave
factors. The main change here is reworking the ExtractLastActive
VPInstruction to take a variable amount of arguments and handling it in
unrollRecipeByUF and VPInstruction::generate.
The select condition for all mask/data values in a find-last recurrence
is the true if the mask for any part is true. Because of this the masks
for inactive parts will be updated to all-false when the parts with
active lanes are updated. This ensures the mask/data for last active
element always corresponds to the greatest part with an active lane.
This means finding the last element in the middle block simply requires
chaining the `extract.last.active` to forward the result from the last
active part through any inactive parts ahead of it.
Commit: 110082566b000af791d6fed338831e276355dc68
https://github.com/llvm/llvm-project/commit/110082566b000af791d6fed338831e276355dc68
Author: nora <48135649+Noratrieb at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
[ConstantFolding] Consider `tanh*` to always be a noop (#70794)
fixes https://github.com/rust-lang/rust/issues/108965
Most trigonometry functions are already considered, but tanh* was
missing. According to POSIX, these functions may fail on subnormals, so
we choose not to fail, allowing the calls to be eliminated.
https://pubs.opengroup.org/onlinepubs/9699919799/functions/tanh.html
The existing test llvm/test/Transforms/InstSimplify/ConstProp/calls.ll
already eliminated the call since it marked tanh as `nounwind`, which
causes it to be eliminated as well.
I am not sure whether I should add a new test without the `nounwind` or
whether it makes more sense to remove the `nounwind` from the existing
tests.
Co-authored-by: Nilstrieb <48135649+Nilstrieb at users.noreply.github.com>
Commit: b9356b047e5a4dc853f8e2b79dcec7b865e5bad6
https://github.com/llvm/llvm-project/commit/b9356b047e5a4dc853f8e2b79dcec7b865e5bad6
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops-invalid.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir][test] Reject TestWithBoundsOp with mismatched attribute width in verifier (#184093)
Add a verifier to `TestWithBoundsOp` that rejects bounds attributes
whose
bit width does not match the result type's storage width (e.g., `10 :
i64`
for an `i8` result). This makes the mismatch invalid IR rather than
silently
accepting it, preventing downstream crashes in consumers such as
`TestReflectBoundsOp::inferResultRanges` that assert on matching widths.
`inferResultRanges` is reverted to its original one-liner; the new
`verify()` method enforces the invariant at IR construction time.
A dedicated test file (`infer-int-range-test-ops-invalid.mlir`) uses
`-verify-diagnostics` to check the emitted error message.
Fixes #120882
Assisted-by: Claude Code
Commit: 9e15c6cc3358287e93a25d869a31ab14c1791dcb
https://github.com/llvm/llvm-project/commit/9e15c6cc3358287e93a25d869a31ab14c1791dcb
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaCUDA.cpp
A clang/test/SemaCUDA/dtor-constexpr-virtual-base.cu
Log Message:
-----------
[CUDA/HIP] Do not ignore complete destructors in abstract classes (#184894)
Summary:
The complete destructor destroys virtual base subobjects even for
abstract classes, so target inference must consider vbases when
analyzing destructors.
This was motivated by behavior observed from a bug where a constexpr
function that calls a non-constexpr function. I believe this error is
secondary, but can be fixed by this observation. The issue was the
switch to C++20 allowing allocator destructors to be constexpr began
opting the function into `__host__ __device__` contexts. This function
then called a non-constexpr function through a type-trait interface
which lead to that only having `__host__` which is illegal.
The fix offered here is to check the bases of this function and
correctly derive that it is `__host__` and not `__host__ __device__` as
was previously inferred. This should only affect cases where the *only*
member is an inherited virtual destructor. Previously we found no bases
and thus made no judgement.
Fixes: https://github.com/llvm/llvm-project/issues/184856
Commit: 8e40387ce4ad6dc1635c6cd7cdeea8157297569f
https://github.com/llvm/llvm-project/commit/8e40387ce4ad6dc1635c6cd7cdeea8157297569f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang-rt/CMakeLists.txt
M flang-rt/README.md
M flang-rt/cmake/modules/AddFlangRTOffload.cmake
M flang-rt/include/flang-rt/runtime/environment.h
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/external-unit.cpp
M flang-rt/lib/runtime/pseudo-unit.cpp
M flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/CMakeLists.txt
M flang/docs/GettingStarted.md
Log Message:
-----------
[flang-rt] Remove experiemental OpenMP offloading support (#183653)
Summary:
This, as far as I am aware, has mostly been superceded by the runtimes
build that's built on top of libc. This build links 30% faster, supports
more functionality, and uses 95% less disk space, so it seems to be the
direction we want to go.
CUDA support remains, this is not needed urgently.
Commit: 91b686dc1e0f27611ee34d0fe67b306db72e98f0
https://github.com/llvm/llvm-project/commit/91b686dc1e0f27611ee34d0fe67b306db72e98f0
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
Log Message:
-----------
[NFC][analyzer] Remove orphaned ExprEngine::getStmt() (#185020)
Its definition was removed fifteen(!) years ago by commit
b1d3d968725baf28a00b12aad760434036cbe704.
Commit: 20ded7d3b9412cf7e220ec04686bce9d4a645d19
https://github.com/llvm/llvm-project/commit/20ded7d3b9412cf7e220ec04686bce9d4a645d19
Author: tdegioanni-nvidia <tdegioanni at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/Operation.h
M mlir/lib/IR/Operation.cpp
M mlir/unittests/IR/OperationSupportTest.cpp
Log Message:
-----------
[mlir] Add option to cloning for different results (#184202)
With his permission while he is away, I am resurrecting @zero9178's very
first MLIR PR #65171 that adds an option to change result in the
operation cloning mechanism. This is very useful as cloning is currently
the only way to change the results of an operation.
> Since Operations cannot change the results after creation, a clone is
necessary to create new results. Doing such an operation generically has
not been possible so far. This PR therefore adds a new option to the
CloneOptions struct allowing adding changing the results of the created
operation.
>
> The caller is responsible to ensure that this is a valid operation and
setting the IRMapping accordingly afterwards if required.
---------
Co-authored-by: zero9178 <markus.boeck02 at gmail.com>
Commit: 057b7181ab5c59b0fef1d8c4ca2916b71abe8708
https://github.com/llvm/llvm-project/commit/057b7181ab5c59b0fef1d8c4ca2916b71abe8708
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
R lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
R lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
R lldb/test/API/symstore/Makefile
R lldb/test/API/symstore/TestSymStoreLocal.py
R lldb/test/API/symstore/main.c
Log Message:
-----------
Revert "[lldb] Initial plugin and test for SymbolLocatorSymStore" (#185032)
Reverts llvm/llvm-project#185004 and llvm/llvm-project#183302
Commit: 57614e8810532d994225c3fd2d2a6486e24478e7
https://github.com/llvm/llvm-project/commit/57614e8810532d994225c3fd2d2a6486e24478e7
Author: Łukasz Plewa <lukasz.plewa at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M offload/plugins-nextgen/cuda/src/rtl.cpp
Log Message:
-----------
[OFFLOAD] Replace C-style casts with C++ style casts in obtainInfoImpl (#185023)
Replace C-style bool casts (bool)TmpInt with C++ functional casts
bool(TmpInt)
Commit: ad6d87da32f9d124ead257af45310348e092767c
https://github.com/llvm/llvm-project/commit/ad6d87da32f9d124ead257af45310348e092767c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
Revert "[ConstantFolding] Consider `tanh*` to always be a noop (#70794)"
This reverts commit 110082566b000af791d6fed338831e276355dc68.
This broke check-llvm.
Commit: 7c2f2a5573d92b088a17c0554ab19c70ea9d9c58
https://github.com/llvm/llvm-project/commit/7c2f2a5573d92b088a17c0554ab19c70ea9d9c58
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
Log Message:
-----------
[clang-doc][NFC] Move static functions into JSONGenerator as methods (#184663)
Most of the JSONGenerator functionality was provided by a series of
static functions. This made it unwieldy to access useful properties of
ClangDocContext. As methods, they can now access a pointer to CDCtx.
An LLM was used to automate declaring the functions inside the class and
adding the scope resolution operators.
Fixes #181767
Commit: b7cc3c5682f9eca27b836dcb13cab97dbb5db626
https://github.com/llvm/llvm-project/commit/b7cc3c5682f9eca27b836dcb13cab97dbb5db626
Author: Michael Park <mcypark at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/diag-pragma-nonaffecting.cpp
Log Message:
-----------
[C++20][Modules] Do not apply `getAdjustedOffset` to file-internal byte offset. (#184956)
In https://reviews.llvm.org/D137214 and
https://reviews.llvm.org/D136624, offset adjustment logic was added to
account for the non-affecting module map files that are removed. While
the adjustment logic applies to global source location offsets, they do
not apply to file-internal offsets (relative within the file).
In `ASTWriter::WritePragmaDiagnosticMappings`, the adjustment is applied
to `StatePoint.Offset`s in `StateTransitions`. However, these offsets
are file-internal offsets, not global source location offsets. As such,
applying adjustment to these offsets result in incorrect diagnostic
behavior from the module.
Specifically, wrapping a piece of code in `pragma clang diagnostic
push/pop`, inside of a module is not applied correctly. A new test case
`diag-pragma-nonaffecting.cpp` was added to verify the broken behavior
as well as the corrected behavior with this commit.
Assisted-by: Claude Opus 4.6
Commit: 864d0452233e2f7d3772ad1170b4e0b3a7a6670c
https://github.com/llvm/llvm-project/commit/864d0452233e2f7d3772ad1170b4e0b3a7a6670c
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/CIR/CodeGen/clear-cache.c
M clang/test/CIR/CodeGen/complex-cast.cpp
M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
M clang/test/CIR/CodeGen/global-array-dtor.cpp
M clang/test/CIR/CodeGen/global-init.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/CodeGen/vtt.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-constant-p.c
Log Message:
-----------
[CIR] Fix checks following b3d99ac2cda4d6484ac0dff0b95403b4a8c10465. NFC
- b3d99ac2cda4d6484ac0dff0b95403b4a8c10465 makes constant folder data
layout aware. Match checks accordingly.
Commit: 220f91a05b3d5cb2c81d38afff83892f78d8a586
https://github.com/llvm/llvm-project/commit/220f91a05b3d5cb2c81d38afff83892f78d8a586
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/test/Transforms/inlining.mlir
M mlir/test/lib/Dialect/Test/TestDialectInterfaces.cpp
Log Message:
-----------
[MLIR] Fix crash in inliner when return arity mismatches call results (#185037)
The `handleTerminator` implementation in the test dialect's inliner
interface was asserting that the number of `test.return` operands equals
the number of values to replace. This assertion fires when inlining a
callee whose body uses `test.return` with values into a call site that
expects zero results (e.g., a void `llvm.func` calling a function whose
implementation uses `test.return` with operands).
Replace the assertion with a conditional early return so the inliner
gracefully skips replacement instead of crashing.
Fixes #108376
Assisted-by: Claude Code
Commit: d98d8b962b7aa9deb55d8e68d65c94ffcb3fe650
https://github.com/llvm/llvm-project/commit/d98d8b962b7aa9deb55d8e68d65c94ffcb3fe650
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
M lldb/source/Host/windows/ProcessLauncherWindows.cpp
Log Message:
-----------
[lldb][windows][NFC] expose ProcessLauncherWindows methods (#183579)
Commit: 00e247ad76fdd0cd5841193950c8d4927e3015f8
https://github.com/llvm/llvm-project/commit/00e247ad76fdd0cd5841193950c8d4927e3015f8
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A mlir/include/mlir/Dialect/UB/IR/UBMatchers.h
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/IR/test-matchers.mlir
M mlir/test/lib/IR/TestMatchers.cpp
Log Message:
-----------
[mlir][ub] Add `m_Poison()` matcher (#185022)
Add a dedicated matcher for poison values in the UB dialect, similar to
`m_Constant()` for general constants. The matcher uses
`PoisonAttrInterface` for future extensibility.
Replace existing checks against `ub::PoisonAttr` with the new matcher.
Assisted-by: claude
Commit: 2ce5f91425ea90195d8de1b254aedcac94e602e8
https://github.com/llvm/llvm-project/commit/2ce5f91425ea90195d8de1b254aedcac94e602e8
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/VPlan/tail-folding.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
Log Message:
-----------
[VPlan] Optimize resume values of IVs together with other exit values. (#174239)
Remove updateScalarResumePhis and create extracts for live-outs early in
addInitialSkeleton. Instead of extracting the from the header phi
recipes for the resume values (which is incorrect), extract the last
lane of the backedege value.
Then update optimizeInductionExitUsers to optimize both the scalar
resume values for IVs and IV exit values together.
This removes the need to pass state between transforms and addresses a
TODO.
PR: https://github.com/llvm/llvm-project/pull/174239
Commit: 214246ea7936d0d4df1e76f0cfc33a0d3a33224b
https://github.com/llvm/llvm-project/commit/214246ea7936d0d4df1e76f0cfc33a0d3a33224b
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Host/windows/PseudoConsole.cpp
Log Message:
-----------
[lldb][windows] fix VT sequences overriding (lldb) prompt (#183366)
This patch fixes the `(lldb)` prompt being overwriten by the cursor
position movements the ConPTY emits.
To be a complete solution we should also add a resize hook for the
console's window.
I also think that we should look into injecting conpty VT sequences
before printing the `(lldb)` prompt.
For instance, if we break on a breakpoint and the pty added a "hide
cursor" VT sequence, we should emit a `show cursor` sequence before
printing `(lldb)`. This should be done outside of this PR however.
Commit: 1fab5b65dc3f1616cbf58bb4696cf0dc5b8d522a
https://github.com/llvm/llvm-project/commit/1fab5b65dc3f1616cbf58bb4696cf0dc5b8d522a
Author: Justin Stitt <justinstitt at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/test/Sema/attr-overflow-behavior-constexpr.cpp
Log Message:
-----------
[Clang] Fix constexpr inc/dec operators for OverflowBehaviorTypes (#183826)
__ob_wrap types were not being handled properly by constexpr pre/post-inc/dec operations causing static_asserts() to fail unexpectedly. Fix those by checking if we're dealing with an OBT wrap type specifically.
Fixes: #183760
Commit: d442cc30a9f2bb83f75fead811050137905d9fc4
https://github.com/llvm/llvm-project/commit/d442cc30a9f2bb83f75fead811050137905d9fc4
Author: Lily Gorsheneva <bgorshenev at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix bazel build for 00e247ad76fdd0cd5841193950c8d4927e3015f8 (#185055)
Fix bazel build for 00e247ad76fdd0cd5841193950c8d4927e3015f8
Commit: 1bd075947af45a0875ffeff73a9c5dab8b80986e
https://github.com/llvm/llvm-project/commit/1bd075947af45a0875ffeff73a9c5dab8b80986e
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/SPV_ALTERA_arbitrary_precision_integers.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_integers.ll
Log Message:
-----------
[NFC][SPIRV] Rename files from `SPV_INTEL_arbitrary_precision_integers/floating` to `SPV_ALTERA_arbitrary_precision_integers/floating` (#184996)
* The `SPV_INTEL_arbitrary_precision_integers` was renamed to
`SPV_ALTERA_arbitrary_precision_integers` in
https://github.com/llvm/llvm-project/pull/136085.
* The `SPV_INTEL_arbitrary_precision_floating_point` was introduced
directly as `SPV_ALTERA_arbitrary_precision_floating_point` in
https://github.com/llvm/llvm-project/pull/160054.
Commit: ec9e16444efa391577a0440e848e9148d4efa3da
https://github.com/llvm/llvm-project/commit/ec9e16444efa391577a0440e848e9148d4efa3da
Author: Joeljm1 <143259392+Joeljm1 at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[DAG] isKnownNeverZero - add ISD::SHL DemandedElts handling and tests (#183772)
Added DemandedElts to ISD::SHL case in isKnowNeverZero and required tests
Fixes #183044
Commit: 832517f28d4b47bb03d7a310d99279552da2aa8d
https://github.com/llvm/llvm-project/commit/832517f28d4b47bb03d7a310d99279552da2aa8d
Author: William Fynn <fynnwilliam at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M libcxx/include/__functional/function.h
M libcxx/include/__type_traits/strip_signature.h
M libcxx/include/future
Log Message:
-----------
[libc++] Add alias template for __strip_signature::type (#181955)
Simplifying the internal implementation by providing a more concise
way to access the underlying type within the __strip_signature class.
Commit: cba914cecec3a8194c7eb5953e82028484d50289
https://github.com/llvm/llvm-project/commit/cba914cecec3a8194c7eb5953e82028484d50289
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64][llvm] Update Armv9.7-A dependencies (#185034)
Update Armv9.7-A dependenies:
* `FeatureF16MM` to depend on `FeatureNEON`
* `FeatureF16F32DOT` enabled by default for Armv9.7-A
Commit: 1a23e643be6b98fce376300e27383c2bf23061b9
https://github.com/llvm/llvm-project/commit/1a23e643be6b98fce376300e27383c2bf23061b9
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/test/IR/test-symbol-uses.mlir
M mlir/test/lib/IR/TestSymbolUses.cpp
Log Message:
-----------
[mlir] Fix assertion crash in test-symbol-uses with nested modules (#185069)
The `SymbolUsesPass` walked all nested `SymbolOpInterface` ops in a
module, including those belonging to nested symbol tables (e.g., nested
modules). When an external `func.func` inside a nested module had no
uses in the outer module's body region, it was incorrectly added to
`deadFunctions` for erasure. Since the outer module's `SymbolTable` does
not contain the inner module's symbols, the subsequent
`table.lookup(name)` assertion would fail with:
Assertion `table.lookup(name) && "expected no unknown operations"`
failed.
Fix by only tracking functions that are direct children of the enclosing
module, skipping functions owned by nested symbol tables.
Fixes #60583
Assisted-by: Claude Code
Commit: d4efbf10f183657c85bfed31b747f3d8f493ab31
https://github.com/llvm/llvm-project/commit/d4efbf10f183657c85bfed31b747f3d8f493ab31
Author: Tommy Chiang <ototot at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
A clang/test/CodeGen/bitcast-based-lvalue.c
Log Message:
-----------
[Clang][ExprConst] Handle APValue::LValue in BitCast (#184865)
Instead of marking the branch unreachable, emit an unsupported type
diagnostic and return false when encountering `APValue::LValue` in
`APValueToBufferConverter`.
A good example of this is:
```
long fn() {
return __builtin_bit_cast(long, (long)&fn);
}
```
Although `&fn` itself is a pointer type, the cast `(long)` converts it
to an integer type, which passes `checkBitCastConstexprEligibilityType`.
Thus, eventually, we see it in Converter, which does not expect an
LValue.
Fixes https://github.com/llvm/llvm-project/issues/44991
Commit: 7d48707a180cb972a11f61a2bca0a269f8681a3c
https://github.com/llvm/llvm-project/commit/7d48707a180cb972a11f61a2bca0a269f8681a3c
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Commands/CommandObjectType.cpp
Log Message:
-----------
[lldb] Declare types of Python synthetic signatures (NFC) (#184914)
Similar to the changes in #182892
---------
Co-authored-by: Ebuka Ezike <yerimyah1 at gmail.com>
Commit: 70509b5e19645bcfd81d382d2cdb560eeb187da1
https://github.com/llvm/llvm-project/commit/70509b5e19645bcfd81d382d2cdb560eeb187da1
Author: Adrian Prantl <aprantl at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/DataFormatters/FormatManager.cpp
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/Makefile
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/MyStringFormatter.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/TestSyntheticOneLineSummaries.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/main.c
Log Message:
-----------
[LLDB] Allow one-line summaries in the presence of synthetic child providers (#184926)
This is driven by the Swift language. In Swift many data types such as
Int, and String are structs, and LLDB provides summary formatters and
synthetic child providers for them. For String, for example, a summary
formatter pulls out the string data from the implementation, while a
synthetic child provider hides the implementation details from users, so
strings don't expand their children.
rdar://171646109
Commit: 3fc27dce3c99b3c49ef938871c1c019864274291
https://github.com/llvm/llvm-project/commit/3fc27dce3c99b3c49ef938871c1c019864274291
Author: Adrian Prantl <aprantl at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/DataFormatters/FormatManager.cpp
Log Message:
-----------
[LLDB] Reformat comments
Commit: f305da7240b607141af69644eabbef4794005a96
https://github.com/llvm/llvm-project/commit/f305da7240b607141af69644eabbef4794005a96
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/test/CIR/CodeGen/pack-indexing.cpp
Log Message:
-----------
[CIR] Implement PackIndexingExpr for ComplexType (#184878)
Implement the PackIndexingExpr for ComplexType
Commit: bc8da0fa5af7b1b75ae01bb8829fe471ea085894
https://github.com/llvm/llvm-project/commit/bc8da0fa5af7b1b75ae01bb8829fe471ea085894
Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
A llvm/test/MC/Hexagon/reloc-directive.s
Log Message:
-----------
[Hexagon] Support .reloc asm directive (#183849)
.reloc directive can be used in user assembly programs and created
internally by LLVM. In addition to Hexagon relocations, there are a few
generic names (BFD_RELOC_NONE, BFD_RELOC_8, BFD_RELOC_16,
and BFD_RELOC_32) that are mapped to Hexagon ones.
Commit: bb1d53bbd8726160ed2e45bb4170454b4d8d2d9b
https://github.com/llvm/llvm-project/commit/bb1d53bbd8726160ed2e45bb4170454b4d8d2d9b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
Log Message:
-----------
[RISCV][P-ext] Support vector ISD::ABS using PABD instructions. (#184822)
Commit: 5f70043ac22f4b1de86f1fa141859bcec3e16531
https://github.com/llvm/llvm-project/commit/5f70043ac22f4b1de86f1fa141859bcec3e16531
Author: Eli Friedman <efriedma at qti.qualcomm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Initialization.h
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/SemaCXX/new-delete.cpp
Log Message:
-----------
[clang] Fix filler handling for new expression with unspecified bound. (#182203)
Array new with a runtime bound requires an "array filler" to initialize
elements which aren't explicitly initialized. Array new with an
unspecified bound doesn't need this; the array length is a compile-time
constant. Make sure SemaInit doesn't confuse the two cases.
Fixes #81157.
Commit: 05fa39de0ef2e1574f3f4d32b1527cb3d9fdd0ca
https://github.com/llvm/llvm-project/commit/05fa39de0ef2e1574f3f4d32b1527cb3d9fdd0ca
Author: Rohan Jacob-Rao <rohanjr at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/Analysis/FixitUtil.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-parm-unsupported.cpp
Log Message:
-----------
[NFC][Clang][UnsafeBufferUsage] Check optional string before access. (#184867)
Without this fix, the new test case results in a crash due to the
unchecked optional access.
Commit: f5255b0d5ab853a56ad7bdce65c6f217d87d46b9
https://github.com/llvm/llvm-project/commit/f5255b0d5ab853a56ad7bdce65c6f217d87d46b9
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
Log Message:
-----------
[lldb][PlatformDarwin] Make LocateExecutableScriptingResourcesFromDSYM a public static (#185056)
This will allow us to unit-test it in a follow-up patch. We could test
`LocateExecutableScriptingResources` directly, but that requires a valid
`Module`/`ObjectFile`/`SymbolFile`. That's a lot of boilerplate/set to
ultimately just test the `dSYM` logic. The helper just takes
`FileSpec`s, which are much easier to construct in a test.
Commit: 42f3726080102a4e578734111cd9abf853c521fb
https://github.com/llvm/llvm-project/commit/42f3726080102a4e578734111cd9abf853c521fb
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BLAKE3/BUILD.gn
Log Message:
-----------
Revert "[gn build] Guard the BLAKE3 assembly sources with platform" (#185077)
Reverts llvm/llvm-project#70110
Breaks gn build
Commit: 0311bb623a1e1bd101e517cfde4538039f65aa24
https://github.com/llvm/llvm-project/commit/0311bb623a1e1bd101e517cfde4538039f65aa24
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/docs/CommandGuide/llubi.rst
A llvm/test/tools/llubi/loadstore_be.ll
A llvm/test/tools/llubi/loadstore_le.ll
A llvm/test/tools/llubi/loadstore_misaligned.ll
A llvm/test/tools/llubi/loadstore_null.ll
A llvm/test/tools/llubi/loadstore_oob1.ll
A llvm/test/tools/llubi/loadstore_overaligned.ll
A llvm/test/tools/llubi/loadstore_poison.ll
A llvm/test/tools/llubi/loadstore_uaf.ll
A llvm/test/tools/llubi/store_dead.ll
M llvm/tools/llubi/lib/Context.cpp
M llvm/tools/llubi/lib/Context.h
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llubi/lib/Value.h
M llvm/tools/llubi/llubi.cpp
Log Message:
-----------
[llubi] Add support for load/store/lifetime markers (#182532)
Bytes are adjusted to respect the incoming byte type proposed in
https://discourse.llvm.org/t/rfc-add-a-new-byte-type-to-llvm-ir/89522.
Note that the current implementation of constant folding doesn't handle
bitcasts with weird types like `<8 x i3> to <3 x i8>`:
https://github.com/llvm/llvm-project/blob/49de34459c99b33c27aae4596ed5e67ce3d89eae/llvm/lib/Analysis/ConstantFolding.cpp#L223-L232
So I take the result from Alive2 as reference:
https://alive2.llvm.org/ce/z/ZGA_xP
Commit: 3d108be3598e11e02d461448795c6ff424c627be
https://github.com/llvm/llvm-project/commit/3d108be3598e11e02d461448795c6ff424c627be
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[Bazel] Fix build for 00e247a
d442cc30a9f2bb83f75fead811050137905d9fc4 tried to fix this, but missed
some test dependencies.
Commit: afc4af56ac63df493ed86c437ba0f0b08d53f555
https://github.com/llvm/llvm-project/commit/afc4af56ac63df493ed86c437ba0f0b08d53f555
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/test/CIR/CodeGen/array.cpp
A clang/test/CIR/IR/invalid-const-array.cir
Log Message:
-----------
[CIR] Fix array constant initialization with trailing zeros (#184933)
If an array is explicitly initialized with more than eight non-zero
values followed by a number of explicit zero initializers, CIR generates
a constant record initializer with a constant array that is declared as
the size of the non-zero initializers but with the explicit zero
initializers included in the array initialization attribute. This
resulted in an error when we tried to lower that attribute to LLVM IR.
This patch fixes that problem and adds a verifier to ConstantArrayAttr
to check for that condition.
Commit: e2f7f8365866945b2eb6763566385be0da255068
https://github.com/llvm/llvm-project/commit/e2f7f8365866945b2eb6763566385be0da255068
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprAgg.cpp
A clang/test/CodeGenHIP/placement-new-addrspace.hip
M clang/test/OpenMP/amdgcn_sret_ctor.cpp
Log Message:
-----------
[Clang] Fix invalid sret addrspacecast for placement new on HIP (#183639)
When a HIP kernel uses placement new with a function returning an
aggregate via sret (e.g. `new (out) T(make_t())`), and the placement
destination is in global memory (addrspace 1), the sret pointer was
addrspacecast'd to addrspace 5 (private), producing an invalid pointer
that faults at runtime.
Instead of casting the caller's pointer directly, materialise a
temporary alloca in the callee's expected address space, pass that as
the sret argument, and copy the result back to the original destination
after the call.
Commit: c3f0a2c375c26d337a3c86306d6115f36fe685c3
https://github.com/llvm/llvm-project/commit/c3f0a2c375c26d337a3c86306d6115f36fe685c3
Author: Shivam Kunwar <75530356+phyBrackets at users.noreply.github.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/test/Transforms/Reassociate/reassociate-decrement-dbgvalue.ll
Log Message:
-----------
[DebugInfo][Reassociate] Use debug records instead of intrinsics in test (#185031)
As per
https://github.com/llvm/llvm-project/pull/182730#pullrequestreview-3904549897
Commit: 3da28bfbce4d7ac8eaea6b8489031d01748d4fc5
https://github.com/llvm/llvm-project/commit/3da28bfbce4d7ac8eaea6b8489031d01748d4fc5
Author: Dave Bartolomeo <dave_bartolomeo at apple.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/Diagnostics.cpp
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Sarif.h
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Sarif.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/test/Analysis/lit.local.cfg
A clang/test/Frontend/Inputs/expected-sarif/sarif-diagnostics.cpp.sarif
A clang/test/Frontend/Inputs/expected-sarif/sarif-legacy-stable-ids.c.sarif
M clang/test/Frontend/sarif-diagnostics.cpp
A clang/test/Frontend/sarif-legacy-stable-ids.c
M clang/test/TableGen/DiagnosticBase.inc
M clang/test/TableGen/deferred-diag.td
M clang/test/lit.cfg.py
M clang/tools/diagtool/DiagnosticNames.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
Log Message:
-----------
[clang][diagnostics] Stable IDs for Clang diagnostics (#168153)
Part of the implementation of [[RFC] Emitting Auditable SARIF Logs from
Clang](https://discourse.llvm.org/t/rfc-emitting-auditable-sarif-logs-from-clang/88624)
SARIF diagnostics require that each rule have a stable `id` property to
identify that rule across runs, even when the compiler or analysis tool
has changed. We were previously setting the `id` property to the numeric
value of the enum value for that diagnostic within the Clang
implementation; this value changes whenever an unrelated diagnostic is
inserted or removed earlier in the list.
This change sets the `id` property to the _text_ of that same enum
value. This value would only change if someone renames the enum value
for that diagnostic, which should happen much less frequently than
renumbering.
For now, we will just assume that renaming happens infrequently enough
that existing consumers of SARIF will not notice. In the future, we
could take advantage of SARIF's support for `deprecatedIds`, which let a
rule specify the IDs by which it was previously known. This would let us
rename, split, or combine diagnostics while still being able to
correlate the new diagnostic IDs with older SARIF logs and/or
suppressions.
Nothing in this change affects how warnings are configured on the
command line or in `#pragma clang diagnostic`. Those still use warning
groups, not the stable IDs.
### Potential discussion topics
>From @AaronBallman on the RFC:
>We believe some open questions remain (things like whether a unique ID
is on the per-diagnostic level or on the diagnostic group level, whether
the ID is explicitly spelled in the .td file or implicitly generated,
whether we document the IDs, etc), but we think those questions are best
decided in PR discussions with interested parties rather than an RFC.
As a starting point, this PR proposes the following answers to those
open questions:
- _whether a unique ID is on the per-diagnostic level or on the
diagnostic group level_ - per-diagnostic level. For my justification,
see [this portion of the RFC
discussion](https://discourse.llvm.org/t/rfc-emitting-auditable-sarif-logs-from-clang/88624/11?u=dbartol.).
- _whether the ID is explicitly spelled in the .td file or implicitly
generated_ - Implicitly generated, but I'd be happy to have a way to
explicitly specify it. I just think that the in-code identifier is a
reasonable default, and manually reviewing the IDs of thousands of
existing diagnostics would add little benefit.
- _whether we document the IDs_ - For now, the IDs are only exposed to
the user (and other tools) in the SARIF file, so I don't think we need
to document these. We could certainly add this information to the output
of `diagtool` in the future if users find it relevant.
Commit: 57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b
https://github.com/llvm/llvm-project/commit/57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b
Author: Saleem Abdulrasool <compnerd at compnerd.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
builtins: adjust FP80 source management (#183871)
We would previously include the FP80 sources into the Windows build if
we built with the GNU driver rather than the `cl` driver.
Commit: 9cc615a2f5cfbdd28dc835758c35c12cba65e61f
https://github.com/llvm/llvm-project/commit/9cc615a2f5cfbdd28dc835758c35c12cba65e61f
Author: Afonso Rafael (Gafanhoto) <afonsorafael at sapo.pt>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion] remove else after return (NFC) (#184993)
A bit of a small nitpick, close it if unnecessary. (clang-tidy warnings)
Commit: 216a3f1629622b6cd6c919c2625815970ae7ea30
https://github.com/llvm/llvm-project/commit/216a3f1629622b6cd6c919c2625815970ae7ea30
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 3da28bf (#185082)
This fixes 3da28bfbce4d7ac8eaea6b8489031d01748d4fc5.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 097122cb90e8997834a5a1bf3bd10bb66f5687d1
https://github.com/llvm/llvm-project/commit/097122cb90e8997834a5a1bf3bd10bb66f5687d1
Author: schittir <sindhu.chittireddy at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprCXX.cpp
A clang/test/CodeGenCXX/microsoft-abi-diamond-template-multiple-vbptrs.cpp
Log Message:
-----------
[clang][CodeGen] Fix size calculation in vbptr split memory region in EmitNullBaseClassInitialization (#184558)
When splitting memory stores around multiple virtual base pointers
(vbptrs)
in the Microsoft ABI, the calculation for the size of the memory region
after
each vbptr was incorrect.
The bug/old calculation: SplitAfterSize = LastStoreSize -
SplitAfterOffset
This subtracts an absolute offset from a relative size, causing
incorrect (too small) sizes after the second vbptr.
The correct size should be:
SplitAfterSize = (LastStoreOffset + LastStoreSize) - SplitAfterOffset
Since all store regions extend to the end of the non-virtual portion
(NVSize),
this patch uses the simplified form:
SplitAfterSize = NVSize - SplitAfterOffset
The bug causes the assertion failure: "negative store size!"
Fixes https://github.com/llvm/llvm-project/issues/42101
Commit: 918d0feb76a230ad58185cc25f192201ccf614d3
https://github.com/llvm/llvm-project/commit/918d0feb76a230ad58185cc25f192201ccf614d3
Author: Ryan Mitchell <Ryan.Mitchell at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
A llvm/test/CodeGen/AMDGPU/asyncmark-waitcnt.mir
Log Message:
-----------
[AMDGPU] fix asyncmark soft waitcnt bug (#184851)
Asyncmarks record the current wait state and so should not allow waitcnts that occur after them to be merged into waitcnts that occur before.
Commit: 2cb01dc5b6dcc8b935ae3316626d8a8b87192019
https://github.com/llvm/llvm-project/commit/2cb01dc5b6dcc8b935ae3316626d8a8b87192019
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/benchmarks/CMakeLists.txt
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
Log Message:
-----------
[clang-doc] Fix benchmark not compiling (#185065)
CI didn't flag that the benchmark was using the outdated Ctx call
when landing the Mustache MD patch since this benchmark isn't tested.
Also added missing libraries in CMake that prevented me from building
the benchmark locally.
Commit: d32ffdea7aa4be414f2efc4a77257bcf0709e8a0
https://github.com/llvm/llvm-project/commit/d32ffdea7aa4be414f2efc4a77257bcf0709e8a0
Author: adams381 <adams at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
A clang/docs/ClangIRABILowering.md
M clang/docs/index.rst
Log Message:
-----------
[CIR] Add MLIR ABI Lowering design document
Design document for MLIR dialect-agnostic calling convention
lowering that builds on the LLVM ABI Lowering Library
(llvm/lib/ABI/) as the single source of truth for ABI
classification. Dialects use the library via an adapter layer:
ABITypeMapper maps dialect types to abi::Type*, the library
classifies arguments and returns, and a dialect-specific
ABIRewriteContext applies the decisions back to IR operations.
Targets x86_64 and AArch64, with parity against Classic Clang
CodeGen validated through differential testing.
Commit: ab10f0848b22417afc6352051b6e26c7704084d2
https://github.com/llvm/llvm-project/commit/ab10f0848b22417afc6352051b6e26c7704084d2
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
M clang/test/CIR/CodeGen/thunks.cpp
Log Message:
-----------
[CIR] Fix a crash when source location is unknown (#185059)
When we call `getLoc()` with an invalid `SourceLocation` and
`currSrcLoc` is also invalid, we were crashing or asserting. I tracked
down one case where this was happening (generating an argument in a
vtable thunk) and fixed that to provide a location. I also am updating
the `getLoc()` implementation so that it will use an unknown location in
release builds rather than crashing because the location isn't critical
for correct compilation.
Commit: a8783dc6baef19f93205a03f3ee74f7f1d2f28b6
https://github.com/llvm/llvm-project/commit/a8783dc6baef19f93205a03f3ee74f7f1d2f28b6
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
Log Message:
-----------
[lldb][bytecode] Disable bytecode.test on windows (#185096)
The test is failing on the lldb-x86_64-win buildbot.
Commit: 5230955af7934437636c803a6eea328c289399d3
https://github.com/llvm/llvm-project/commit/5230955af7934437636c803a6eea328c289399d3
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Lower/LoweringOptions.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Semantics/semantics.h
A flang/include/flang/Support/FPMaxminBehavior.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/LoweringOptions.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Support/CMakeLists.txt
A flang/lib/Support/FPMaxminBehavior.cpp
A flang/test/Driver/ffp-maxmin-behavior.f90
A flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
A flang/test/Lower/fp-maxmin-behavior.f90
M flang/tools/bbc/bbc.cpp
M flang/tools/tco/tco.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[flang,acc] Support -ffp-maxmin-behavior option in lowering. (#184730)
This patch adds `flang -fc1` option `-ffp-maxmin-behavior` and
propagates it throughout Flang, so that semantics context,
lowering and the pass pipeline builder can use it.
MAX/MIN intrinsic and OpenACC max/min reduction lowering
are now controlled by the option.
I kept the `Legacy` mode, which is the default and matches the current
behavior. I am going to test and merge a follow-up patch that
replaces `Legacy` with `Portable`.
RFC:
https://discourse.llvm.org/t/flang-canonical-and-optimizable-representation-for-min-max/90037
Commit: bdec4da38d72caa3166261c28af283f3a36de734
https://github.com/llvm/llvm-project/commit/bdec4da38d72caa3166261c28af283f3a36de734
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
Log Message:
-----------
[RISCV][P-ext] Only support sshlsat for splat immediate shift amounts. (#184886)
Fixes cannot select errors for other types of shift amounts.
I've made a new RISCVISD node that only allows an immediate operand.
It's assumed that the lowering code will only allow valid immediates so
I'm not using a TImmLeaf in the match.
Commit: 337fed353d771d3425d06393637fdc956097b51e
https://github.com/llvm/llvm-project/commit/337fed353d771d3425d06393637fdc956097b51e
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprAgg.cpp
A clang/test/CodeGenHIP/sret-nontrivial-copyable.hip
M clang/test/OpenMP/amdgcn_sret_ctor.cpp
Log Message:
-----------
[Clang] Fix EmitAggregateCopy assertion for non-trivially-copyable sr… (#185091)
…et types
Fix for buildbot crash on #183639
The UseTemp path in AggExprEmitter::withReturnValueSlot copies back via
EmitAggregateCopy, which asserts that the type has a trivial copy/move
constructor or assignment operator. Gate the DestASMismatch condition on
isTriviallyCopyableType so that non-trivially-copyable types (e.g.
std::exception_ptr) fall through to the addrspacecast path instead.
Fix buildbot crash:
https://lab.llvm.org/buildbot/#/builders/73/builds/19803
Commit: 4d53c42f55c06e9dbae48723e366f391ccd9312f
https://github.com/llvm/llvm-project/commit/4d53c42f55c06e9dbae48723e366f391ccd9312f
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
builtins: Make cmake formatting self-consistent aftr #183871
No behavior change.
Commit: eada0f57b47309e6a74d83e3dbef5dca71d3b409
https://github.com/llvm/llvm-project/commit/eada0f57b47309e6a74d83e3dbef5dca71d3b409
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/head-template.mustache
M clang-tools-extra/clang-doc/assets/navbar-template.mustache
M clang-tools-extra/test/clang-doc/basic-project.mustache.test
Log Message:
-----------
[clang-doc] Add button toggle for light/dark theme (#181587)
The user can now manually toggle the light or dark theme instead of
waiting for the system theme to change.
Also fixes a typo that caused some overflow issues even when there was
no content to cause an overflow.
Commit: ae4e71241f0323ba3ceecc9922713628b2d9c967
https://github.com/llvm/llvm-project/commit/ae4e71241f0323ba3ceecc9922713628b2d9c967
Author: Sy Brand <sy.brand at fastly.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp
M llvm/test/CodeGen/WebAssembly/export-name.ll
M llvm/test/CodeGen/WebAssembly/import-module.ll
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
M llvm/test/MC/WebAssembly/export-name-invalid.s
M llvm/test/MC/WebAssembly/export-name.s
M llvm/test/MC/WebAssembly/import-module-invalid.s
M llvm/test/MC/WebAssembly/import-module.s
M llvm/test/MC/WebAssembly/import-name-invalid.s
Log Message:
-----------
[MC][WebAssembly] Allow strings for import modules and names in asm (#182896)
Current tooling for the WebAssembly component model uses import modules
and names such as `$root` and `[thread-index]`. Importing these from
assembly files requires support for non-valid identifiers in
`.import_name` and `.import_module` directives. This PR adds support for
specifying those as strings, e.g.:
```asm
.import_module __wasm_component_model_builtin_thread_index, "$root"
.import_name __wasm_component_model_builtin_thread_index, "[thread-index]"
```
Commit: a99d4a6311443bafd8b2de343a7f2213bd08011d
https://github.com/llvm/llvm-project/commit/a99d4a6311443bafd8b2de343a7f2213bd08011d
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M mlir/lib/Tools/mlir-reduce/MlirReduceMain.cpp
Log Message:
-----------
[mlir][reducer] Add split-input-file to mlir-reduce (#184970)
The tests for mlir-reduce are currently scattered. To centralize the
tests for mlir-reduce, I added the split-input-file feature to
mlir-reduce.It is part of
https://github.com/llvm/llvm-project/pull/184974.
Commit: b87cf50b6c5ab917a3443671ed6ae53ce08ed35b
https://github.com/llvm/llvm-project/commit/b87cf50b6c5ab917a3443671ed6ae53ce08ed35b
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
Log Message:
-----------
[WebAssembly] Remove the `wasm-disable-fix-irreducible-control-flow-pass` switch (#185072)
This removes the `wasm-disable-fix-irreducible-control-flow-pass`
switch.
It was originally added in #67715 as a way to avoid the potentially
absurd compile times the pass used to bring. However with the successful
merge of #184441, the pass itself has been fixed to avoid this issue.
Given that, it is no longer necessary nor desirable to keep this switch.
Commit: c17200033d057aa490fe5b68bb0c9d10cd9d67c9
https://github.com/llvm/llvm-project/commit/c17200033d057aa490fe5b68bb0c9d10cd9d67c9
Author: Zack Johnson <zacklj89 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/test/Instrumentation/AddressSanitizer/basic-msvc64.ll
Log Message:
-----------
[ASan][Windows] Fixing Windows shadow memory address for arm64 (#184902)
This is a prerequisite for full ARM64 Windows ASan support. The runtime
interception changes needed to make ASan functional end-to-end on ARM64
Windows will be opened separately.
Motivated by https://github.com/microsoft/STL/pull/6095 (more
specifically [this reference to
clang-cl](https://github.com/microsoft/STL/pull/6095#:~:text=Not%20enabling%20GH_002030_asan_annotate_string%20and%20GH_002030_asan_annotate_vector%20yet%20due%20to%20Clang%20issues.))
The latest MSVC toolset includes ARM64 AddressSanitizer support. This
change adds AArch64 to the Windows 64-bit shadow mapping condition when
compiling with `-fsanitize=address` with `clang-cl`. Without this,
consumers on Windows who target ARM64 with `clang-cl -fsanitize=address`
and then link with `link.exe` will see this at runtime:
```text
ERROR: AddressSanitizer: access-violation on unknown address
...
```
since the shadow memory offset is not properly assigned. Windows ARM64
uses the same dynamic shadow allocation strategy as x64 via
`__asan_shadow_memory_dynamic_address`.
Commit: 97cf8bf220763a6a963d6229ab36dae1ed695ae3
https://github.com/llvm/llvm-project/commit/97cf8bf220763a6a963d6229ab36dae1ed695ae3
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
Log Message:
-----------
[flang] materialize fir.box when it is from a block argument (#184898)
We have to materialize `fir.box` before adding a `fir.convert` to a
memref type. Otherwise we get:
`'fir.convert' op invalid type conversion'!fir.box<!fir.array<?xi32>>' /
'memref<?xi32, strided<[?], offset: ?>>'`
Commit: 2c8c39a70837c03f550d83272e01d019ba28965c
https://github.com/llvm/llvm-project/commit/2c8c39a70837c03f550d83272e01d019ba28965c
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/docs/CommandGuide/llubi.rst
R llvm/test/tools/llubi/loadstore_be.ll
R llvm/test/tools/llubi/loadstore_le.ll
R llvm/test/tools/llubi/loadstore_misaligned.ll
R llvm/test/tools/llubi/loadstore_null.ll
R llvm/test/tools/llubi/loadstore_oob1.ll
R llvm/test/tools/llubi/loadstore_overaligned.ll
R llvm/test/tools/llubi/loadstore_poison.ll
R llvm/test/tools/llubi/loadstore_uaf.ll
R llvm/test/tools/llubi/store_dead.ll
M llvm/tools/llubi/lib/Context.cpp
M llvm/tools/llubi/lib/Context.h
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llubi/lib/Value.h
M llvm/tools/llubi/llubi.cpp
Log Message:
-----------
Revert "[llubi] Add support for load/store/lifetime markers" (#185101)
Reverts llvm/llvm-project#182532 to unblock CI.
The original patch causes some test failures related to undef bits, as
it incorrectly assumes `std::uniform_int_distribution` returns the same
result with different C++ stdlib vendors.
Commit: bc55e5e4b0e0e14839a6b49abfd1be7094925269
https://github.com/llvm/llvm-project/commit/bc55e5e4b0e0e14839a6b49abfd1be7094925269
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
Log Message:
-----------
[gn] port 3da28bfbce4d7a (DiagnosticStableIDs)
Commit: fef16a71d3fa9c2ec63233a63d124f10e2c8ba91
https://github.com/llvm/llvm-project/commit/fef16a71d3fa9c2ec63233a63d124f10e2c8ba91
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang/test/Lower/location.f90
M mlir/include/mlir/Dialect/Index/IR/IndexOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/test/CAPI/irdl.c
M mlir/test/Dialect/GPU/shuffle-rewrite.mlir
M mlir/test/Dialect/GPU/sparse-roundtrip.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_spgemm_lib.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
M mlir/test/IR/array-of-attr.mlir
M mlir/test/mlir-tblgen/attr-or-type-format-roundtrip.mlir
M mlir/test/mlir-tblgen/attr-or-type-format.td
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
Log Message:
-----------
[mlir][ODS] Fix notorious double-space bug in op printers (#184253)
When an op's assembly format prints an attribute via
`printStrippedAttrOrType`, two independent space-emission mechanisms
would fire: the op format generator emits a space before each argument,
and the attribute's generated `print` method also emits a leading space
(`shouldEmitSpace` initialized to true). This caused double spaces like
`gpu.shuffle xor`.
The usual workaround for this was to add double backticks to consume the
leading space.
Fixed by removing the leading space from generated attr/type `print()`
methods and compensating in the print dispatcher by conditionally adding
a space between the mnemonic and `print` call when the format starts
with a name or keyword rather than punctuation.
Also remove some workarounds for the double-spacing in op formats and
fix tests that now don't have leading spaces.
Assisted-by: claude
Commit: 06f7cd439c9114b64cd134f3c42639dfb94ae4df
https://github.com/llvm/llvm-project/commit/06f7cd439c9114b64cd134f3c42639dfb94ae4df
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/mul.hlsl
A clang/test/SemaHLSL/BuiltIns/mul-errors.hlsl
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
A llvm/test/CodeGen/DirectX/matrix-multiply.ll
Log Message:
-----------
[HLSL][DirectX] Implement HLSL `mul` function and DXIL lowering of `llvm.matrix.multiply` (#184882)
Fixes #99138
- Defines a `__builtin_hlsl_mul` clang builtin in `Builtins.td`.
- Links the `__builtin_hlsl_mul` clang builtin with
`hlsl_alias_intrinsics.h` under the name `mul` for matrix cases
- Implement scalar and vector elementwise multiplication cases of the
`mul` function in `hlsl_intrinsics.h` and `hlsl_intrinsic_helpers.h`
- Adds sema for `__builtin_hlsl_mul` to `CheckBuiltinFunctionCall` in
`SemaHLSL.cpp`
- Adds codegen for `__builtin_hlsl_mul` to `EmitHLSLBuiltinExpr` in
`CGHLSLBuiltins.cpp`
- Vector-vector cases lower to `dot` (except double vectors, which
expands to scalar multiply-adds).
- Matrix-matrix, matrix-vector, and vector-matrix multiplication lower
to the `llvm.matrix.multiply` intrinsic
- Adds codegen tests to `clang/test/CodeGenHLSL/builtins/mul.hlsl`
- Adds sema tests to `clang/test/SemaHLSL/BuiltIns/mul-errors.hlsl`
- Implements lowering of the `llvm.matrix.multiply` intrinsic to DXIL in
`DXILIntrinsicExpansion.cpp`
Note: Currently the SPIRV backend does not support row-major matrix
memory layouts when lowering matrix multiply, and just assumes
column-major layout. Therefore this PR also makes the DirectX backend
only assume column-major layout. Implementing support for row-major
order shall be done in a separate PR. (Tracked by
https://github.com/llvm/llvm-project/issues/184906)
This PR locally passes the `mul` offload tests in both DirectX 12 and
Vulkan: https://github.com/llvm/offload-test-suite/pull/941
Assisted-by: claude-opus-4.6
Commit: 6bd99efec167a6f3319a2405ebca607619e07411
https://github.com/llvm/llvm-project/commit/6bd99efec167a6f3319a2405ebca607619e07411
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Add hasManagedOrUnifedSymbols attribute to cuf.data_transfer op (#185106)
Add an attribute to signal the presence of managed or unified symbols in
the data transfer. In some case, the presence of such symbols require to
insert synchronization. Adding the attribute in the op during lowering
facilitate the recognition of such data transfer.
Commit: ab5844d2e7c57234257138f867ecd7d066014374
https://github.com/llvm/llvm-project/commit/ab5844d2e7c57234257138f867ecd7d066014374
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
Log Message:
-----------
[AMDGPU] Disable negative imm offset for async load/store instructions (#185078)
They are not allowed by the HW.
Commit: 65f39a16abf651008185839459fb330258800a62
https://github.com/llvm/llvm-project/commit/65f39a16abf651008185839459fb330258800a62
Author: Christopher Di Bella <cjdb at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M libcxx/include/__split_buffer
M libcxx/include/__vector/vector.h
Log Message:
-----------
[libcxx] Add `__split_buffer::__swap_layouts` (#180102)
This commit simplifies the cumbersome process of swapping the respective
layout members for `__split_buffer` and `vector`.
Commit: 89d69363a5f6819078e181265d56781c3cf80cad
https://github.com/llvm/llvm-project/commit/89d69363a5f6819078e181265d56781c3cf80cad
Author: David Green <david.green at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/bf16-imm.ll
M llvm/test/CodeGen/AArch64/f16-imm.ll
M llvm/test/CodeGen/AArch64/fabs-combine.ll
M llvm/test/CodeGen/AArch64/fdiv-const.ll
M llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
M llvm/test/CodeGen/AArch64/half-precision-signof-no-assert.ll
M llvm/test/CodeGen/AArch64/isinf.ll
M llvm/test/CodeGen/AArch64/known-never-nan.ll
Log Message:
-----------
[AArch64][GlobalISel] Add more gisel test coverage. NFC
Commit: dc8de1083e1f1392c220cf64fe429c027867e0ba
https://github.com/llvm/llvm-project/commit/dc8de1083e1f1392c220cf64fe429c027867e0ba
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitcnts][NFC] Simplify logic in GFX12Plus::applyPreexistingWaitcnts (#184925)
The loop is collecting the first instruction of each waitcnt kind and is
erasing the rest, with the exception of DEPCTR which needs more checks.
The existing code was factoring out the instruction deletion and the
setting of the collected instruction variables. But the special handling
for DEPCTR and the in-loop deletion of `S_WAITCNT_lds_direct` was just
complicating the logic.
Commit: d34f17904bd4fa51c1ec778ce8152e420f766304
https://github.com/llvm/llvm-project/commit/d34f17904bd4fa51c1ec778ce8152e420f766304
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn-exp.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for amdgcn_exp/exp_row (#181956)
Commit: 6dea289815b433ab88bcbb530f7edaa9c7784cbe
https://github.com/llvm/llvm-project/commit/6dea289815b433ab88bcbb530f7edaa9c7784cbe
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/test/CIR/CodeGen/try-catch-tmp.cpp
Log Message:
-----------
[CIR] Implement reference type in init catch param (#184442)
Implement init support for reference type in the init catch param
Commit: 1cdcee267c8d03064b887488ed00d78c4775b365
https://github.com/llvm/llvm-project/commit/1cdcee267c8d03064b887488ed00d78c4775b365
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
Log Message:
-----------
[HLSL][Matrix] Make matrix truncation respect default matrix memory layout (#184280)
Fixes #183127 and #184371
This PR makes the matrix truncation cast implementation use the new
matrix flattened index helper functions introduced by #182904 so that it
reads elements from the source matrix using the default matrix memory
layout instead of always assuming column-major order.
This PR also fixes a bug where matrix truncation truncated the wrong
elements.
Assisted-by: claude-opus-4.6
Commit: 43f78384e927538b2c4c6e83d5f0feb0f17e1427
https://github.com/llvm/llvm-project/commit/43f78384e927538b2c4c6e83d5f0feb0f17e1427
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
Log Message:
-----------
[AArch64] Fix more typos (NFC)
Fix more typos in the AArch64 codebase using the
https://github.com/crate-ci/typos Rust package.
commit-id:9f4d826d
Reviewers: davemgreen
Pull Request: https://github.com/llvm/llvm-project/pull/183086
Commit: cf21ea9c99c120977c3817efdd5b0e507f68333d
https://github.com/llvm/llvm-project/commit/cf21ea9c99c120977c3817efdd5b0e507f68333d
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/A15SDOptimizer.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMCallLowering.cpp
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/ARMParallelDSP.cpp
M llvm/lib/Target/ARM/ARMSLSHardening.cpp
M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp
M llvm/lib/Target/ARM/MLxExpansionPass.cpp
M llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/lib/Target/ARM/MVETailPredication.cpp
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
Log Message:
-----------
[ARM] Fix more typos (NFC)
Fix more typos in the AArch64 codebase using the
https://github.com/crate-ci/typos Rust package.
commit-id:33a1bb8d
Reviewers: davemgreen
Reviewed By: davemgreen
Pull Request: https://github.com/llvm/llvm-project/pull/183087
Commit: 01a97050f01b6b833d3d1f22997b5009293b43a3
https://github.com/llvm/llvm-project/commit/01a97050f01b6b833d3d1f22997b5009293b43a3
Author: Christopher Di Bella <cjdb at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M libcxx/include/__split_buffer
M libcxx/include/__vector/vector.h
Log Message:
-----------
Revert "[libcxx] adds `__split_buffer::__swap_layouts`" (#185120)
Reverts llvm/llvm-project#180102
Commit: 610ed83145c66473137298918fb32dd07985044a
https://github.com/llvm/llvm-project/commit/610ed83145c66473137298918fb32dd07985044a
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
Log Message:
-----------
[HWASan] add optimization remark for supported lifetimes
This lets us find functions where we pessimize codegen by removing
lifetimes.
Reviewers: vitalybuka
Reviewed By: vitalybuka
Pull Request: https://github.com/llvm/llvm-project/pull/183858
Commit: 81a537e7081b76d41aa0422924d334a713fdd779
https://github.com/llvm/llvm-project/commit/81a537e7081b76d41aa0422924d334a713fdd779
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/EmulateInstruction.cpp
M lldb/source/Core/Highlighter.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Expression/REPL.cpp
M lldb/source/Symbol/ObjectContainer.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolVendor.cpp
M lldb/source/Symbol/TypeSystem.cpp
M lldb/source/Target/ABI.cpp
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/JITLoader.cpp
M lldb/source/Target/Language.cpp
M lldb/source/Target/LanguageRuntime.cpp
M lldb/source/Target/MemoryHistory.cpp
M lldb/source/Target/OperatingSystem.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SyntheticFrameProvider.cpp
M lldb/source/Target/SystemRuntime.cpp
M lldb/source/Target/UnwindAssembly.cpp
M lldb/unittests/Core/PluginManagerTest.cpp
Log Message:
-----------
[lldb] Use range-based for loops over plugins (#184837)
This PR replaces the Get*CallbackAtIndex pattern in the PluginManager
with returning a snapshot of callbacks that the caller can iterate over
using a range-based for loop. This is a continuation of #184452 which
added thread safety by using snapshots. However, that introduced a bunch
of unnecessary copies which are largely eliminated again by getting the
snapshot once when gather all the callbacks, rather than doing that on
each iteration when querying a plugin for a given index. It also
eliminates the possibility of the snapshot changing underneath you when
iterating over the plugins.
This change was largely mechanical and I used Claude to do the menial
work of updating the signatures and call sites.
Commit: 868147026258b982a8089701dfae531f9ebbd464
https://github.com/llvm/llvm-project/commit/868147026258b982a8089701dfae531f9ebbd464
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanningTool.h
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
Log Message:
-----------
[clang][Dependency Scanning] Fix the In-Memory Buffer Used for By-Name Scanning (#183396)
This PR fixes two issues of the in-memory buffer we use for the input
file when a dependency scanner performs by-name queries.
First, it renames the buffer. The temporary file was named
`ScanningByName-%%%%%%%%.input`, which leads to weird diagnostics such
as
```
ScanningByName-2d42a1e9.input:1:1: fatal error: could not build module 'X'
```
This PR changes the name of the file buffer, so we get diagnostics such
as
```
module-include.input:1:1: fatal error: could not build module 'X'
```
which is more indicative.
Additionally, this PR fixes a bug where the source location may overflow
the temporary buffer by creating a 64k empty string which the temporary
buffer occupies. When the source location overflows, the diagnostics
could point to some random file that comes after the fake file and is
incorrect.
Currently, the maximum number of unique names from Apple's SDKs is
around 3000. A 64k buffer per dependency scanning worker gives us around
20x capacity per worker (which scans fewer names than 3000 when the
scanning is done in parallel). A fatal error is added to catch
overflows.
Commit: 3e24a393571e83e8564562b2ec84fe701648da2f
https://github.com/llvm/llvm-project/commit/3e24a393571e83e8564562b2ec84fe701648da2f
Author: MITSUNARI Shigeo <herumi at nifty.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/DivisionByConstantInfo.h
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Support/DivisionByConstantInfo.cpp
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
A llvm/test/CodeGen/AArch64/udiv-const-optimization.ll
M llvm/test/CodeGen/AArch64/urem-lkk.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
A llvm/test/CodeGen/RISCV/udiv-const-optimization.ll
M llvm/test/CodeGen/RISCV/urem-lkk.ll
M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
A llvm/test/CodeGen/X86/udiv-const-optimization.ll
M llvm/test/CodeGen/X86/urem-lkk.ll
Log Message:
-----------
[SelectionDAG] Optimize 32-bit udiv with 33-bit magic constants on 64-bit targets (#181288)
This PR optimizes 32-bit unsigned division by constants when the magic
constant is 33 bits (IsAdd=true case in UnsignedDivisionByConstantInfo)
on 64-bit targets.
## Overview
Compiler optimization for constant division of `uint32_t` variables
(such as `x / 7`) is based on the method
proposed by Granlund and Montgomery in 1994 (hereafter referred to as
the GM method).
However, the GM method for the IsAdd=true case was optimized for 32-bit
CPUs, not 64-bit CPUs.
This patch provides optimizations specifically for 64-bit CPUs (such as
x86_64 and Apple M-series).
A simple benchmark demonstrates over 60% speedup on both Intel Xeon and
Apple M4 processors.
## The GM Method
The GM method for `x / 7` can be expressed in C code as follows,
where the constants `c` and `a` are magic numbers determined by the
divisor:
```cpp
uint32_t udiv_original(uint32_t x) {
uint64_t v = x * c;
v >>= 32;
uint32_t t = uint32_t(x) - uint32_t(v);
t >>= 1;
t += uint32_t(v);
t >>= a - 33;
return t;
}
```
For example, division by 7 on x86_64 generates 7 instructions:
```asm
movl %edi, %eax
imulq $613566757, %rax, %rax
shrq $32, %rax
subl %eax, %edi
shrl %edi
addl %edi, %eax
shrl $2, %eax
```
## Proposed Solution
This patch generates the following optimized code:
```cpp
uint32_t udiv_optimized(uint32_t x) {
uint128_t v = uint128_t(x) * ((c + 0x100000000) << (64 - a));
return uint32_t(v >> 64);
}
```
Since a 64-bit right shift of a 128-bit variable extracts the upper 64
bits,
this code eliminates the need for shifts after multiplication.
The implementation pre-shifts the 33-bit magic constant `c = 2^32 +
Magic` left by `(64-a)` bits
and uses the high 64 bits of a 64 x 64 -> 128 bit multiplication
directly.
This eliminates the add/sub/shift sequence.
After optimization, division by 7 becomes 4 instructions (or 3 with
BMI2):
```asm
# Standard (4 instructions)
movl %edi, %eax
movabsq $2635249153617166336, %rcx
mulq %rcx
movq %rdx, %rax
# With BMI2 (3 instructions)
movl %edi, %edx
movabsq $2635249153617166336, %rax
mulxq %rax, %rax, %rax
```
Commit: 3164d54877f4f796a8b4270c14be354889e0501f
https://github.com/llvm/llvm-project/commit/3164d54877f4f796a8b4270c14be354889e0501f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rv32p.ll
Log Message:
-----------
[RISCV][P-ext] Custom legalize i64 SHL to WSLL(I)/WSLA(I) (#185079)
When input is zero or sign extended.
Commit: 541d546c2efba8466f3ef77707d23846ac22f485
https://github.com/llvm/llvm-project/commit/541d546c2efba8466f3ef77707d23846ac22f485
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Symbol/SaveCoreOptions.cpp
M lldb/unittests/Core/PluginManagerTest.cpp
Log Message:
-----------
[lldb] Use llvm::SmallVector in the PluginManager (NFC) (#184912)
Most of the plugins have only a small number of instances. Use
`llvm::SmallVector` instead of `std::vector`.
Depends on https://github.com/llvm/llvm-project/pull/184837
Commit: 32c51ee254146b8ec77d6d434c94f0d96acfd8bd
https://github.com/llvm/llvm-project/commit/32c51ee254146b8ec77d6d434c94f0d96acfd8bd
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M lldb/source/Core/PluginManager.cpp
Log Message:
-----------
[lldb] Implement PluginInfo move constructor (#185137)
The default move constructor wasn't nulling out the callbacks. Combined
with the fact that llvm::sys::DynamicLibrary has no explicit move
constructor and hence library.isValid() still returned true after having
moved-from, we would end up calling plugin_term_callback() when
destroying the moved-from PluginInfo, calling it prematurely.
Commit: f540ad69a801263b3446dfb86d30d650cfa96a5f
https://github.com/llvm/llvm-project/commit/f540ad69a801263b3446dfb86d30d650cfa96a5f
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
R bolt/include/bolt/Passes/ReorderUtils.h
Log Message:
-----------
[bolt][NFC] Remove unused ReorderUtils.h (#184642)
This header has a case sensitivity syntax error, delete it since it's
unused
Commit: 88034017115761cac37efc99524c577dff62694e
https://github.com/llvm/llvm-project/commit/88034017115761cac37efc99524c577dff62694e
Author: Roy Shi <royitaqi at users.noreply.github.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/tools/dsymutil/DebugMap.cpp
M llvm/tools/dsymutil/DebugMap.h
M llvm/tools/dsymutil/dsymutil.cpp
Log Message:
-----------
[dsymutil] Use DebugMapFilter when parsing --allow/--disallow YAML input (#185061)
PR https://github.com/llvm/llvm-project/pull/182083 forgot to switch
over to use the newly added `DebugMapFilter` when parsing
`--allow/--disallow` YAML input. It was still using
`ObjectFileList`/`ObjectFileEntry`, which was added initially in the
same PR and was later intended to be replaced by `DebugMapFilter`.
This patch switches over to use `DebugMapFilter`, adds necessary YAML
traits, and removes `ObjectFileList`/`ObjectFileEntry`.
Commit: 11888cb88925364d689ff229635947f894cc676b
https://github.com/llvm/llvm-project/commit/11888cb88925364d689ff229635947f894cc676b
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/lib/Support/JSON.cpp
M llvm/unittests/Support/JSONTest.cpp
Log Message:
-----------
[JSON] Consistently reset moved-from object (#185125)
Before the patch moved from object was in consistent state.
For some types it resets contents and switch to T_Null, for others
it preserves type and value.
So make sure to set T_Null for all.
When we set T_Null we need to destroy the value.
It's important for particular types, like std::string. With
Asan it must unpoison SSO buffer.
Fixes false container overflows after #184693:
https://lab.llvm.org/buildbot/#/builders/169/builds/20655/steps/11/logs/stdio
Commit: e435e07496c64fe7b4ab021972460698749bebcf
https://github.com/llvm/llvm-project/commit/e435e07496c64fe7b4ab021972460698749bebcf
Author: Anshul Nigham <nigham at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[NewPM] Port for AArch64A53Fix835769 (#184965)
Commit: 16cf423ad854ed40f03311a807bbb844b47c5805
https://github.com/llvm/llvm-project/commit/16cf423ad854ed40f03311a807bbb844b47c5805
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/test/Preprocessor/wasm-target-features.c
Log Message:
-----------
[WebAssembly] Move a wide-arithmetic test (NFC) (#184950)
Other individual feature tests appear before CPU tests, so this moves
this test there to make it consistent.
Commit: 38b47c0c45821c5b0b40983d6514d35e52deb34e
https://github.com/llvm/llvm-project/commit/38b47c0c45821c5b0b40983d6514d35e52deb34e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[X86] known-never-zero.ll - add ROTL/ROTR/BITREVERSE/BSWAP/CTPOP/ABS test coverage for #184033 (#185128)
Some were just missing vector / demandedelts handling - other were missing entirely
Commit: fe11a43c60b9d6771c32a7e5689a0381db6c3ddd
https://github.com/llvm/llvm-project/commit/fe11a43c60b9d6771c32a7e5689a0381db6c3ddd
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
Log Message:
-----------
[MLIR][XeGPU] Enhancing insert_strided_slice layout setup and infer rules (#184742)
This PR enhances insert_strided_slice layout rules to handle slice
layout and adjust the layout to fit the src shape. It adds dropDims as
layout utility function.
Commit: 5bc050147fa629134b6ed75642c82102b97419fe
https://github.com/llvm/llvm-project/commit/5bc050147fa629134b6ed75642c82102b97419fe
Author: Thurston Dang <thurston at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M mlir/unittests/IR/OperationSupportTest.cpp
Log Message:
-----------
[mlir][test] Fix memory leak after #184202 (#185142)
Reported by buildbot:
https://lab.llvm.org/buildbot/#/builders/55/builds/25078
Commit: 110d3baa825ad9d78c25ffc777509069fabeec0b
https://github.com/llvm/llvm-project/commit/110d3baa825ad9d78c25ffc777509069fabeec0b
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/ClangDoc.cpp
M clang-tools-extra/clang-doc/ClangDoc.h
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/MDMustacheGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
Log Message:
-----------
[clang-doc][NFC] Introduce OwnedPtr abstraction (#184869)
Eventually, we want clang-doc to support arena allocation, but the
widespread use of owning pointers in the data types prevents this.
Rather than have wide scale refactoring, we can introduce a type alias
that can be swapped out atomically to switch from smart pointers to raw
pointers. This is the first of several refactorings that are intended to
make the transition simpler.
Commit: ca2b4db828bb48aefd756c774ee3f071d821c8ff
https://github.com/llvm/llvm-project/commit/ca2b4db828bb48aefd756c774ee3f071d821c8ff
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/docs/clang-tidy/Contributing.rst
Log Message:
-----------
[clang-tidy][NFC] Update contribution guide for test language standards (#184769)
Explain how to use the `-std` flag in clang-tidy tests and reorganize
the content on C++ pitfalls into a new subsection for better
readability.
Related discussion: https://github.com/llvm/llvm-project/pull/184741
As of AI Usage: the documentation is partially rephrased by Gemini 3.
Commit: 13d391042e49e547a8543fca93b50d87872fec34
https://github.com/llvm/llvm-project/commit/13d391042e49e547a8543fca93b50d87872fec34
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
Log Message:
-----------
[clang-doc][NFC] Introduce Vector and Array abstractions (#184870)
Introduce OwningVec and OwningArray aliases for vector types we want to
eventually update for arena allocations.
Commit: a14a104f889feb94f7da1cd06d817f950573c7d7
https://github.com/llvm/llvm-project/commit/a14a104f889feb94f7da1cd06d817f950573c7d7
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
[ORC] Add WaitingOnGraph::visitWithRemoval, refactor some loops. (#185001)
visitWithRemoval visits the elements of a vector performing a
swap-and-pop to remove any for which the visitor returns true.
Use this to refactor some loops in WaitingOnGraph that used this idiom.
Commit: 263e3a383799fc9eba83bbc7e7f8cb6268a80431
https://github.com/llvm/llvm-project/commit/263e3a383799fc9eba83bbc7e7f8cb6268a80431
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
Log Message:
-----------
[clang-doc] Introduce type alias for OwningPtrVec/Array (#184871)
We commonly have vectors/arrays of owned pointers. This should simplify
future refactoring when switching to arena allocation.
Commit: 69902769c74718295dd553a1cd0bb6c56ff2645a
https://github.com/llvm/llvm-project/commit/69902769c74718295dd553a1cd0bb6c56ff2645a
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
Log Message:
-----------
[clang-doc] Introduce abstractions for pointer operations (#184872)
Since we're migrating from std::unique_ptr to raw pointers via
arena allocation, we want to have some interfaces that abstract
these operations away, and can be changed to keep the system
working without introducing a lot of unnecessary churn in the code.
Commit: ca1eefdfc061fc062b6b9dc4149ca4a0e51bde08
https://github.com/llvm/llvm-project/commit/ca1eefdfc061fc062b6b9dc4149ca4a0e51bde08
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.cpp
Log Message:
-----------
[clang-tidy] Correctly handle attributes in readability-inconsistent-ifelse-braces (#184095)
Improved the check to correctly handle `[[likely]]` and `[[unlikely]]`
attributes placed between the if/else keyword and the opening brace.
As of AI Usage: Gemini 3 is used for pre-commit reviewing.
Closes https://github.com/llvm/llvm-project/issues/184081
Commit: 80c7133915c2886e7aa093b4842e2910bc96c82e
https://github.com/llvm/llvm-project/commit/80c7133915c2886e7aa093b4842e2910bc96c82e
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
Log Message:
-----------
[clang-doc] Introduce Serializer class (#184873)
Serialization has mostly been done with static functions, but soon we
will need to share state, like alocator references. To avoid blowing up
our parameter lists, we can just wrap the local functions within a
class.
Commit: 3d7b22e00d95ea66e61b5acbe9be6b1e1e57d6b7
https://github.com/llvm/llvm-project/commit/3d7b22e00d95ea66e61b5acbe9be6b1e1e57d6b7
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
R mlir/test/mlir-reduce/crashop-reduction.mlir
R mlir/test/mlir-reduce/multiple-function.mlir
A mlir/test/mlir-reduce/reduction-tree.mlir
Log Message:
-----------
[mlir][reducer] Refactor reduction-tree test (#184974)
Consolidate reduction-tree pass tests into a single file using
mlir-reduce's -split-input-file feature. See
https://github.com/llvm/llvm-project/pull/184970.
Commit: 9d3f25cb480889e2aa71ad298c34dc66e48f5d53
https://github.com/llvm/llvm-project/commit/9d3f25cb480889e2aa71ad298c34dc66e48f5d53
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
Log Message:
-----------
[CIR] Fix GlobalOp::getSuccessorRegions using wrong region for dtor (#185115)
Commit: 71ea3d9cabef354afc7028ac7bf290430105f6f6
https://github.com/llvm/llvm-project/commit/71ea3d9cabef354afc7028ac7bf290430105f6f6
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
Log Message:
-----------
[CIR] Fix convertSideEffectForCall header/definition signature mismatch (#185118)
Add missing bool &noReturn parameter to the declaration in
LowerToLLVM.h to match the definition in LowerToLLVM.cpp.
Commit: babead29c3fb2c44b85e8fd2f269ee56b69cafb2
https://github.com/llvm/llvm-project/commit/babead29c3fb2c44b85e8fd2f269ee56b69cafb2
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/lib/Target/RISCV/RISCVMacroFusion.td
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/CodeGen/RISCV/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
M llvm/test/CodeGen/RISCV/macro-fusions.mir
M llvm/test/TableGen/MacroFusion.td
Log Message:
-----------
[NFC] Move fusion- to start of Fusion Feature Name (#185146)
This makes it a lot easier to see all the available fusions, because
they appear together in the list.
Commit: 40713f2a87c808213e91d7e5eba7276176ed5e91
https://github.com/llvm/llvm-project/commit/40713f2a87c808213e91d7e5eba7276176ed5e91
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
[ORC] Refactor WaitingOnGraph::processExternalDeps. NFCI. (#185152)
Refactor WaitingOnGraph::processExternalDeps to use the recently
introduced ContainerElementsMap::visit and ElementSet::remove_if
methods.
Commit: 5948beeb527c005f2b97e2c8b79e547d93e163bc
https://github.com/llvm/llvm-project/commit/5948beeb527c005f2b97e2c8b79e547d93e163bc
Author: Thurston Dang <thurston at google.com>
Date: 2026-03-06 (Fri, 06 Mar 2026)
Changed paths:
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanningTool.h
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
Log Message:
-----------
Revert "[clang][Dependency Scanning] Fix the In-Memory Buffer Used for By-Name Scanning" (#185150)
Reverts llvm/llvm-project#183396 due to buildbot breakage (e.g.,
https://lab.llvm.org/buildbot/#/builders/55/builds/25102; reported
earlier in
https://github.com/llvm/llvm-project/pull/183396#issuecomment-4015167408)
(Specifically, ASan is allergic to:
```
static const std::string
FakeInput(" ",
clang::tooling::CompilerInstanceWithContext::MaxNumOfQueries);
```)
Commit: 13cb586a41c0417cea87080baf1b00eeb19fca87
https://github.com/llvm/llvm-project/commit/13cb586a41c0417cea87080baf1b00eeb19fca87
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/workitem/clc_get_num_groups.cl
M libclc/opencl/lib/amdgcn-amdhsa/SOURCES
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
Log Message:
-----------
libclc: Reimplement amdhsa get_num_groups (#185006)
Assume v5 ABI, and move handling into clc.
Commit: 71f5e43bc658d89c507867218052917e816c5180
https://github.com/llvm/llvm-project/commit/71f5e43bc658d89c507867218052917e816c5180
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
Log Message:
-----------
[CIR] Fix operator-precedence bugs in assert conditions (#185119)
Due to && binding tighter than ||, asserts of the form
assert(A || B && "msg") always pass when A is true. Add
parentheses so the string message is properly attached:
assert((A || B) && "msg").
Commit: d6b33bda134f933f5ec1b7a948441ab4e98bbb8d
https://github.com/llvm/llvm-project/commit/d6b33bda134f933f5ec1b7a948441ab4e98bbb8d
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
[ubsan_minimal] Build on Solaris (#184976)
Two tests currently `FAIL` on Solaris/amd64 and Solaris/sparcv9:
```
SafeStack-Standalone-i386 :: overflow.c
SafeStack-Standalone-x86_64 :: overflow.c
```
This happens because `libclang_rt.ubsan_minimal.a` isn't built on
Solaris although it's required with `-fsanitize-minimal-runtime`.
This patch fixes this.
Tested on `amd64-pc-solaris2.11` and `sparcv9-sun-solaris2.11`.
Commit: e830ee80063531fdfb1273cc112634b62926c66f
https://github.com/llvm/llvm-project/commit/e830ee80063531fdfb1273cc112634b62926c66f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__vector/vector.h
M libcxx/include/optional
M libcxx/include/string
M libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
Log Message:
-----------
[libc++] Don't double-wrap iterators when bounded iterators are used (#182264)
There is no reason to double-wrap iterators, since we can already
achieve anything we want within `__bounded_iter`itself.
This is technically ABI breaking, but people using bounded iterators
shouldn't require ABI stability currently.
Fixes #178521
Commit: 4d08284157d09ce6104f0753f1dbf5adc43c113d
https://github.com/llvm/llvm-project/commit/4d08284157d09ce6104f0753f1dbf5adc43c113d
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[CMake][LLVM] Align CMAKE_EXPORT_COMPILE_COMMANDS from 1 to ON (#184971)
ON/OFF are more conventional in the project for boolean CMake variables.
Commit: 861b9cacdcda23cc1c610a2f5ab1f8533bb8e621
https://github.com/llvm/llvm-project/commit/861b9cacdcda23cc1c610a2f5ab1f8533bb8e621
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libcxx/include/variant
M libcxx/test/std/utilities/variant/variant.relops/relops.pass.cpp
Log Message:
-----------
[libc++] Fix std::variant comparators not working on recursive instantiations (#182238)
We currently have an instantiation cycle in `variant`'s comparison
operators. This patch fixes that by replacing a `decltype(auto)` with an
explicit return type, removing the requirement to instantiate the
function in order to know the return type.
Fixes #182232
Commit: 587becb624fa32329109f1fe53c6b7d4e93eaf81
https://github.com/llvm/llvm-project/commit/587becb624fa32329109f1fe53c6b7d4e93eaf81
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
Log Message:
-----------
[WebKit checkers] Disallow operator delete in a trivial context. (#185122)
This PR changes the "trivial function analysis" to disallow `operator
delete` in a "trival" or "nodelete" function or statement. Without this,
the delete operator could deallocate memory for a reference counted
objects, etc...
Commit: 704c87bb948aff1bec718d56ad52b9b5d9c49cfb
https://github.com/llvm/llvm-project/commit/704c87bb948aff1bec718d56ad52b9b5d9c49cfb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
A libclc/clc/include/clc/workitem/clc_get_global_linear_id.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/workitem/clc_get_global_linear_id.cl
M libclc/clc/lib/generic/workitem/clc_get_local_linear_id.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/workitem/get_global_linear_id.cl
A libclc/opencl/lib/generic/workitem/get_local_linear_id.cl
Log Message:
-----------
libclc: Implement get_global_linear_id and get_local_linear_id (#184800)
Commit: e6fb9ba3f20d36bc1c56a36832d5057e52402a87
https://github.com/llvm/llvm-project/commit/e6fb9ba3f20d36bc1c56a36832d5057e52402a87
Author: Pranshu Goyal <78131793+pranshoe at users.noreply.github.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/lib/Analysis/VectorUtils.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/clmul.ll
A llvm/test/Transforms/LoopVectorize/RISCV/clmul.ll
A llvm/test/Transforms/LoopVectorize/X86/clmul.ll
M llvm/test/Transforms/LoopVectorize/intrinsic.ll
Log Message:
-----------
[Analysis] isTriviallyVectorizable - add Intrinsic::clmul along with vectorisation tests (#180014)
This patch adds a case in isTriviallyVectorizable in llvm/lib/Analysis/VectorUtils.cpp for Intrinsic::clmul.
Fixes #179106
Commit: 10c0e1fc86bcb2a55d4ef5037b055d5a9808dba4
https://github.com/llvm/llvm-project/commit/10c0e1fc86bcb2a55d4ef5037b055d5a9808dba4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgcn/workitem/clc_get_global_size.cl
M libclc/clc/lib/amdgcn/workitem/clc_get_local_size.cl
M libclc/clc/lib/ptx-nvidiacl/SOURCES
A libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_size.cl
R libclc/opencl/lib/amdgcn-amdhsa/SOURCES
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_local_size.cl
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/workitem/get_global_size.cl
R libclc/opencl/lib/amdgcn/workitem/get_local_size.cl
M libclc/opencl/lib/generic/SOURCES
M libclc/opencl/lib/generic/workitem/get_global_size.cl
A libclc/opencl/lib/generic/workitem/get_local_size.cl
M libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl
Log Message:
-----------
libclc: Avoid duplicated get_local_size/get_global_size functions (#185166)
Move opencl handling on top of clc into opencl generic, delete
amdgpu implementations in opencl.
Commit: afba44054184622afefad28905466a9b7129d27b
https://github.com/llvm/llvm-project/commit/afba44054184622afefad28905466a9b7129d27b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgcn/workitem/clc_get_enqueued_local_size.cl
Log Message:
-----------
libclc: Fix amdgpu get_enqueued_local_size (#185171)
This should not be the same as get_local_size
Commit: 66e85c275fb587df9ff1ff1d3c26664c32ed5d49
https://github.com/llvm/llvm-project/commit/66e85c275fb587df9ff1ff1d3c26664c32ed5d49
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M lldb/unittests/Platform/CMakeLists.txt
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb][PlatformDarwin][test] Add unit-test for LocateExecutableScriptingResourcesFromDSYM (#185057)
Depends on:
* https://github.com/llvm/llvm-project/pull/185056
Adds test unit-test for
`PlatformDarwin::LocateExecutableScriptingResourcesFromDSYM`. I had to
mock the `ScriptInterpreter` because the function internally uses the
`ScriptInterpreterPython` to check for reserved words in file names. But
linking the `ScriptInterpreterPython` was quite the undertaking, which I
think we could pull off, but required more churn that I had hoped.
Mocking it seemed pretty low-cost so I resorted to doing that instead.
Test-cases aren't very elaborate yet. It just has a basic assertion that
we locate the Python file within the dSYM. Mostly I set up
infrastructure for future test-cases.
Commit: b8ea766938b4b2812f9b833a883ad02c92852ba6
https://github.com/llvm/llvm-project/commit/b8ea766938b4b2812f9b833a883ad02c92852ba6
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/test/CodeGen/AArch64/neon/fullfp16.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
Log Message:
-----------
[Clang][AArch64] Reorganize tests for `vceqz` intrinsics (NFC) (#185090)
Group related `vceqz_*` and `vceqzd_*` tests together for consistency
and readability. Add a comment documenting the scalar variants that are
not currently covered.
No functional change.
Follow-up to #184893.
Commit: 9088858f548da10aae85700ffee6b71e8221ec5e
https://github.com/llvm/llvm-project/commit/9088858f548da10aae85700ffee6b71e8221ec5e
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
R clang/test/CIR/CodeGen/try-catch-tmp.cpp
M clang/test/CIR/CodeGen/try-catch.cpp
Log Message:
-----------
[CIR][NFC] Merge try-catch-tmp with try-catch test file (#185123)
Merge try-catch-tmp.cpp the with try-catch test file
Commit: c56aad6b4f52c9088be5847aa7da33d27df0b338
https://github.com/llvm/llvm-project/commit/c56aad6b4f52c9088be5847aa7da33d27df0b338
Author: Ayush Kumar Gaur <132849148+Ayush3941 at users.noreply.github.com>
Date: 2026-03-07 (Sat, 07 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 handling for ROTL/ROTR/BITREVERSE/BSWAP/CTPOP/ABS (#184033)
Add DemandedElts handling for ROTL/ROTR/BITREVERSE/BSWAP/CTPOP/ABS in SelectionDAG::isKnownNeverZero
Fixes #183040
Commit: fe7d245c187b3c53de72662f177574f7e5c2167a
https://github.com/llvm/llvm-project/commit/fe7d245c187b3c53de72662f177574f7e5c2167a
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
Log Message:
-----------
[CIR][NFC] ComplexType visitStmt replace NYI with unreachable (#185178)
Replace errorNYI with llvm_unreachable in ComplexType visitStmt
Commit: 898dc857633bebda504a20390220c87761050f08
https://github.com/llvm/llvm-project/commit/898dc857633bebda504a20390220c87761050f08
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/index/dex/dexp/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/monitor/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/server/CMakeLists.txt
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang/cmake/modules/AddGRPC.cmake
Log Message:
-----------
[clangd] Disable PCH for libs that use gRPC (#185185)
gRPC adds -pthread, which is incompatible with PCH without it. At some
point, we probably should generally switch from -lpthread to -pthread,
but until then, disable PCH for affected targets.
Fixes https://github.com/llvm/llvm-project/issues/184759.
Commit: 818168ebca24640f8cfc495abc79f658e43c7e2c
https://github.com/llvm/llvm-project/commit/818168ebca24640f8cfc495abc79f658e43c7e2c
Author: Aditya Singh <aditya26189 at kgpian.iitkgp.ac.in>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/missing-std-forward.rst
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward-cxx23.cpp
Log Message:
-----------
[clang-tidy] Fix false positive for constrained template parameters in `cppcoreguidelines-missing-std-forward` (#182038)
Explicit object parameters with a type constraint are skipped to avoid
false positives. They are technically still forwarding references per
[temp.deduct.call], but rarely intended to be perfectly forwarded.
Fixes #180362
Commit: f441746a7b3986d2fcb1f973745b53e33e6c68e4
https://github.com/llvm/llvm-project/commit/f441746a7b3986d2fcb1f973745b53e33e6c68e4
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/include/llvm/ADT/StringSwitch.h
Log Message:
-----------
[ADT] Remove deprecated variadic `StringSwitch::Cases` and `CasesLower` (#185191)
These overloads have been deprecated since October 2025.
Use the `std::initializer_list` overload instead: `.Cases({"a", "b"},
Value)`.
For more context, see https://github.com/llvm/llvm-project/pull/163117.
Assisted-by: claude
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 1af9f7c0e6cfbdba380ad5c261c6244e7c8edd7a
https://github.com/llvm/llvm-project/commit/1af9f7c0e6cfbdba380ad5c261c6244e7c8edd7a
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/transform-narrow-interleave-to-widen-memory.ll
A llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-ordered-reduction.ll
Log Message:
-----------
[LV] Add test for IG narrowing and epilogue with ordered reductions.
Add missing test coverage for narrowing interleave groups and countable
early exit and epilogue vectorization with ordered reductions.
Commit: 30434bab1a85451b0a85fab94a835a7a40818ffa
https://github.com/llvm/llvm-project/commit/30434bab1a85451b0a85fab94a835a7a40818ffa
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/docs/CommandGuide/llubi.rst
A llvm/test/tools/llubi/loadstore_be.ll
A llvm/test/tools/llubi/loadstore_le.ll
A llvm/test/tools/llubi/loadstore_misaligned.ll
A llvm/test/tools/llubi/loadstore_null.ll
A llvm/test/tools/llubi/loadstore_oob1.ll
A llvm/test/tools/llubi/loadstore_overaligned.ll
A llvm/test/tools/llubi/loadstore_poison.ll
A llvm/test/tools/llubi/loadstore_uaf.ll
A llvm/test/tools/llubi/store_dead.ll
M llvm/tools/llubi/lib/Context.cpp
M llvm/tools/llubi/lib/Context.h
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llubi/lib/Value.h
M llvm/tools/llubi/llubi.cpp
Log Message:
-----------
[Reland][llubi] Add support for load/store/lifetime markers (#185196)
This patch relands https://github.com/llvm/llvm-project/pull/182532. The
original version causes test failures related undef bits since it
incorrectly assumes `std::uniform_int_distribution` yields the same
results across different stdlib vendors. This patch simply uses low bits
to avoid the issue. I am not sure whether it still generates uniformly
distributed random numbers. But abseil also uses this trick:
https://github.com/abseil/abseil-cpp/blob/e72b94a2f257ba069ec0b99e557e9f1f6b9c1a3e/absl/random/uniform_int_distribution.h#L203-L206
I have confirmed all tests passed with libstdc++ and libc++.
Original PR description:
Bytes are adjusted to respect the incoming byte type proposed in
https://discourse.llvm.org/t/rfc-add-a-new-byte-type-to-llvm-ir/89522.
Note that the current implementation of constant folding doesn't handle
bitcasts with weird types like `<8 x i3> to <3 x i8>`:
https://github.com/llvm/llvm-project/blob/49de34459c99b33c27aae4596ed5e67ce3d89eae/llvm/lib/Analysis/ConstantFolding.cpp#L223-L232
So I take the result from Alive2 as reference:
https://alive2.llvm.org/ce/z/ZGA_xP
Commit: ac5081a72ed52cef08d491f393314d0fc89fdd81
https://github.com/llvm/llvm-project/commit/ac5081a72ed52cef08d491f393314d0fc89fdd81
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/RISCV/same-node-reused.ll
Log Message:
-----------
[SLP][NFC]Add a test with the missing matching of same nodes with reuses, NFC
Commit: 810af8a3236acb953ca8e3f46849830cfc08d442
https://github.com/llvm/llvm-project/commit/810af8a3236acb953ca8e3f46849830cfc08d442
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/Headers/amdhsa_abi.h
M clang/test/Headers/amdhsa_abi.cl
Log Message:
-----------
clang/AMDGPU: Add missing field to implicit kernarg struct definition (#185209)
I missed this one when figuring out all the field offsets.
Commit: c6805abf77117ebe51920010fd1838f835d8536f
https://github.com/llvm/llvm-project/commit/c6805abf77117ebe51920010fd1838f835d8536f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/narrow-shl-load.ll
Log Message:
-----------
[X86] narrow-shl-load.ll - regenerate test checks (#185211)
Commit: a96a0ded25c63e2a9d5838fe50e578a3339743fd
https://github.com/llvm/llvm-project/commit/a96a0ded25c63e2a9d5838fe50e578a3339743fd
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/same-node-reused.ll
Log Message:
-----------
[SLP]Fix the matching of the nodes with the same scalars, but reused
If the scalars are reused and the ReuseShuffleIndices is set, we may
miss matching for the buildvector/gather nodes and add an extra cost
Commit: 0c9dfe1f7cab088ac9d3eb71ab6db5afd3e8a96f
https://github.com/llvm/llvm-project/commit/0c9dfe1f7cab088ac9d3eb71ab6db5afd3e8a96f
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/third-party/unittest/BUILD.bazel
Log Message:
-----------
[bazel] Disable parse_headers on gtest headers (#185138)
One of the headers has a circular dependency issue that makes it not
isolated
```
.../googletest/include/gtest/internal/custom/gtest-printers.h:53:12: error: no member named 'testing' in the global namespace
53 | *OS << ::testing::PrintToString(S.str());
| ~~^
```
Commit: 7dd069da0fc1c70cc8abe873ca767fe92dbb3881
https://github.com/llvm/llvm-project/commit/7dd069da0fc1c70cc8abe873ca767fe92dbb3881
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M utils/bazel/.bazelversion
M utils/bazel/MODULE.bazel.lock
Log Message:
-----------
[bazel] Bump to latest point release (#185139)
Only minor fixes, just staying up to date.
Commit: f34adfebc106a2b18e59664bf10b2b0c2f81ed69
https://github.com/llvm/llvm-project/commit/f34adfebc106a2b18e59664bf10b2b0c2f81ed69
Author: Saleem Abdulrasool <compnerd at compnerd.org>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M lldb/cmake/modules/AddLLDB.cmake
Log Message:
-----------
build: add `LINKER:` modifier to `/DELAYLOAD:` options (#185086)
When building with the GNU driver, we would pass in `/DELAYLOAD:...`
without indicating that this is a linker flag. `clang` does not
implictly forward non-consumed options to the linker like `cl` does, and
this would cause the build to fail.
Commit: 58efc426d7036c9736f4cbaafa55e2b42fed1e7d
https://github.com/llvm/llvm-project/commit/58efc426d7036c9736f4cbaafa55e2b42fed1e7d
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommandObjectCPlusPlus.cpp
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommandObjectCPlusPlus.h
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/CMakeLists.txt
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
M lldb/source/Plugins/REPL/Clang/CMakeLists.txt
Log Message:
-----------
[LLDB] Move Itanium language runtime to C++ language runtime (#169225)
In order to support the Microsoft ABI alongside the Itanium one in the
same process from different DLLs, this moves the Itanium ABI runtime
plugin to the C++ language runtime (see
https://github.com/llvm/llvm-project/pull/168941#discussion_r2547684264).
Before this PR, the C++ language runtime wasn't a plugin. Instead, its
functionality was provided by the Itanium ABI plugin.
All Itanium specific methods are moved to a new class
`ItaniumABIRuntime`. This includes resolving the dynamic type, setting
exception filters, and getting the exception object.
The other methods were added to `CPPLanguageRuntime`.
`language cplusplus demangle` moved to `CommandObjectCPlusPlus`.
The Clang REPL depended on the C++ runtime. Now that it's a plugin, this
failed the layering check. Since the REPL doesn't use the C++ runtime, I
removed the dependency.
Commit: b5f3ea1fe4bb2945adc10780255d1aee8e77685c
https://github.com/llvm/llvm-project/commit/b5f3ea1fe4bb2945adc10780255d1aee8e77685c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl
Log Message:
-----------
[Bazel] Fixes 58efc42 (#185227)
Fixes 58efc42.
Commit: ff11354911024ff443145e2a502e83f42066418a
https://github.com/llvm/llvm-project/commit/ff11354911024ff443145e2a502e83f42066418a
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp
Log Message:
-----------
[clang-format][NFC] Use the newly added AllowLiteralDigitSeparator (#185165)
Use LangOptions::AllowLiteralDigitSeparator added in #184235 for the
IntegerLiteralSeparator option.
Commit: d7ff97db15026860f1f9c95e8fbf9f81e7120be3
https://github.com/llvm/llvm-project/commit/d7ff97db15026860f1f9c95e8fbf9f81e7120be3
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libcxx/utils/ci/lnt/run-benchmarks
Log Message:
-----------
[libc++] Support build failures when running LNT benchmarks (#185234)
It's rare but possible for the codebase not to build. When that happens,
we should carry on and still submit an empty LNT report for that order,
otherwise we'll get stuck thinking that order hasn't been benchmarked
yet.
Commit: baac39c0d2a46a1ff6d810168bd6277008fbd0bf
https://github.com/llvm/llvm-project/commit/baac39c0d2a46a1ff6d810168bd6277008fbd0bf
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/amdgcn/async/wait_group_events.cl
Log Message:
-----------
libclc: Add amdgpu wait_group_events (#185177)
Commit: a2231642b341c71ba184af2b3831502fded401da
https://github.com/llvm/llvm-project/commit/a2231642b341c71ba184af2b3831502fded401da
Author: William Tran-Viet <wtranviet at proton.me>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libcxx/include/__iterator/wrap_iter.h
M libcxx/include/optional
Log Message:
-----------
[libc++][NFC] Simplify `optional::iterator` (#183230)
- Rename `__optional_iterator` into `__optional_iterator_base` and make
it part of the `__optional_{meow}_base` inheritance chain. This allows
us to get rid of a sketchy-looking downcast and shorten some code.
Commit: b883091badd812063adff715f27e414af74b371c
https://github.com/llvm/llvm-project/commit/b883091badd812063adff715f27e414af74b371c
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
[ORC] Further simplify ContainerElementsMap::hoistDeps. NFCI. (#185242)
At the one call-site where the result of hoistDeps is used,
self-dependencies will already have been eliminated. That means we can
use the "deps changed" property that we're already computing rather than
tracking "deps graph changed" separately.
Commit: 088f740035f0ab13d122b06fa723ac4ac07a5142
https://github.com/llvm/llvm-project/commit/088f740035f0ab13d122b06fa723ac4ac07a5142
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M libclc/CMakeLists.txt
A libclc/cmake/modules/CMakeCLCCompiler.cmake.in
A libclc/cmake/modules/CMakeCLCCompilerTest.cl
A libclc/cmake/modules/CMakeCLCInformation.cmake
A libclc/cmake/modules/CMakeDetermineCLCCompiler.cmake
A libclc/cmake/modules/CMakeTestCLCCompiler.cmake
Log Message:
-----------
[libclc] Add custom CMake language handling for OpenCL files (#185243)
Summary:
The current handling of `libclc` is to use custom clang jobs to compile
source files. This is the way we used to compile GPU libraries, but we
have largely moved away from this. The eventual goal is to simple be
able to use `clang` like a normal project. One barrier to this is the
lack of language support for OpenCL in CMake.
This PR uses CMake's custom language support to define a minimal OpenCL
language, largely just a wrapper around `clang -x cl`. This does
nothing, just enables the support. Future PRs will need to untangle the
mess of dependencies.
The 'link+opt' steps that we now do should be able to simply be done as
a custom `llvm-link` and `opt` job on the library, which isn't ideal but
it still better than the current state.
Commit: 0cad9b7585d9c5dbb59de0b54b0a6f7b99da1c69
https://github.com/llvm/llvm-project/commit/0cad9b7585d9c5dbb59de0b54b0a6f7b99da1c69
Author: Lucas Chollet <lucas.chollet at free.fr>
Date: 2026-03-07 (Sat, 07 Mar 2026)
Changed paths:
M llvm/unittests/TargetParser/TripleTest.cpp
Log Message:
-----------
[llvm] Prefer the unknown vendor for SerenityOS triples (#185026)
No functional change. This patch updates the target-triple unit tests to
use the ones that we care about.
Commit: 3e0d6c81f22edaa8f13a54a1094ebacff1dbc7a2
https://github.com/llvm/llvm-project/commit/3e0d6c81f22edaa8f13a54a1094ebacff1dbc7a2
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/new-delete.cpp
Log Message:
-----------
[clang][bytecode] Check for errors in CXXDeleteExprs (#185189)
e.g. `getOperatorDelete()` may return null for those.
Commit: 3fb55b6872c1534fb965bd758d3a6f4d5abf495d
https://github.com/llvm/llvm-project/commit/3fb55b6872c1534fb965bd758d3a6f4d5abf495d
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/x86_64/headers.txt
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_socket_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_sockaddr_un.h
M libc/include/CMakeLists.txt
M libc/include/sys/socket.yaml
A libc/include/sys/un.yaml
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
Log Message:
-----------
[libc] Add <sys/un.h> header. (#182622)
`sockaddr_un` structure is supposed to be provided by the `<sys/un.h>`
header. Add this header to llvm-libc, and move the declaration of
`sockaddr_un` there from `<sys/socket.h>`. See
https://man7.org/linux/man-pages/man0/sys_un.h.0p.html
Add proxy headers for the `<sys/socket.h>` macro (like `AF_UNIX`) and
for the `struct sockaddr_un` so that the tests can be more hermetic and
avoid system header inclusion.
Commit: 4b9150a7a8cd43cc69e21e1308dcc5b0bb8d6d2e
https://github.com/llvm/llvm-project/commit/4b9150a7a8cd43cc69e21e1308dcc5b0bb8d6d2e
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
Log Message:
-----------
[Clang] Fix a concept cache bug on DependentNameType (#184771)
The default RAV implementation refuses to traverse NNS's typeloc
recursively, and template parameters inside DependentNameType are
overlooked inadvertently.
No release note as what regression patches always do.
Fixes https://github.com/llvm/llvm-project/issues/184562
Commit: 0b2aaac04a04cd471e2aa635d3462d8c22aa5a04
https://github.com/llvm/llvm-project/commit/0b2aaac04a04cd471e2aa635d3462d8c22aa5a04
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl
R libclc/opencl/lib/amdgcn/workitem/get_group_id.cl
R libclc/opencl/lib/amdgcn/workitem/get_local_id.cl
R libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/workitem/get_global_offset.cl
A libclc/opencl/lib/generic/workitem/get_group_id.cl
A libclc/opencl/lib/generic/workitem/get_local_id.cl
A libclc/opencl/lib/generic/workitem/get_work_dim.cl
M libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_linear_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_max_sub_group_size.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_sub_groups.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_local_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_size.cl
Log Message:
-----------
libclc: Remove target definitions of opencl workitem functions (#185206)
These were just calling the __clc implementation, so move it
to generic.
Commit: 80ff7369c9ecdbef23a95b234eef3f05e7c37575
https://github.com/llvm/llvm-project/commit/80ff7369c9ecdbef23a95b234eef3f05e7c37575
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/amdgcn/printf/__printf_alloc.cl
Log Message:
-----------
libclc: Add __printf_alloc implementation (#185231)
AMDGPU OpenCL printf implementation emits a call to this helper
function.
Commit: b7403433f8dbd53f7e97afbd6587432dbe00cc18
https://github.com/llvm/llvm-project/commit/b7403433f8dbd53f7e97afbd6587432dbe00cc18
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/workitem/clc_get_global_id.cl
M libclc/opencl/lib/generic/workitem/get_global_id.cl
Log Message:
-----------
libclc: Move get_global_id into clc (#185180)
Commit: 592c0f5d74fd6090ae6c278540954d612669e826
https://github.com/llvm/llvm-project/commit/592c0f5d74fd6090ae6c278540954d612669e826
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/workitem/clc_get_global_id.cl
Log Message:
-----------
libclc: Use enqueued local size to implement get_global_id (#185181)
Commit: 65775204b7af5ca9a65a03876a162e98d452beee
https://github.com/llvm/llvm-project/commit/65775204b7af5ca9a65a03876a162e98d452beee
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/clc/include/clc/synchronization/clc_work_group_barrier.h
M libclc/clc/lib/amdgcn/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl
M libclc/opencl/lib/generic/synchronization/work_group_barrier.cl
Log Message:
-----------
libclc: Use separate acquire and release fences in work_group_barrier (#185190)
Commit: 5785568ca12c78b33c535a67f096c16c7f19dfca
https://github.com/llvm/llvm-project/commit/5785568ca12c78b33c535a67f096c16c7f19dfca
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/mem_fence/fence.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/mem_fence/fence.cl
R libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/mem_fence/fence.cl
Log Message:
-----------
libclc: Remove target opencl copies of mem_fence (#185207)
Commit: 4c9d448e058d2a6371634a27608ef3fff01e817d
https://github.com/llvm/llvm-project/commit/4c9d448e058d2a6371634a27608ef3fff01e817d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
A libclc/clc/include/clc/synchronization/clc_sub_group_barrier.h
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/synchronization/clc_sub_group_barrier.cl
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/subgroup/sub_group_barrier.cl
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/synchronization/sub_group_barrier.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/synchronization/sub_group_barrier.cl
Log Message:
-----------
libclc: Move sub_group_barrier to clc (#185208)
Commit: 327f16f7fbdc33d0d0c8995d76aa31249718fcef
https://github.com/llvm/llvm-project/commit/327f16f7fbdc33d0d0c8995d76aa31249718fcef
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
A libclc/clc/include/clc/subgroup/clc_sub_group_broadcast.h
R libclc/clc/include/clc/subgroup/sub_group_broadcast.h
M libclc/clc/lib/amdgcn/subgroup/sub_group_broadcast.cl
M libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
Log Message:
-----------
libclc: Rename sub_group_broadcast header (#185212)
The other clc headers have the clc prefix, so add it.
Commit: 78c6ebd2cdfc0fc810448d0fc23a18bc39b363cf
https://github.com/llvm/llvm-project/commit/78c6ebd2cdfc0fc810448d0fc23a18bc39b363cf
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
A libclc/clc/include/clc/amdgpu/amdgpu_utils.h
A libclc/clc/include/clc/subgroup/clc_subgroup.h
M libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/subgroup/subgroup.cl
M libclc/clc/lib/amdgcn/workitem/clc_get_max_sub_group_size.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_num_sub_groups.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_sub_group_id.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_sub_group_size.cl
M libclc/opencl/lib/amdgcn/SOURCES
R libclc/opencl/lib/amdgcn/subgroup/subgroup.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/subgroup/subgroup.cl
Log Message:
-----------
libclc: Move subgroup functions into clc (#185220)
It turns out there was a generic implementation of the id and sizes.
The practice of splitting every single function into its own file is
kind of a pain here, so introduce a utility header for amdgpu.
Commit: 68bb8a0ded61c11b7bc7f91f8d4c7a9bbb04b7d0
https://github.com/llvm/llvm-project/commit/68bb8a0ded61c11b7bc7f91f8d4c7a9bbb04b7d0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
A libclc/clc/include/clc/collective/clc_work_group_any_all.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/collective/clc_work_group_any_all.cl
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/collective/work_group_any_all.cl
Log Message:
-----------
libclc: Add work_group_any/work_group_all implementation (#185260)
Commit: abb3b981a37a04e56cea6439961d6bb3ee058f67
https://github.com/llvm/llvm-project/commit/abb3b981a37a04e56cea6439961d6bb3ee058f67
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
A libclc/clc/include/clc/collective/clc_work_group_broadcast.h
A libclc/clc/include/clc/collective/clc_work_group_broadcast.inc
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/collective/clc_work_group_broadcast.cl
A libclc/clc/lib/generic/collective/clc_work_group_broadcast.inc
M libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/generic/collective/work_group_broadcast.cl
A libclc/opencl/lib/generic/collective/work_group_broadcast.inc
Log Message:
-----------
libclc: Add work_group_broadcast (#185261)
Commit: a2fd44acf3115bc5cb024814296b19df6ab34287
https://github.com/llvm/llvm-project/commit/a2fd44acf3115bc5cb024814296b19df6ab34287
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/opencl/lib/amdgcn/async/wait_group_events.cl
Log Message:
-----------
libclc: Fix wait_group_events build for targets without generic (#185264)
Commit: 7752b2efa2c796c69d1db95cdf89eb2b8194fcf8
https://github.com/llvm/llvm-project/commit/7752b2efa2c796c69d1db95cdf89eb2b8194fcf8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
Log Message:
-----------
libclc: Add uintptr_t overloads of atomic_fetch_add and sub (#185263)
This is a special case because the pointee type is unsigned, but the
input value is signed. Directly use the opencl builtins, because these
work correctly without any ugly casting required, and it's not worth
putting a wrapper in clc.
Commit: 03347e0834884a6ed795a5eccc0057e705919698
https://github.com/llvm/llvm-project/commit/03347e0834884a6ed795a5eccc0057e705919698
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h
M libclc/clc/lib/amdgcn/workitem/clc_get_max_sub_group_size.cl
Log Message:
-----------
libclc: Correctly declare __clc_get_max_sub_group_size as taking no arguments (#185265)
Commit: 327f1adef8df6afc07f6c88cfa380c97399af3dc
https://github.com/llvm/llvm-project/commit/327f1adef8df6afc07f6c88cfa380c97399af3dc
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/framelayout-fpr128-csr.ll
A llvm/test/CodeGen/AArch64/framelayout-fpr128-spill.mir
Log Message:
-----------
[AArch64] Ensure FPR128 callee-save stack offsets are aligned (#184314)
This was benign for Linux targets (as when dividing by the scale the
offset would be correctly truncated), so only resulted in failures with
`-DLLVM_ENABLE_ASSERTIONS=On`. On Windows, this was a miscompile as the
lack of alignment would result in the FPR128 callee-save getting
assigned to the same offset as the previous GPR.
Fixes: #183708
Commit: 4c31b6f93c7d8499b93cd6d29b8874a62f2cfed0
https://github.com/llvm/llvm-project/commit/4c31b6f93c7d8499b93cd6d29b8874a62f2cfed0
Author: Benjamin Maxwell <macdue at dueutil.tech>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/framelayout-fpr128-csr.ll
Log Message:
-----------
Fix comment in FPR128 test (NFC)
Commit: b73ae4eea84d44731c1b1e9d4e7b7462b515aee3
https://github.com/llvm/llvm-project/commit/b73ae4eea84d44731c1b1e9d4e7b7462b515aee3
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
Log Message:
-----------
[CIR] Extract base classes for complex ops (#185262)
Extract CIR_ComplexPartOp for ComplexRealOp/ComplexImagOp,
CIR_ComplexPartPtrOp for ComplexRealPtrOp/ComplexImagPtrOp,
CIR_ComplexBinOp for ComplexAddOp/ComplexSubOp, and
CIR_ComplexRangeBinOp for ComplexMulOp/ComplexDivOp to
eliminate duplicated arguments, results, format, and traits.
Commit: 6aa115bba55054b0dc81ebfc049e8c7a29e614b2
https://github.com/llvm/llvm-project/commit/6aa115bba55054b0dc81ebfc049e8c7a29e614b2
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-08 (Sun, 08 Mar 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/epilog-vectorization-ordered-reduction.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:
-----------
Reapply "[VPlan] Remove manual region removal when simplifying for VF and UF. (#181252)"
This reverts commit d7e037c8383e66e5c07897f144f6d8ef47258682.
Recommit with a small fix to properly handle ordered reductions when
connecting the epilogue.
Original message:
Replace manual region dissolution code in
simplifyBranchConditionForVFAndUF with using general
removeBranchOnConst. simplifyBranchConditionForVFAndUF now just creates
a (BranchOnCond true) or updates BranchOnTwoConds.
The loop then gets automatically removed by running removeBranchOnConst.
This removes a bunch of special logic to handle header phi replacements
and CFG updates. With the new code, there's no restriction on what kind
of header phi recipes the loop contains.
Note that VPEVLBasedIVRecipe needs to be marked as readnone. This is
technically unrelated, but I could not find an independent test that
would be impacted.
The code to deal with epilogue resume values now needs updating, because
we may simplify a reduction directly to the start value.
PR: https://github.com/llvm/llvm-project/pull/181252
Commit: da8d1b52d0d344068a8bd3e46a8af3a692d2efc2
https://github.com/llvm/llvm-project/commit/da8d1b52d0d344068a8bd3e46a8af3a692d2efc2
Author: Yue Huang <30948580+AdUhTkJm at users.noreply.github.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
M mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
Log Message:
-----------
[MLIR][Presburger] Fix simplify() of IntegerRelation (#181469)
In `simplify()`, we currently skip all columns from 0 to `firstVar` (the
column of the pivot) when we eliminate inequalities. This is invalid,
because unlike equalities, it is not guaranteed that these columns
contain only zeroes, and a scale by `rowMultiplier` cannot be ignored.
We must not skip any columns for inequalities.
Commit: d8b718a3fa540827a7c1bf250fd55cfa0d029e0f
https://github.com/llvm/llvm-project/commit/d8b718a3fa540827a7c1bf250fd55cfa0d029e0f
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/mask-size-less-common-mask.ll
Log Message:
-----------
[SLP]Match the mask size, when copying mask for full match
Need to be careful, when filling the mask for fully matched nodes, the
masks may differ in sizes
Fixes a crash reported in test/Transforms/SLPVectorizer/X86/mask-size-less-common-mask.ll
Commit: 2bf2115471278a214212d589d429e25bcf7f1241
https://github.com/llvm/llvm-project/commit/2bf2115471278a214212d589d429e25bcf7f1241
Author: Arjun Parmar <akparmar0404 at gmail.com>
Date: 2026-03-08 (Sun, 08 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::VECTOR_SHUFFLE handling (#185203)
closes #183350
Commit: 82ef7e54d3e644a26a834b240f590287cf3ee352
https://github.com/llvm/llvm-project/commit/82ef7e54d3e644a26a834b240f590287cf3ee352
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/masked_packss.ll
M llvm/test/CodeGen/X86/masked_packus.ll
M llvm/test/CodeGen/X86/packss.ll
M llvm/test/CodeGen/X86/packus.ll
Log Message:
-----------
[X86] combineVTRUNCSAT - attempt to recognise VTRUNCS/US(CONCAT(X,Y)) -> PACKSS/US(X,Y) folds. (#178707)
If we're just concatenating subvectors together to perform a saturated
truncate, see if we can perform PACK on the subvectors directly instead
- 256-bit PACK will require a post-shuffle, but this will typically fold
away in later shuffle combining and its probably better than changing
vector widths with concats.
Reference patch based off poor codegen identified in #169995
Commit: 421bc73cffe783fd82903d3d335ac238376b4682
https://github.com/llvm/llvm-project/commit/421bc73cffe783fd82903d3d335ac238376b4682
Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/include/mlir/Bindings/Python/IRAttributes.h
M mlir/include/mlir/Bindings/Python/IRCore.h
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/python/mlir/ir.py
Log Message:
-----------
[MLIR] [Python] Fixed a few issues in the type annotations (#183021)
* Removed an explicit `nb::sig` for `static_typeid`. The inferred type
would
work just fine, and unqualified `TypeID`, which was there previously,
only
really works for core types in the `ir` submodule.
* `DefaultingPyMlir*` helpers also produce qualified types, e.g.
`_mlir.ir.Location` instead of bare `Location`.
* `ir.*.__enter__` now returns a concrete type instead of `object`, e.g.
`ir.Context.__enter__` returns `Context`.
* `loc_tracebacks` uses `Generator` as the return type, since this is
what
`contextmanager` expects in typeshed.
* Changed static methods on subclasses of `DenseElementsAttribute` to
return
that concrete subclass, instead of `DenseElementsAttribute`.
---------
Co-authored-by: Maksim Levental <maksim.levental at gmail.com>
Commit: e0e5000ea70b115a69ca8802003ac9be56907d4f
https://github.com/llvm/llvm-project/commit/e0e5000ea70b115a69ca8802003ac9be56907d4f
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/shuffled-gather-casted.ll
M llvm/test/Transforms/SLPVectorizer/X86/gather-move-out-of-loop.ll
M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-reused-as-last-inst.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_with_external_users.ll
M llvm/test/Transforms/SLPVectorizer/X86/shl-to-add-transformation5.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-throttle.ll
M llvm/test/Transforms/SLPVectorizer/X86/small-graph-diff-block-instructions.ll
M llvm/test/Transforms/SLPVectorizer/alternate-non-profitable.ll
M llvm/test/Transforms/SLPVectorizer/ext-int-reduced-not-operand.ll
Log Message:
-----------
[SLP]Remove Alternate early profitability checks in favor of throttling
Removes early check, which may prevent some further optimizations, in
favor of tree throttling.
Reviewers: RKSimon, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/182760
Commit: 444dcbe19bb520e22c15307fd85e029409099d55
https://github.com/llvm/llvm-project/commit/444dcbe19bb520e22c15307fd85e029409099d55
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M flang/test/Lower/Intrinsics/btest.f90
M flang/test/Lower/Intrinsics/c_associated.f90
M flang/test/Lower/Intrinsics/c_funloc.f90
M flang/test/Lower/Intrinsics/cmplx.f90
M flang/test/Lower/Intrinsics/cpu_time.f90
Log Message:
-----------
[flang][NFC] Converted five tests from old lowering to new lowering (part 26) (#185102)
Tests converted from test/Lower/Intrinsics: btest.f90, c_associated.f90,
c_funloc.f90, cmplx.f90, cpu_time.f90
Commit: 845ee233b86689ad9a81c9668fd10cdb584a466f
https://github.com/llvm/llvm-project/commit/845ee233b86689ad9a81c9668fd10cdb584a466f
Author: Markus Böck <markus.boeck02 at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/test/Dialect/LLVMIR/types-invalid.mlir
Log Message:
-----------
[mlir][LLVM] Disallow opaque struct types as function arguments (#185200)
Function types are only allowed to take first-class values as arguments.
The LLVM dialect implemented this correctly so far except for allowing
opaque struct types. When translated to LLVM proper, invalid IR would be
created with confusing assertion errors.
This PR matches LLVM by disallowing opaque struct types as arguments,
allowing users to catch this kind of mistake early while still in the
MLIR world.
The corresponding LLVM logic is here:
https://github.com/llvm/llvm-project/blob/c4898f3f229027e6cbdf8f9db77b8c14d70f6599/llvm/lib/IR/Type.cpp#L404
Commit: 95919ecd57d5545a4997075e96399e301f7bd817
https://github.com/llvm/llvm-project/commit/95919ecd57d5545a4997075e96399e301f7bd817
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll
Log Message:
-----------
[SLP]Allow bitcast/bswap based reductions for types, larger than the total strided size
Added support for zero extending the bitcasted/bswapped type to the
original type, if it is larger than the original scalar type
Reviewers: hiraditya, RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/184018
Commit: af7c352fa38d49096888df6c99d010d274362aa6
https://github.com/llvm/llvm-project/commit/af7c352fa38d49096888df6c99d010d274362aa6
Author: Narayan <nsreekumar6 at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CMakeLists.txt
A clang/lib/CodeGen/QualTypeMapper.cpp
A clang/lib/CodeGen/QualTypeMapper.h
Log Message:
-----------
[LLVMABI] Introduce the QualTypeMapper (#174634)
This PR introduces the `QualTypeMapper` class, which bridges Clang's
type system with the LLVM ABI type system introduced in
https://github.com/llvm/llvm-project/pull/158329.
The `QualTypeMapper` translates Clang `QualType` instances into their
corresponding LLVM ABI type representations, preserving all ABI-relevant
information while abstracting away frontend-specific details.
The mapper queries the `ASTContext` for layout information computed by
the frontend and uses the `TypeBuilder` API(from the above merged PR) to
construct the corresponding ABI types. This separation ensures that ABI
logic remains independent of frontend AST details while still having
access to all necessary type information.
This is a prerequisite for implementing target-specific ABI lowering, as
demonstrated in https://github.com/llvm/llvm-project/pull/140112
Commit: bd15e6b7368ce81028197b8caff709baf1d4a662
https://github.com/llvm/llvm-project/commit/bd15e6b7368ce81028197b8caff709baf1d4a662
Author: Markus Böck <markus.boeck02 at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/docs/Passes.md
Log Message:
-----------
[mlir][docs] Add LLVM target passes to the docs (#185283)
These passes are useful for translating between LLVM proper and the LLVM
dialect and have so far been missing in the documentation.
Commit: 8b5331f06f5e58dcb99fd8ebd75d209975f714b7
https://github.com/llvm/llvm-project/commit/8b5331f06f5e58dcb99fd8ebd75d209975f714b7
Author: Ezlanding1 <113404035+Ezlanding1 at users.noreply.github.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Update goto label indentation styles (#180109)
Updates the goto label indentation styles based on the feature request.
Resolves #24492.
Commit: 6b290688f4aef7201d61dde6d283831ee408d9a1
https://github.com/llvm/llvm-project/commit/6b290688f4aef7201d61dde6d283831ee408d9a1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/setcc-logic.ll
Log Message:
-----------
[X86] setcc-logic.ll - add i128 cmpeq(or(X,Y),X) --> cmpeq(and(~X,Y),0) test (#185289)
Inspired by #157687
Commit: af22b50fac2311ff3f859e4e8bdec552c7aa8d5a
https://github.com/llvm/llvm-project/commit/af22b50fac2311ff3f859e4e8bdec552c7aa8d5a
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M .ci/monolithic-windows.sh
Log Message:
-----------
[CI] Try lowering max parallel link jobs on Windows (#185255)
It looks like #177477 might be caused by OOMs due to running too many
link jobs at the same time in rare circumstances. It doesn't reproduce
often enough for me to be able to easily check the event logs to confirm
the OOM killer was involved (I did try 192 runs), but it doesn't hurt to
try. This could slightly decrease performance, but given these are
vCPUs, even if we need to run only link jobs, we should take only a
10-20% performance hit for the link phase, which is generally not a
large portion of the build.
Commit: aa89092c0219709775fdc0957095aeb919afb1c2
https://github.com/llvm/llvm-project/commit/aa89092c0219709775fdc0957095aeb919afb1c2
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/ModRef.h
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
M llvm/test/Transforms/InferFunctionAttrs/enable-builtin.ll
Log Message:
-----------
[InferAttrs] malloc-family libcalls may write `errnomem` location
A miscompilation issue has been addressed via refined handling.
Fixes: https://github.com/llvm/llvm-project/issues/114772.
Fixes: https://github.com/llvm/llvm-project/issues/63142.
Commit: 6365d46654543484731c483c73a1b6bafdf8a354
https://github.com/llvm/llvm-project/commit/6365d46654543484731c483c73a1b6bafdf8a354
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[Bazel] Fix af7c352fa38d49096888df6c99d010d274362aa6 (#185308)
This added a user of the ABI library into clang. We did not have the ABI
library set up as a build target yet. This patch does that and also adds
the relevant use in clang.
Commit: aca4a8f644d12d947ab9b24784a4ea3efaeeeb4f
https://github.com/llvm/llvm-project/commit/aca4a8f644d12d947ab9b24784a4ea3efaeeeb4f
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/vgpr-limit-gfx1250.ll
Log Message:
-----------
[AMDGPU] Add missing -wwm-regalloc=fast to 4 more tests (NFC) (#184966)
Adding the missing wwm-regalloc=fast option in 4 more tests
that already specify -sgpr-regalloc=fast and -vgpr-regalloc=fast.
For consistency, the same preference should be applied to the
wwm-regalloc pipeline as well.
This is a follow-up to #184190 which addressed the same issue in
attr-amdgpu-flat-work-group-size-vgpr-limit.ll.
Commit: 647b1e38754aff87eeb500af2d061a0898094cbd
https://github.com/llvm/llvm-project/commit/647b1e38754aff87eeb500af2d061a0898094cbd
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/nvvm/addf/addf_invalid.mlir
A mlir/test/Target/LLVMIR/nvvm/subf/subf.mlir
A mlir/test/Target/LLVMIR/nvvm/subf/subf_invalid.mlir
A mlir/test/Target/LLVMIR/nvvm/subf/subf_vector.mlir
Log Message:
-----------
[MLIR][NVVM] Add LLVMIR lowering for nvvm.subf (#184968)
This change adds direct LLVMIR lowering to the `nvvm.subf` operation
added in #179162 to prevent translation failures when canonicalization
is not run. Also adds `mlir-translate` tests for `nvvm.subf`.
PTX ISA Reference:
1.
https://docs.nvidia.com/cuda/parallel-thread-execution/#floating-point-instructions-sub
2.
https://docs.nvidia.com/cuda/parallel-thread-execution/#half-precision-floating-point-instructions-sub
Commit: f7ab364f5e599de1cb1da2be4052e448afe2c8ff
https://github.com/llvm/llvm-project/commit/f7ab364f5e599de1cb1da2be4052e448afe2c8ff
Author: David Green <david.green at arm.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/ARM.h
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
A llvm/lib/Target/ARM/ARMPassRegistry.def
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.h
M llvm/test/CodeGen/ARM/ARMLoadStoreDBG.mir
M llvm/test/CodeGen/ARM/prera-ldst-aliasing.mir
Log Message:
-----------
[ARM] Add basic NPM support for LoadStoreOptimizer (#184139)
This is similar to #184090 for ARM, porting the LoadStoreOptimizer to
the new pass manager. The time there are both a pre-ra and post-ra
variant that are ported.
Commit: 2207296d3f591c3a668edf84927130e28b9d8461
https://github.com/llvm/llvm-project/commit/2207296d3f591c3a668edf84927130e28b9d8461
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
Log Message:
-----------
[VPlan] Fold constant trunc after EVL simplification.
This fixes a crash for the new test after
6aa115bba55054b0dc81ebfc049e8c7a29e614b2.
Commit: e25e010b9618157e0e05a387995271581e95b1f1
https://github.com/llvm/llvm-project/commit/e25e010b9618157e0e05a387995271581e95b1f1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/bswap-i64-by-i32-chunks.ll
Log Message:
-----------
[SLP][NFC]Add a test for bswap of i64 by 2 i32 bswaps
Commit: ecda6d1691b8c743fcc9d059f65dcef7d3308305
https://github.com/llvm/llvm-project/commit/ecda6d1691b8c743fcc9d059f65dcef7d3308305
Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
R mlir/lib/Bindings/Python/stubgen_runner.py
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/build_defs.bzl
M utils/bazel/third_party_build/nanobind.BUILD
Log Message:
-----------
[MLIR] [Bazel] Removed the stubgen plumbing added in #179211 (#185292)
The hope was that we would be able to reuse parts of this for
Google-internal builds and for open-source jaxlib builds, but we ended
up with custom plumbing in both cases, so I am now removing this
effectively dead code.
Commit: ae282974b8a40e20a4c55dfffba84d24db843d74
https://github.com/llvm/llvm-project/commit/ae282974b8a40e20a4c55dfffba84d24db843d74
Author: Berkay Sahin <berkaysahindev at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return-cxx20.cpp
Log Message:
-----------
[clang-tidy] Fix readability-else-after-return for [[likely]]/[[unlikely]] if (#184684)
Following the PR #181878 I have noticed a false negative when if is
attributed.
Repro:
```cpp
void f()
{
if (true) {
return;
} else {
// Warns as expected
}
if (true) [[likely]] {
return;
} else {
// False-negative
}
}
```
Godbolt: https://godbolt.org/z/cvGdovjhx
Commit: 483fc738ff106e22877cf3a1b0ca01ae5cac29ec
https://github.com/llvm/llvm-project/commit/483fc738ff106e22877cf3a1b0ca01ae5cac29ec
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/Loads.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[Loads] Add overload for isDerefAndAlignedInLoop that takes SCEVs.(NFC)
Add an overload of isDereferenceableAndAlignedInLoop that directly takes
the pointer and element sizes as SCEVs. This allows using it from
contexts without relying on an underlying load instruction in follow-up
patches.
Commit: 4df95b1a56b4445ffffd916e0ff551f5ce75d555
https://github.com/llvm/llvm-project/commit/4df95b1a56b4445ffffd916e0ff551f5ce75d555
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
M mlir/test/python/dialects/nvvm.py
Log Message:
-----------
[mlir][NVVM] Fix double spaces in tests after ODS printer fix. NFC. (#185326)
Follow-up to #184253. Update tests that checked for the old double-space
output of NVVM ops using ReductionKindAttr, ShflKindAttr, and
LoadCacheModifierAttr.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 15e7177f088eeb5aa7be5d30632e7b5e815fa8aa
https://github.com/llvm/llvm-project/commit/15e7177f088eeb5aa7be5d30632e7b5e815fa8aa
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/test/Conversion/VectorToGPU/vector-to-mma-ops.mlir
M mlir/test/Dialect/Affine/ops.mlir
M mlir/test/Dialect/GPU/subgroup-mma-vector-unroll.mlir
M mlir/test/Dialect/GPU/subgroupId-rewrite.mlir
M mlir/test/Dialect/GPU/transform-gpu.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_matmul.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_matvec.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Integration/GPU/CUDA/sm90/cga_cluster.mlir
M mlir/test/Integration/GPU/CUDA/sm90/gemm_f32_f16_f16_128x128x128.mlir
M mlir/test/Integration/GPU/CUDA/sm90/gemm_pred_f32_f16_f16_128x128x128.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x128_stride_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x8_8x128_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/transform-dialect/tma_load_64x8_8x128_noswizzle-transform.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-addi64-to-spirv.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-memcpy-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-reluf32-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-addi64-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-memcpy-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-reluf32-to-spirv.mlir
M mlir/test/python/dialects/gpu/dialect.py
Log Message:
-----------
[mlir][GPU] Fix double spaces in tests after ODS printer fix. NFC. (#185325)
Follow-up to #184253. The ODS attr/type printer fix removed the leading
space from generated print() methods. Update tests that checked for the
old double-space output of GPU ops using GPU_DimensionAttr and
GPU_MmaElementwiseOpAttr.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: fac1866cdf58fba3f9ce93835c2dc79858676895
https://github.com/llvm/llvm-project/commit/fac1866cdf58fba3f9ce93835c2dc79858676895
Author: SiliconA-Z <gfunni234 at gmail.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx512-cmp.ll
M llvm/test/CodeGen/X86/known-pow2.ll
M llvm/test/CodeGen/X86/setcc-logic.ll
Log Message:
-----------
[X86] Remove redundant and-not pattern code in X86 (#157687)
These transforms are now handled in DAGCombine, so enable
hasAndNotCompare for all scalar cases on X86, and remove the
platform-specific code that does the same thing.
Commit: e4160cb52d48f63abb520dcba8d212ea79f617cf
https://github.com/llvm/llvm-project/commit/e4160cb52d48f63abb520dcba8d212ea79f617cf
Author: Chi-Chun, Chen <chichun.chen at hpe.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
R flang/test/Lower/OpenMP/Todo/affinity-clause.f90
M flang/test/Lower/OpenMP/task-affinity.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[Flang][mlir][OpenMP] Support affinity clause codegen in Flang (#182222)
This patch translates the Flang AST to the OpenMP dialect for the
affinity clause, including support for the iterator modifier.
2/3 in stack for implementing affinity clause with iterator modifier
1/3 #182218
2/3 #182222
3/3 #182223
Commit: ade63092295313f991a3d4999eedfe01d3484f69
https://github.com/llvm/llvm-project/commit/ade63092295313f991a3d4999eedfe01d3484f69
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
M mlir/test/Integration/Dialect/XeGPU/LANE/no-xegpu-ops.mlir
Log Message:
-----------
[mlir][XeGPU] Fix double spaces in tests after ODS printer fix. NFC. (#185324)
Follow-up to #184253. Update tests that checked for the old double-space
output of gpu.block_id using GPU_DimensionAttr.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 7c13f88ecc0547a045a3726593c3bf716c182f07
https://github.com/llvm/llvm-project/commit/7c13f88ecc0547a045a3726593c3bf716c182f07
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
M mlir/test/Dialect/NVGPU/canonicalization.mlir
M mlir/test/Dialect/NVGPU/tmaload-transform.mlir
M mlir/test/Dialect/NVGPU/transform-matmul-to-nvvm.mlir
M mlir/test/Examples/NVGPU/Ch0.py
M mlir/test/Examples/NVGPU/Ch3.py
M mlir/test/Examples/NVGPU/Ch4.py
M mlir/test/Examples/NVGPU/Ch5.py
Log Message:
-----------
[mlir][NVGPU] Fix double spaces in tests after ODS printer fix. NFC. (#185327)
Follow-up to #184253. Update tests that checked for the old double-space
output of GPU and NVVM ops using GPU_DimensionAttr and
SetMaxRegisterActionAttr.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 19018866156f0ca3907d083d9c44047ee7451f7b
https://github.com/llvm/llvm-project/commit/19018866156f0ca3907d083d9c44047ee7451f7b
Author: Jim Lin <jim at andestech.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-mask.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-permutation.s
Log Message:
-----------
[RISCV] Update Andes45 vector mask scheduling info (#184719)
This PR adds latency/throughput for all RVV mask to the andes45 series
scheduling model.
Commit: d8474abfc1e7c3856b85b088f1133ae2e90da3d0
https://github.com/llvm/llvm-project/commit/d8474abfc1e7c3856b85b088f1133ae2e90da3d0
Author: zhouguangyuan0718 <zhouguangyuan.xian at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
Log Message:
-----------
[X86] Reduce -ffixed-r compile-time overhead (#184606)
PR #180242 added reserve-r support across the driver and backend, but it
also introduced avoidable compile-time work in hot paths.
In Clang, delay +egpr detection until -ffixed-r16 through -ffixed-r31
are actually queried instead of computing it for every x86_64
invocation.
In LLVM, store X86Subtarget::ReservedRReg in a fixed-size std::bitset
and update X86RegisterInfo::getReservedRegs() to iterate only over the
reserve-r register ranges instead of scanning every target register.
These changes keep reserve-r behavior unchanged while trimming the extra
compile-time overhead introduced by the PR.
Signed-off-by: ZhouGuangyuan <zhouguangyuan.xian at gmail.com>
Commit: ed5f4afa2b5cbb7ec8b0e3ff1bff0ed2042c4e6d
https://github.com/llvm/llvm-project/commit/ed5f4afa2b5cbb7ec8b0e3ff1bff0ed2042c4e6d
Author: Jacques Pienaar <jacques+gh at japienaar.info>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/Bytecode/BytecodeImplementation.h
M mlir/include/mlir/IR/BuiltinDialect.h
M mlir/include/mlir/IR/BuiltinDialect.td
M mlir/lib/Bytecode/Reader/BytecodeReader.cpp
M mlir/lib/IR/BuiltinDialectBytecode.cpp
A mlir/unittests/IR/BuiltinDialectVersionTest.cpp
M mlir/unittests/IR/CMakeLists.txt
M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel
Log Message:
-----------
[mlir][bytecode] Add builtin dialect version (#184678)
This adds a singular Builtin dialect version for use with bytecode
serialization. This version is not currently print unless set and not 0
(not planned a bump until next LLVM version). Created a unit test as
this was easiest way to track.
Additionally add emitWarning virtual method to DialectBytecodeReader,
mirroring emitError.
Tested on old mlir-opt reader, and could read, so should be non-breaking
change.
Commit: 1e28b7ef9c7480c33de836582611d9d32c84f6c8
https://github.com/llvm/llvm-project/commit/1e28b7ef9c7480c33de836582611d9d32c84f6c8
Author: Weibo He <NewSigma at 163.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
M llvm/test/Transforms/Coroutines/coro-cleanup-noop-elide.ll
Log Message:
-----------
[CoroCleanup] Fix stale unwind predecessor when erase noop coro (#185337)
This patch fixes two crashing reports.
Close #185155
Close #185274
Commit: 95a9647f2ac5827042a4755c8c022bcebaf2bca8
https://github.com/llvm/llvm-project/commit/95a9647f2ac5827042a4755c8c022bcebaf2bca8
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/nvvm/fma/fma.mlir
A mlir/test/Target/LLVMIR/nvvm/fma/fma_invalid.mlir
A mlir/test/Target/LLVMIR/nvvm/fma/fma_vector.mlir
Log Message:
-----------
[MLIR][NVVM] Add nvvm.fma Op (#184776)
Adds `nvvm.fma` Op to the NVVM dialect to perform fused multiply-add
operations.
PTX ISA Reference:
1.
https://docs.nvidia.com/cuda/parallel-thread-execution/#floating-point-instructions-fma
2.
https://docs.nvidia.com/cuda/parallel-thread-execution/#half-precision-floating-point-instructions-fma
Commit: f68af65300181e27f097e6b6b4c5bdef9c77cc3c
https://github.com/llvm/llvm-project/commit/f68af65300181e27f097e6b6b4c5bdef9c77cc3c
Author: Arun Thangamani <arun.thangamani at intel.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/X86/Transforms/VectorContractToPackedTypeDotProduct.cpp
M mlir/lib/Dialect/X86/Utils/X86Utils.cpp
M mlir/test/Dialect/X86/vector-contract-to-packed-type-dotproduct.mlir
Log Message:
-----------
[mlir][x86] Extends vector.contract Flat dot-product lowering for arg offset (#185167)
Extends `vector_contract_to_packed_type_dot_product` transform pass to
include `args` offset check while validating the `vector.contract`.
Eg: `vector.transfer_read %arg1[%arg3, %c0], %0 {in_bounds = [true,
true]} : !memref, !vec`
Commit: 1d6607d5ef1ea88770fdfd940c2545c36221817b
https://github.com/llvm/llvm-project/commit/1d6607d5ef1ea88770fdfd940c2545c36221817b
Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
Log Message:
-----------
[AMDGPU] Remove alignment constraint from spill pseudos (#177317)
Spill pseudo opcodes don't require target reg class alignment
constraint.
For targets which do have alignment constraints, lower the spills to
32-bit accesses.
Update the machine verifier accordingly.
Sgpr spill pseudos didn't enforce alignment constraints.
Modify vgpr spills reg class to not enforce them either.
Commit: e30f9c19464bcf1bf1e9f69b63884fb78ad2d05d
https://github.com/llvm/llvm-project/commit/e30f9c19464bcf1bf1e9f69b63884fb78ad2d05d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-09 (Mon, 09 Mar 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/epilog-vectorization-ordered-reduction.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 "Reapply "[VPlan] Remove manual region removal when simplifying for VF and UF. (#181252)""
This reverts commit 6aa115bba55054b0dc81ebfc049e8c7a29e614b2.
This is causing crashes. See #185345 for details.
Commit: 874ef0073aba2498516b06c8f2ec91a14e4d4336
https://github.com/llvm/llvm-project/commit/874ef0073aba2498516b06c8f2ec91a14e4d4336
Author: jay0x <90309873+blazie2004 at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/lib/Lower/ConvertConstant.cpp
A flang/test/Lower/pdt-struct-constructor-init.f90
Log Message:
-----------
[Flang] Fix crash in structure constructor lowering for PDT (#183543)
Fixes - [#181278](https://github.com/llvm/llvm-project/issues/181278)
This patch fixes a crash in Flang when parsing array constructors like:
`[ty0(2)(4)]`
The current implementation parses this as a type constructor ty0(2),
followed by what appears to be another call (4), instead of rejecting it
as invalid syntax. The lowering of` StructureConstructor` attempts to
retrieve the parent derived type using `sym->owner().derivedTypeSpec()`,
which return `nullptr` for PDT cases and lead to a crash.
In` flang/lib/Lower/ConvertConstant.cpp`, a safeguard is being added
which ensures that we fall back to the constructor’s derived type
specification when the parent type cannot be obtained, preventing the
null dereference and eliminating the crash. This change addresses only
the immediate crash, proper diagnostic handling for this invalid syntax
is still pending and remains as TODO.
---------
Co-authored-by: Jay Satish Kumar Patel <kumarpat at pe31.hpc.amslabs.hpecorp.net>
Commit: d0ddae678e3f634c988542dfbdde1dd0afe66344
https://github.com/llvm/llvm-project/commit/d0ddae678e3f634c988542dfbdde1dd0afe66344
Author: Sairudra More <sairudra60 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/lib/Lower/HlfirIntrinsics.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
A flang/test/Lower/HLFIR/cshift-optional-dim.f90
Log Message:
-----------
[flang] Fix segfault in CSHIFT/EOSHIFT with dynamically optional DIM (#184431)
When `DIM` is passed as an optional dummy argument and is absent at
runtime, the HLFIR lowering for the `CSHIFT` and `EOSHIFT` intrinsics
treated it as unconditionally present. This resulted in an unconditional
load of the `DIM` reference, causing a null pointer dereference and a
runtime segmentation fault when absent.
The underlying issue was that the `dim` argument for `cshift` and
`eoshift` was not marked with `handleDynamicOptional` during intrinsic
argument lowering setup. As a result, the `isPresent` state was never
populated, and the lowering implementation incorrectly fell through to
an unconditional scalar load.
This patch resolves the issue by:
1. Updating the `dim` entries for `cshift` and `eoshift` in
`IntrinsicCall.cpp` to use `handleDynamicOptional`. This enables
`getOperandVector()` to appropriately emit a guarded load (via
`loadOptionalValue()`) that safely returns a 0 placeholder when `DIM` is
absent.
2. Updating the HLFIR lowering implementations (`HlfirCShiftLowering`
and `HlfirEOShiftLowering`) to use the loaded scalar. It now employs an
`arith.select` to substitute the 0 placeholder with the
standard-mandated default of 1 when `isPresent` is false, matching the
Fortran requirements (§16.9.68 and §16.9.77) without generating
redundant `fir.if` or `fir.load` operations. Explicit `DIM=0` calls
still correctly forward the 0 value to flang-rt to trigger the
appropriate runtime bounds check error.
Co-authored-by: Sairudra More <moresair at pe31.hpc.amslabs.hpecorp.net>
Commit: 76cfb0b68e6e196bb0421df04554a718c54701c1
https://github.com/llvm/llvm-project/commit/76cfb0b68e6e196bb0421df04554a718c54701c1
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[NFC][AMDGPU] WaitEventSet should only print events that it contains
Commit: e20ae16ce6723a61f3387867e78f1096399ca74e
https://github.com/llvm/llvm-project/commit/e20ae16ce6723a61f3387867e78f1096399ca74e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libclc/CMakeLists.txt
A libclc/clc/lib/amdgcn/CMakeLists.txt
R libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgpu/CMakeLists.txt
R libclc/clc/lib/amdgpu/SOURCES
A libclc/clc/lib/clspv/CMakeLists.txt
R libclc/clc/lib/clspv/SOURCES
A libclc/clc/lib/generic/CMakeLists.txt
R libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/ptx-nvidiacl/CMakeLists.txt
R libclc/clc/lib/ptx-nvidiacl/SOURCES
A libclc/clc/lib/spirv/CMakeLists.txt
R libclc/clc/lib/spirv/SOURCES
M libclc/cmake/modules/AddLibclc.cmake
A libclc/opencl/lib/amdgcn/CMakeLists.txt
R libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/clspv/CMakeLists.txt
R libclc/opencl/lib/clspv/SOURCES
A libclc/opencl/lib/generic/CMakeLists.txt
R libclc/opencl/lib/generic/SOURCES
A libclc/opencl/lib/spirv/CMakeLists.txt
R libclc/opencl/lib/spirv/SOURCES
Log Message:
-----------
[libclc] Use custom CMake handling to overhaul libclc compilation (#185247)
Summary:
This PR uses https://github.com/llvm/llvm-project/pull/185243 to
overhaul compilation of libclc. This brings libclc to the same kind of
compilation flow that the other GPU libraries use (compiler-rt, libc,
libc++, openmp, flang-rt).
The main brunt of this change is simply changing the SOURCES files to
CMake variables and altering the compilation. Now that these are
standard CMake libraries we do not need to bother redefining custom
library handling and targets.
This builds as a static library, which we then consume with `llvm-link`
which converts it into a single `.bc` bitcode file similarly to before.
The final result is then optimized all together.
Hopefully this doesn't break anything.
Commit: faa1ccce18001d180fd2402f688b91311dbc7e9a
https://github.com/llvm/llvm-project/commit/faa1ccce18001d180fd2402f688b91311dbc7e9a
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/Basic/riscv_vector.td
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4us_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4us_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4us_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4us_vx.c
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvdot4a8i.td
M llvm/test/CodeGen/RISCV/rvv/vdota4.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4su.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4u.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4us.ll
Log Message:
-----------
[RISCV][llvm] Use [u]int32 vector for input arguments for zvdot4a8i (#184089)
intrinsic spec PR:
https://github.com/riscv-non-isa/rvv-intrinsic-doc/pull/422
Commit: 8b0a9d081f203517bae40dcdcceba7f5f7a2c651
https://github.com/llvm/llvm-project/commit/8b0a9d081f203517bae40dcdcceba7f5f7a2c651
Author: Fangrui Song <i at maskray.me>
Date: 2026-03-08 (Sun, 08 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86InstrAVX10.td
A llvm/test/MC/X86/Relocations/avx10.2satcvt.s
Log Message:
-----------
[X86] Fix wrong RIP-relative relocations for AVX10.2 saturation conversions (#185254)
AVX10.2 saturation conversion instructions (VCVT{T}{BF16,PH,PS}2I{U}BS)
incorrectly inherited from AVX512{PS,XD,PD}Ii8Base, which sets
ImmT=Imm8. This caused X86MCCodeEmitter to account for a nonexistent
trailing immediate byte when computing RIP-relative displacement fixups,
producing an addend of -5 instead of the correct -4.
Replace AVX512PSIi8Base/AVX512XDIi8Base/AVX512PDIi8Base with just the
needed prefix classes (PS is default, XD, PD), dropping the bogus
ImmT=Imm8. Preserve the original ExeDomain values (SSEPackedSingle,
SSEPackedDouble, SSEPackedInt; verified with `llvm-tblgen
--print-records ./llvm/lib/Target/X86/X86.td -I./llvm/include/
-I./llvm/lib/Target/X86/`). ExeDomain is not covered by any test.
Fix https://github.com/llvm/llvm-project/issues/184251
Commit: 04dbbd414f542d02cb0eaee79fe8a4f2e32d18bf
https://github.com/llvm/llvm-project/commit/04dbbd414f542d02cb0eaee79fe8a4f2e32d18bf
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M llvm/include/llvm/Debuginfod/Debuginfod.h
R llvm/include/llvm/Debuginfod/HTTPClient.h
R llvm/include/llvm/Debuginfod/HTTPServer.h
A llvm/include/llvm/Support/HTTP/HTTPClient.h
A llvm/include/llvm/Support/HTTP/HTTPServer.h
M llvm/lib/Debuginfod/CMakeLists.txt
M llvm/lib/Debuginfod/Debuginfod.cpp
R llvm/lib/Debuginfod/HTTPClient.cpp
R llvm/lib/Debuginfod/HTTPServer.cpp
M llvm/lib/Support/CMakeLists.txt
A llvm/lib/Support/HTTP/CMakeLists.txt
A llvm/lib/Support/HTTP/HTTPClient.cpp
A llvm/lib/Support/HTTP/HTTPServer.cpp
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp
M llvm/tools/llvm-debuginfod/llvm-debuginfod.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
M llvm/unittests/Debuginfod/CMakeLists.txt
M llvm/unittests/Debuginfod/DebuginfodTests.cpp
R llvm/unittests/Debuginfod/HTTPServerTests.cpp
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/HTTP/CMakeLists.txt
A llvm/unittests/Support/HTTP/HTTPServerTests.cpp
Log Message:
-----------
[Support] Move HTTP client/server to new LLVMSupportHTTP lib (NFC) (#184572)
Relocate HTTPClient and HTTPServer from the Debuginfod library to
llvm/Support/HTTP so they can be reused by other components.
---------
Co-authored-by: Alexandre Ganea <aganea at havenstudios.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 5b60283506928f6bae79545b2d8a7a979d7b39b6
https://github.com/llvm/llvm-project/commit/5b60283506928f6bae79545b2d8a7a979d7b39b6
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
A llvm/test/Analysis/CostModel/RISCV/extract-last-active.ll
Log Message:
-----------
[RISCV][TTI] Implement cost of llvm.experimental.vector.extract.last.active (#184067)
This patch implements the cost of
llvm.experimental.vector.extract.last.active which will lower to:
vcpop.m a0, v0
beqz a0, exit # Return passthru when the entire lane is inactive.
vid v10, v0.t
vredmaxu.vs v10, v10, v10
vmv.v.s a0, v10
zext.b a0, a0
vslidedown v8, v8,
This patch also helps conditional-scalar-assignment (CSA) works for
scalable vector.
Commit: 443ce5569ee9854cfef1139cf6b9cf05165e0902
https://github.com/llvm/llvm-project/commit/443ce5569ee9854cfef1139cf6b9cf05165e0902
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/CMakeLists.txt
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
M llvm/lib/Target/X86/X86InstrMMX.td
M llvm/lib/Target/X86/X86InstrRAOINT.td
M llvm/lib/Target/X86/X86InstrTSX.td
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.h
Log Message:
-----------
[X86] TableGen-erate SDNode descriptions (#168421)
This allows SDNodes to be validated against their expected type profiles
and reduces the number of changes required to add a new node.
The first commit contains the main change. There are few nodes that
don't have SDNode records in `*.td` files (see the enum in
`X86SelectionDAGInfo.h`) and several nodes fail verification (see
`X86SelectionDAGInfo::verifyTargetNode`).
The second commit fixes a few bugs in the generic SelectionDAG code that
were detected by the verification functionality.
The third comment moves comments from `X86ISelLowering.h` to `*.td`
files. This is done as separate commit to hopefully simplify the review.
I allowed myself to rearrange some node definitions because they had
block comments in `X86ISelLowering.h`.
Part of #119709.
Pull Request: https://github.com/llvm/llvm-project/pull/168421
Commit: 3ea93369d139b6e9d045549ceab6a87173a9e583
https://github.com/llvm/llvm-project/commit/3ea93369d139b6e9d045549ceab6a87173a9e583
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/test/Sema/attr-overflow-behavior-constexpr.cpp
M clang/test/Sema/attr-overflow-behavior-templates.cpp
M clang/test/Sema/attr-overflow-behavior.c
M clang/test/Sema/attr-overflow-behavior.cpp
Log Message:
-----------
[clang][bytecode] Fix new overflow behavior tests (#183761)
Commit: b9499954205e25038accc94eea23965a23eed86a
https://github.com/llvm/llvm-project/commit/b9499954205e25038accc94eea23965a23eed86a
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Remove suspicious usage of local variable (#185360)
There's already already an if statement before ensuring that
UseFieldDesc is false.
Commit: 0dad68438dc68b9c97b220c1f1647ccdbc6ffff5
https://github.com/llvm/llvm-project/commit/0dad68438dc68b9c97b220c1f1647ccdbc6ffff5
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
Log Message:
-----------
[SPIRV] In G_SELECT selection path: replace `removeFromParent` with `eraseFromParent` and return early (#184807)
When selecting an `ASSIGN_TYPE` of a `G_SELECT`, both instructions were
removed but not erased.
The code followed on a code path where the replaced G_SELECT would be
added to a remove set if it was dead. But the select is not in the
function anymore since it is already removed!
Selecting a `selectSelect` always returns `true`. So the
assertions/prints below would have never been triggered.
This patch simplifies this code path to avoid falling through the
asserts and paths where `selectSelect` could have failed (which
trivially doesn't happen).
Guarded `selectSelect` return with an assert in case it changes.
Follow up of https://github.com/llvm/llvm-project/pull/182330
Commit: c6a14cba5ea172a0252b82529a96f008a207edcf
https://github.com/llvm/llvm-project/commit/c6a14cba5ea172a0252b82529a96f008a207edcf
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A libclc/clc/include/clc/subgroup/clc_sub_group_reduce.h
A libclc/clc/include/clc/subgroup/clc_sub_group_reduce.inc
M libclc/clc/lib/amdgcn/CMakeLists.txt
A libclc/clc/lib/amdgcn/subgroup/sub_group_reduce.cl
M libclc/opencl/lib/generic/CMakeLists.txt
A libclc/opencl/lib/generic/subgroup/sub_group_reduce.cl
A libclc/opencl/lib/generic/subgroup/sub_group_reduce.inc
Log Message:
-----------
libclc: Add sub_group_reduce_* functions (#185294)
Commit: 9d38926d51121c9820d22768bfb498cefc2857e0
https://github.com/llvm/llvm-project/commit/9d38926d51121c9820d22768bfb498cefc2857e0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgcn/synchronization/clc_work_group_barrier.cl
Log Message:
-----------
libclc: Fix logic for fence ordering based on mem flags (#185367)
Commit: 7c2599a491c26c3191c06e4902aea3db97eac0ce
https://github.com/llvm/llvm-project/commit/7c2599a491c26c3191c06e4902aea3db97eac0ce
Author: Marcell Leleszi <mleleszi at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/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/src/wctype/CMakeLists.txt
A libc/src/wctype/iswdigit.cpp
A libc/src/wctype/iswdigit.h
M libc/test/src/wctype/CMakeLists.txt
M libc/test/src/wctype/iswalpha_test.cpp
A libc/test/src/wctype/iswdigit_test.cpp
Log Message:
-----------
[libc][wctype] Implement public iswdigit (#181635)
https://github.com/llvm/llvm-project/issues/175003
Create public function and entrypoints for iswdigit and add UTF8 test to
iswalpha test. On CI there is no UTF8 build currently, so that test case
will only run locally, but
[wctype_utils_test.cpp](https://github.com/llvm/llvm-project/blob/main/libc/test/src/__support/wctype_utils_test.cpp)
is written in a way that both ASCII and UTF8 tests run regardless of the
build config.
Commit: d0a8fccfb226c62d9fd4d2bc2ce40a550579a014
https://github.com/llvm/llvm-project/commit/d0a8fccfb226c62d9fd4d2bc2ce40a550579a014
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M llvm/include/llvm/Debuginfod/Debuginfod.h
A llvm/include/llvm/Debuginfod/HTTPClient.h
A llvm/include/llvm/Debuginfod/HTTPServer.h
R llvm/include/llvm/Support/HTTP/HTTPClient.h
R llvm/include/llvm/Support/HTTP/HTTPServer.h
M llvm/lib/Debuginfod/CMakeLists.txt
M llvm/lib/Debuginfod/Debuginfod.cpp
A llvm/lib/Debuginfod/HTTPClient.cpp
A llvm/lib/Debuginfod/HTTPServer.cpp
M llvm/lib/Support/CMakeLists.txt
R llvm/lib/Support/HTTP/CMakeLists.txt
R llvm/lib/Support/HTTP/HTTPClient.cpp
R llvm/lib/Support/HTTP/HTTPServer.cpp
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp
M llvm/tools/llvm-debuginfod/llvm-debuginfod.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
M llvm/unittests/Debuginfod/CMakeLists.txt
M llvm/unittests/Debuginfod/DebuginfodTests.cpp
A llvm/unittests/Debuginfod/HTTPServerTests.cpp
M llvm/unittests/Support/CMakeLists.txt
R llvm/unittests/Support/HTTP/CMakeLists.txt
R llvm/unittests/Support/HTTP/HTTPServerTests.cpp
Log Message:
-----------
Revert "[Support] Move HTTP client/server to new LLVMSupportHTTP lib (NFC)" (#185372)
Reverts llvm/llvm-project#184572
Breaks many buildbots.
Commit: 78ab6026b65eba71c25c539f7b59977065ea8ea7
https://github.com/llvm/llvm-project/commit/78ab6026b65eba71c25c539f7b59977065ea8ea7
Author: Luke Lau <luke at igalia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
R llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
R llvm/test/CodeGen/RISCV/intrinsic-cttz-elts.ll
A llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-elts.ll
Log Message:
-----------
[RISCV] Move llvm.experimental.cttz.elts tests to rvv folder. NFC (#185371)
This brings it inline with other intrinsics that require rvv
Commit: 4879f1612b0bacf33ee84f679dd5ded7ca70d08e
https://github.com/llvm/llvm-project/commit/4879f1612b0bacf33ee84f679dd5ded7ca70d08e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/memberpointers.cpp
Log Message:
-----------
[clang][bytecode] Check memberpointer exprs for errors (#185370)
Commit: 2b811f4a5dff3f03ae5b8d7c991bcb176cbaec17
https://github.com/llvm/llvm-project/commit/2b811f4a5dff3f03ae5b8d7c991bcb176cbaec17
Author: Shivam Kunwar <75530356+phyBrackets at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
A clang/test/DebugInfo/CXX/debug-info-constexpr-array.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
A llvm/test/DebugInfo/X86/debug-info-constexpr-array.ll
Log Message:
-----------
Reland "[DebugInfo] Emit DW_AT_const_value for constexpr array static members" (#184804)
Use `getElementAsAPInt(`) to read array elements and emit via
`addIntAsBlock()` which handles target endianness correctly, instead of
`getRawDataValues()` which exposes host endianness. This fixes test
failures on big-endian hosts cross-compiling for little-endian targets.
Reland of #182442 with endianness fix.
Commit: 00efc1e5a03142c50819e37d5e2574fc7215fa44
https://github.com/llvm/llvm-project/commit/00efc1e5a03142c50819e37d5e2574fc7215fa44
Author: AndiB <sudofortune1 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Log Message:
-----------
[NFC] Fix spelling mistakes in emitted string replacing word anaylsis with analysis (#185233)
llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp had spelling mistake in error
message string.
This PR fixes the spelling mistake and replaces 'anaylsis' with
'analysis'
Commit: 05781f40170d8ab1add63a49fc00fbfd8f70a062
https://github.com/llvm/llvm-project/commit/05781f40170d8ab1add63a49fc00fbfd8f70a062
Author: Frank Schlimbach <frank.schlimbach at intel.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Bufferization/Extensions/ShardingExtensions.cpp
M mlir/lib/Dialect/Shard/Transforms/ShardingPropagation.cpp
M mlir/test/Dialect/Shard/sharding-propagation-failed.mlir
Log Message:
-----------
[mlir][shard] Small fixes to partition pass (#185050)
- Empty functions (with no blocks) should are skipped by partition pass,
blocks with more than one continue to get error-flagged
- fixed ShardingInterfaceImpl of bufferization.materialize_in_destination
Commit: bdde26285f6a2fe1bcb54b1bb26d6772088b9472
https://github.com/llvm/llvm-project/commit/bdde26285f6a2fe1bcb54b1bb26d6772088b9472
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A libclc/clc/include/clc/collective/clc_work_group_reduce.h
A libclc/clc/include/clc/collective/clc_work_group_reduce.inc
M libclc/clc/lib/generic/CMakeLists.txt
A libclc/clc/lib/generic/collective/clc_work_group_reduce.cl
A libclc/clc/lib/generic/collective/clc_work_group_reduce.inc
M libclc/opencl/lib/generic/CMakeLists.txt
A libclc/opencl/lib/generic/collective/work_group_reduce.cl
A libclc/opencl/lib/generic/collective/work_group_reduce.inc
Log Message:
-----------
libclc: Add work_group_reduce_* functions (#185368)
Commit: a1866b861732de3b324b46e993783cd2a2c1cf49
https://github.com/llvm/llvm-project/commit/a1866b861732de3b324b46e993783cd2a2c1cf49
Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[mlir][llvm] Make name optional for DIBasicTypeAttr and DIStringTypeAttr (#185284)
The name field of DICompositeTypeAttr was already optional, but
DIBasicTypeAttr and DIStringTypeAttr were not handled consistently. Make
the name parameter of both an OptionalParameter to support LLVM debug
info nodes with no name. Update DebugImporter to use getStringAttrOrNull
when translating the name of these types. Add tests for the null-name
cases in the import and export test files.
Commit: 0d32195c9f98ec27b3f6d958ed7916584e05caa2
https://github.com/llvm/llvm-project/commit/0d32195c9f98ec27b3f6d958ed7916584e05caa2
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb][test][NFC] PlatformDarwinTest.cpp: fix directory creation comment
To be consistent with the other comments in the same test.
Commit: d840396e20b09244ac3defcc1f2946102e29f030
https://github.com/llvm/llvm-project/commit/d840396e20b09244ac3defcc1f2946102e29f030
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/CGCall.cpp
M clang/test/CodeGenCUDA/convergent.cu
M clang/test/CodeGenCUDA/incomplete-func-ptr-type.cu
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenHIP/hip_weak_alias.cpp
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
M clang/test/CodeGenOpenCL/convergent.cl
Log Message:
-----------
clang: Simplify emission of uniform-work-group-size attribute (#185066)
Commit: 38d4509caa6536f184ccc9dd29721133b7c2a810
https://github.com/llvm/llvm-project/commit/38d4509caa6536f184ccc9dd29721133b7c2a810
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn-codegen.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
Log Message:
-----------
AMDGPU: Fix selection failure on fast vector rootn (#185035)
This was emitting the raw rcp intrinsic, which will fail for any
vector type. This is an afn context anyway, so just emit fdiv
which will select to rcp but also will undergo type legalization.
Commit: 6bf37b070e75b77b1df0930ce3ffa0c1c6700f60
https://github.com/llvm/llvm-project/commit/6bf37b070e75b77b1df0930ce3ffa0c1c6700f60
Author: Karlo Basioli <basioli at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
Fix bazel build after #168421 (#185387)
Commit: 0da00c325bd884225d85387ec934d807bcff8777
https://github.com/llvm/llvm-project/commit/0da00c325bd884225d85387ec934d807bcff8777
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
Log Message:
-----------
[LV] Support float and pointer FindLast reductions (#184101)
This duplicates #182313 with some very small modifications on top, as
@dheaton-arm is unable
to finish the PR and I'm unable to push to his branch.
Expands support for the `FindLast` Reccurence Kind to floating-point and
pointer types, thereby
enabling conditional scalar assignment (CSA) for these types.
Originally authored by @dheaton-arm
---------
Co-authored-by: Damian Heaton <Damian.Heaton at arm.com>
Commit: 0be62be1d4c3b63e006678cda007d5edf78ae012
https://github.com/llvm/llvm-project/commit/0be62be1d4c3b63e006678cda007d5edf78ae012
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/test/Lower/Intrinsics/date_and_time.f90
M flang/test/Lower/Intrinsics/dconjg.f90
M flang/test/Lower/Intrinsics/dim.f90
M flang/test/Lower/Intrinsics/dimag.f90
M flang/test/Lower/Intrinsics/dprod.f90
Log Message:
-----------
[flang][NFC] Converted five tests from old lowering to new lowering (part 27) (#185340)
Tests converted from test/Lower/Intrinsics: date_and_time.f90,
dconjg.f90, dim.f90, dimag.f90, dprod.f90
Commit: c73bd3e73450aa1682841c239d13d5bedf5e57e2
https://github.com/llvm/llvm-project/commit/c73bd3e73450aa1682841c239d13d5bedf5e57e2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libclc/CMakeLists.txt
Log Message:
-----------
libclc: Remove old mesa amdgcn targets (#185385)
amdgcn-- was probably dead when clover was being maintained, since
it switched to using amdgcn-mesa-mesa3d. Also remove amdgcn-mesa-mesa3d,
since clover is no longer in mesa.
Commit: 5d52d2f01602fd72cf88f3f083b981cd4e98b84f
https://github.com/llvm/llvm-project/commit/5d52d2f01602fd72cf88f3f083b981cd4e98b84f
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A clang/include/clang/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/Analysis/Scalable/SSAFBuiltinForceLinker.h
A clang/include/clang/Analysis/Scalable/SSAFForceLinker.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h
M clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/Analysis/Scalable/CMakeLists.txt
A clang/lib/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/test/Analysis/SSAF/command-line-interface.cpp
A clang/test/Analysis/SSAF/downgradable-errors.cpp
A clang/test/Analysis/SSAF/help.cpp
M clang/unittests/Analysis/Scalable/CMakeLists.txt
A clang/unittests/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/Analysis/Scalable/Registries/FancyAnalysisData.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
M clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/Analysis/Scalable/SSAFBuiltinTestForceLinker.h
A clang/unittests/Analysis/Scalable/SSAFTestForceLinker.h
M clang/unittests/Analysis/Scalable/TestFixture.cpp
Log Message:
-----------
[clang][ssaf] Add --ssaf-extract-summaries= and --ssaf-tu-summary-file= options (#184421)
Along the way, it also fixes the static registration of the builtin
(upstream) formats and extractors.
Commit: 1e7300fddcc6fa5e40fb770cb9a88e4f8c1f694d
https://github.com/llvm/llvm-project/commit/1e7300fddcc6fa5e40fb770cb9a88e4f8c1f694d
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
Log Message:
-----------
[PPC64][Linux] Watchpoint configuration for PPC64 (#185192)
On PPC64, SIGTRAP is delivered before the triggering instruction
completes. The previous implementation wrongly assumed that the
instruction gets executed and due to that qHostInfo has the wrong info,
causing the SingleStep being avoided on Linux for PPC64, and the
execution being stuck at the store instruction.
This patch corrects this, making watchpoint work.
Commit: 83732a29040ca920656b64ca8190a00111a48d1c
https://github.com/llvm/llvm-project/commit/83732a29040ca920656b64ca8190a00111a48d1c
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
R clang/include/clang/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.h
R clang/include/clang/Analysis/Scalable/SSAFBuiltinForceLinker.h
R clang/include/clang/Analysis/Scalable/SSAFForceLinker.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h
M clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/Analysis/Scalable/CMakeLists.txt
R clang/lib/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
R clang/test/Analysis/SSAF/command-line-interface.cpp
R clang/test/Analysis/SSAF/downgradable-errors.cpp
R clang/test/Analysis/SSAF/help.cpp
M clang/unittests/Analysis/Scalable/CMakeLists.txt
R clang/unittests/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/Analysis/Scalable/Registries/FancyAnalysisData.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
M clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
R clang/unittests/Analysis/Scalable/SSAFBuiltinTestForceLinker.h
R clang/unittests/Analysis/Scalable/SSAFTestForceLinker.h
M clang/unittests/Analysis/Scalable/TestFixture.cpp
Log Message:
-----------
Revert "[clang][ssaf] Add --ssaf-extract-summaries= and --ssaf-tu-summary-file= options" (#185391)
Reverts llvm/llvm-project#184421
Broke build bot:
https://lab.llvm.org/buildbot/#/builders/204/builds/38459/steps/7/logs/stdio
```
[7440/8486] Linking CXX shared library lib/libclangAnalysisScalable.so.23.0git
FAILED: lib/libclangAnalysisScalable.so.23.0git
: && /usr/bin/c++ -fPIC -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-array-bounds -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -O3 -DNDEBUG -Wl,-z,defs -Wl,-z,nodelete -Wl,-rpath-link,/home/botworker/bbot/amdgpu-offload-rhel-8-cmake-build-only/build/./lib -Wl,--gc-sections -shared -Wl,-soname,libclangAnalysisScalable.so.23.0git -o lib/libclangAnalysisScalable.so.23.0git tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/ASTEntityMapping.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/EntityLinker/EntityLinker.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Frontend/TUSummaryExtractorFrontendAction.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Model/BuildNamespace.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Model/EntityId.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Model/EntityIdTable.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Model/EntityLinkage.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Model/EntityName.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Model/SummaryName.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Serialization/JSONFormat/JSONFormatImpl.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Serialization/JSONFormat/LUSummary.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Serialization/JSONFormat/LUSummaryEncoding.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Serialization/JSONFormat/TUSummary.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Serialization/JSONFormat/TUSummaryEncoding.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Serialization/SerializationFormatRegistry.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Support/ErrorBuilder.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/TUSummary/ExtractorRegistry.cpp.o tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/TUSummary/TUSummaryBuilder.cpp.o -Wl,-rpath,"\$ORIGIN/../lib:/home/botworker/bbot/amdgpu-offload-rhel-8-cmake-build-only/build/lib:" lib/libclangIndex.so.23.0git lib/libclangFrontend.so.23.0git lib/libclangASTMatchers.so.23.0git lib/libclangAST.so.23.0git lib/libclangLex.so.23.0git lib/libclangBasic.so.23.0git lib/libLLVMSupport.so.23.0git -Wl,-rpath-link,/home/botworker/bbot/amdgpu-offload-rhel-8-cmake-build-only/build/lib && :
tools/clang/lib/Analysis/Scalable/CMakeFiles/obj.clangAnalysisScalable.dir/Frontend/TUSummaryExtractorFrontendAction.cpp.o:(.data.rel.ro._ZTVN12_GLOBAL__N_115TUSummaryRunnerE+0xc0): undefined reference to `clang::SemaConsumer::anchor()'
collect2: error: ld returned 1 exit status
```
Commit: 3e3c3ab6837c213e4137bd2cd4441d1b5d1ca590
https://github.com/llvm/llvm-project/commit/3e3c3ab6837c213e4137bd2cd4441d1b5d1ca590
Author: Alex Duran <alejandro.duran at intel.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp
Log Message:
-----------
[llvm][tools] Improve llvm-gpu-loader checks (#184791)
When devices are not properly initialized llvm-gpu-loader follows corrupt pointers which
result in hard to debug crashes.
This improves the checks to avoid such situations.
Commit: 47e31088f3ac829060b653afef2272d0b220f3bd
https://github.com/llvm/llvm-project/commit/47e31088f3ac829060b653afef2272d0b220f3bd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/test/CodeGen/amdgpu-abi-version.c
M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
A clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
M clang/test/Headers/gpuintrin.c
Log Message:
-----------
clang/AMDGPU: Fix workgroup size builtins for nonuniform work group sizes (#185098)
These were assuming uniform work group sizes. Emit the v4 and v5
sequences to take the remainder group for the nonuniform case.
Currently the device libs uses this builtin on the legacy ABI path with
the same sequence to calculate the remainder, and fully implements the
v5 path. If you perform a franken-build of the library with the updated
builtin, the result is worse. The duplicate sequence does not fully fold out.
However, it does not appear to be wrong. The relevant conformance tests still
pass.
Commit: 57edc20b1e1b7f346ad913b0b979c05d2594b20e
https://github.com/llvm/llvm-project/commit/57edc20b1e1b7f346ad913b0b979c05d2594b20e
Author: Balaji Krishna Yugandhar Atukuri <balaji.k.atukuri at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp
Log Message:
-----------
[NVPTX][NFC] Fix TODO comment style in NVPTXMCAsmInfo.cpp (#185332)
Replace `@TODO` with `TODO` to follow LLVM comment conventions.
This is an NFC change — no functional impact.
Commit: 4994bcef135647303a747807d574ef1905d5c19e
https://github.com/llvm/llvm-project/commit/4994bcef135647303a747807d574ef1905d5c19e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
Log Message:
-----------
Fix MSVC "not all control paths return a value" warning. NFC. (#185388)
Commit: 56fe9097fc83106db2ebfaade93e41a6aefda425
https://github.com/llvm/llvm-project/commit/56fe9097fc83106db2ebfaade93e41a6aefda425
Author: Amila Senadheera <amila.15 at cse.mrt.ac.lk>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/examples/Kaleidoscope/Chapter3/toy.cpp
Log Message:
-----------
kaleidoscope: add missing check in the FunctionAST::codegen (#76322)
kaleidoscope chapter 03 explanation has this function redefine check,
but it was missing in the code sample.
Signed-off-by: amila <amila.15 at cse.mrt.ac.lk>
Commit: 9f3d9f488450de561176f3adfab5bb9ee1bf5f08
https://github.com/llvm/llvm-project/commit/9f3d9f488450de561176f3adfab5bb9ee1bf5f08
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
Log Message:
-----------
[clang][bytecode][NFC] Name all expressions E (#185379)
At least the ones we visit directly via the visitor. This was always the
case, except for BinaryOperator and CastExpr.
Commit: c54cb1b81482b7edf1a2d8a78188642a5aacb0de
https://github.com/llvm/llvm-project/commit/c54cb1b81482b7edf1a2d8a78188642a5aacb0de
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/test/Dialect/Linalg/named-ops-fail.mlir
M mlir/test/Dialect/Linalg/named-ops.mlir
Log Message:
-----------
[mlir][linalg] Emit proper diagnostic instead of crashing in SelectOp with index type (#183652)
`buildTernaryFn` for `TernaryFn::select` called `llvm_unreachable` when
the operand types were not `i1`, integer, or floating-point (e.g.,
`index` type).
Instead delegate this checking to the IR verifier: we don't need to
duplicate the checks from the verifier in an assertion here.
Fixes #179046
Assisted-by: Claude Code
Commit: 36de257076fd2bdaf90f2391bf5416ad149dc6e5
https://github.com/llvm/llvm-project/commit/36de257076fd2bdaf90f2391bf5416ad149dc6e5
Author: tudinhh <103348714+tudinhh at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/get_active_lane_mask.ll
Log Message:
-----------
[InstCombine] Handle fixed-width results in get_active_lane_mask fold (#185317)
The optimization introduced in #183329 incorrectly assumed that any
extraction from a scalable active lane mask used a scalable index. When
the result of a `llvm.vector.extract` is a fixed-width vector, the index
should not be multiplied by vscale.
This PR adds a check to ensure the index is only scaled by VScaleMin
when the return type of the extraction is a scalable vector, not
fixed-width.
Fixes #185271
Commit: 3833551b1ed915a0545d34713b4a49938a4e48ae
https://github.com/llvm/llvm-project/commit/3833551b1ed915a0545d34713b4a49938a4e48ae
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
A mlir/test/Conversion/GPUCommon/lower-launch-func-bare-ptr-invalid.mlir
Log Message:
-----------
[mlir][gpu] Fix crash in gpu-to-llvm with unranked memref and bare-ptr calling convention (#185062)
When using `--gpu-to-llvm` with `use-bare-pointers-for-kernels=true` and
a `gpu.launch_func` whose kernel has an `UnrankedMemRefType` argument,
`LLVMTypeConverter::promoteOperands` would hit an `llvm_unreachable`
because unranked memrefs are not supported with the bare-pointer calling
convention.
Fix this by checking for unranked memref kernel arguments before calling
`promoteOperands` and returning a proper conversion failure with a
diagnostic instead of crashing.
Fixes #184939
Assisted-by: Claude Code
Commit: 6aa7538a39975fb4b12edb32d058a631646ff053
https://github.com/llvm/llvm-project/commit/6aa7538a39975fb4b12edb32d058a631646ff053
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
Log Message:
-----------
[LLVM][AArch64] Allow vector converts to run in streaming mode with … (#177375)
…FPRCVT
Vector Saturated converts fp->int and converts int->fp are now allowed
to run in streaming mode when FEAT_FPRCVT feature is available.
Therefore the patch replaces HasNEONandIsSME2p2StreamingSafe by
HasNEONandIsFPRCVTStreamingSafe following the latest update in [1] for
the Vector CVT instructions.
It also allows the ISD Node FP_TO_SINT_SAT to do custom lowering instead
of expand when it is a fixed lengh data type, because it can use the
Vector CVT instructions. I believe this is correct because there is
always a compatible CVT instruction for the SME core.
Because now the compiler allows the fixed length CVT to run in streaming
mode, I needed to fix the function LowerVectorFP_TO_INT_SAT, the FRINT
instruction were creating a ilegal size for CVT instructions that was
not able to lower to a CVT instruction.
co-author:Amina Chabane<amina.chabane at arm.com>
[1] https://developer.arm.com/documentation/ddi0602/2025-09
Commit: 9e883b4410415f6c544a8292bba22f350be9908a
https://github.com/llvm/llvm-project/commit/9e883b4410415f6c544a8292bba22f350be9908a
Author: Fady Farag <com.webkit.iidmsa at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/test/Lexer/cxx20-module-directive.cpp
Log Message:
-----------
[clang][test] Add missing FileCheck pipe in cxx20-module-directive.cpp (#185315)
The test had CHECK directives that were never executed because the RUN
line did not pipe output to FileCheck.
Commit: ff232d67b534f41617effa20abdab0933fe127c6
https://github.com/llvm/llvm-project/commit/ff232d67b534f41617effa20abdab0933fe127c6
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/utility
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables-mathheader.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index-includestyle.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-string-concatenation-strict.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/no-automatic-move-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/type-promotion-in-math-fn-includestyle.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-includestyle.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
Log Message:
-----------
[clang-tidy][NFC] Add missing Option tests in cppcoreguidelines and performance [3/N] (#185210)
This PR adds testcases for untested Options in `cppcoreguidelines` and
`performance` modules for better test coverage, specifically:
- `cppcoreguidelines-init-variables`: `IncludeStyle`, `MathHeader`.
- `cppcoreguidelines-pro-bounds-constant-array-index`: `IncludeStyle`.
- `performance-inefficient-string-concatenation`: `StrictMode`.
- `performance-no-automatic-move`: `AllowedTypes`.
- `performance-type-promotion-in-math-fn`: `IncludeStyle`.
- `performance-unnecessary-value-param`: `IncludeStyle`.
As of AI Usage: Assisted by Gemini 3 and Claude (Writing part of the
testcases and pre-commit reviewing).
Commit: 6b0421426e083a915350fc9d3a2edc75621b0799
https://github.com/llvm/llvm-project/commit/6b0421426e083a915350fc9d3a2edc75621b0799
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
Log Message:
-----------
[flang][OpenMP] Import ExecutionPartIterator et al into semantics::om… (#185288)
…p, NFC
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: 61a58cfa5c9aafc70f5e2faecc334c9b4373d89f
https://github.com/llvm/llvm-project/commit/61a58cfa5c9aafc70f5e2faecc334c9b4373d89f
Author: LeeYoungJoon <dog3hk.dev at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
M clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp
R clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
R clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
M clang-tools-extra/docs/clang-tidy/checks/hicpp/ignored-remove-result.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
Log Message:
-----------
[clang-tidy] Redirect hicpp-ignored-remove-result to bugprone-unused-return-value (#184547)
Part of the work in https://github.com/llvm/llvm-project/issues/183462.
Closes https://github.com/llvm/llvm-project/issues/183518.
Commit: 0a51a757cf6dcb6c60e60045dbca34fef0c981f8
https://github.com/llvm/llvm-project/commit/0a51a757cf6dcb6c60e60045dbca34fef0c981f8
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/lib/Parser/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Remember original range in ExecutionPartIterator (#185290)
Storing the original range (instead of just the "remaining part") will
allow the iterator component to be reused.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: 70e49d87b0fe9b139e6976a48379810dc22ab567
https://github.com/llvm/llvm-project/commit/70e49d87b0fe9b139e6976a48379810dc22ab567
Author: Hussam Alhassan <hsm.link at proton.me>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
Log Message:
-----------
[NFC][AArch64] Improve semantics of findSuitableCompare in ConditionOptimizer (#183532)
Improve the semantics of the "findSuitableCompare" method and improve
logic sharing between the cross- and intra-block paths.
Add the "getBccTerminator" helper and rename the above function to
"findAdjustableCmp" which now takes a conditional instruction and
returns its controlling compare.
Commit: c51afe63e14f5fab7656de8b5750feab86ec8f2f
https://github.com/llvm/llvm-project/commit/c51afe63e14f5fab7656de8b5750feab86ec8f2f
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Move two functions to openmp-utils.cpp, NFC (#185291)
Move `IsLoopTransforming` and `IsFullUnroll` from check-omp-loop.cpp to
openmp-utils.cpp.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: 914df0e7469feb0369552a2d17a05f2e8b52fc56
https://github.com/llvm/llvm-project/commit/914df0e7469feb0369552a2d17a05f2e8b52fc56
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-pow2.ll
Log Message:
-----------
[X86] known-pow2.ll - add srl vector test for #182562 (#185405)
Commit: 6add4bf5f3064ad42de3ba5ed24b31a71a18d16e
https://github.com/llvm/llvm-project/commit/6add4bf5f3064ad42de3ba5ed24b31a71a18d16e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libclc/opencl/lib/spirv/CMakeLists.txt
Log Message:
-----------
[libclc] Copy old SOURCES list exactly to new format
Summary:
Things got shuffled around, some sources got added. This should
hopefully resolve some issues seen after landing https://github.com/llvm/llvm-project/pull/185247
Commit: 1f84bdeac2dfb2c9ac4eef586ee154438facaebc
https://github.com/llvm/llvm-project/commit/1f84bdeac2dfb2c9ac4eef586ee154438facaebc
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M bolt/test/max-funcs.test
Log Message:
-----------
[BOLT] Fix test with -DCLANG_DEFAULT_PIE_ON_LINUX=OFF (#185047)
Use `%cxxflags`, so that `-fPIE -pie` get passed in order to ensure the
test behavior is the same regardless of cmake configuration. We do
similar in many other BOLT tests.
Commit: ecb1e829db225e8ebdda3d77d1d9a97db365af8f
https://github.com/llvm/llvm-project/commit/ecb1e829db225e8ebdda3d77d1d9a97db365af8f
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A clang/include/clang/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/Analysis/Scalable/SSAFBuiltinForceLinker.h
A clang/include/clang/Analysis/Scalable/SSAFForceLinker.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h
M clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/Analysis/Scalable/CMakeLists.txt
A clang/lib/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/test/Analysis/SSAF/command-line-interface.cpp
A clang/test/Analysis/SSAF/downgradable-errors.cpp
A clang/test/Analysis/SSAF/help.cpp
M clang/unittests/Analysis/Scalable/CMakeLists.txt
A clang/unittests/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/Analysis/Scalable/Registries/FancyAnalysisData.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
M clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/Analysis/Scalable/SSAFBuiltinTestForceLinker.h
A clang/unittests/Analysis/Scalable/SSAFTestForceLinker.h
M clang/unittests/Analysis/Scalable/TestFixture.cpp
Log Message:
-----------
Reapply "[clang][ssaf] Add --ssaf-extract-summaries= and --ssaf-tu-summary-file= options" (#185414)
Reapplies #185391, and links `clangSema` to `clangAnalysisScalable` for
the missing `clang::SemaConsumer::anchor()` symbol from
`TUSummaryExtractorFrontendAction.cpp`.
In static builds, this missing symbol wasn't an issue, but it is for
shared lib builds.
Commit: 32affedee40b64cd59b7678af607ba15d0d7e6cc
https://github.com/llvm/llvm-project/commit/32affedee40b64cd59b7678af607ba15d0d7e6cc
Author: Berke Ates <berke at ates.ch>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
M mlir/test/Dialect/LLVMIR/inlining.mlir
Log Message:
-----------
[MLIR][LLVMIR] Fix inline byval alloca hoisting out of allocation scope (#185399)
This PR fixes a bug of the LLVM dialect's function inlining, which
materializes allocas for byval arguments and moves them to the entry
block for optimization. This optimization should not cross allocation
scopes, as it leads to data races in parallel regions. See the example
below.
```mlir
// Optimize with mlir-opt --pass-pipeline="builtin.module(inline)" to trigger the inlining bug.
module {
// runner calls kernel(thread_idx, byval_struct, output)
// After inlining, the alloca for the byval struct gets placed in the outer
// region (shared by all threads) instead of inside the scf.forall body.
// This is a bug: each thread should have its own copy, but they all share
// the same alloca.
llvm.func hidden @runner(%arg0: !llvm.ptr {llvm.byval = !llvm.struct<(f32)>}, %arg1: !llvm.ptr) {
%c0 = arith.constant 0 : index
%c1024 = arith.constant 1024 : index
%c1 = arith.constant 1 : index
scf.forall (%i) = (%c0) to (%c1024) step (%c1) {
%idx = arith.index_cast %i : index to i64
llvm.call @kernel(%idx, %arg0, %arg1) : (i64, !llvm.ptr, !llvm.ptr) -> ()
}
llvm.return
}
// kernel uses the byval struct as writable thread-local scratch space:
// 1. Writes thread_id into the local copy
// 2. Reads it back and stores to output
// After buggy inlining, all threads share the same alloca, so thread A's
// store is overwritten by thread B before thread A reads it back.
// Expected: output[i] == float(i). Actual: non-deterministic.
llvm.func hidden @kernel(%arg0: i64, %arg1: !llvm.ptr {llvm.byval = !llvm.struct<(f32)>}, %arg2: !llvm.ptr) {
%thread_id_f32 = llvm.sitofp %arg0 : i64 to f32
// BUG: after inlining, %arg1 is a shared alloca, concurrent threads
// overwrite each other between the store and load below.
llvm.store %thread_id_f32, %arg1 : f32, !llvm.ptr
%val = llvm.load %arg1 : !llvm.ptr -> f32
%out_ptr = llvm.getelementptr inbounds %arg2[%arg0] : (!llvm.ptr, i64) -> !llvm.ptr, f32
llvm.store %val, %out_ptr : f32, !llvm.ptr
llvm.return
}
}
```
Commit: a572e9a00c757988406863a0023c09704488f17e
https://github.com/llvm/llvm-project/commit/a572e9a00c757988406863a0023c09704488f17e
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
R clang/docs/ScalableStaticAnalysisFramework/Framework.rst
R clang/docs/ScalableStaticAnalysisFramework/SummaryExtraction.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/SummaryExtractionInternals.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/index.rst
A clang/docs/ScalableStaticAnalysisFramework/index.rst
A clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/index.rst
Log Message:
-----------
[clang][ssaf][docs] Update SSAF docs (#184833)
Depend on #184421 (later reverted and reapplied in #185414)
Commit: 81bcf41861504797aa8347e070ce9b95c699b962
https://github.com/llvm/llvm-project/commit/81bcf41861504797aa8347e070ce9b95c699b962
Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
M flang/test/Fir/convert-nontemporal-to-llvm.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/polymorphic.fir
M flang/test/Fir/tbaa-codegen-records.fir
M flang/test/Fir/tbaa.fir
M flang/test/Integration/OpenMP/private-global.f90
M flang/test/Lower/OpenMP/delayed-privatization-allocatable-firstprivate.f90
Log Message:
-----------
[flang] Add setMemcpyAlignmentArgAttrs and use it for box-load memcpy (#185126)
Introduce `setMemcpyAlignmentArgAttrs` to set the LLVM alignment operand
attributes on a memcpy. The function is used when lowering `fir.load` of a box to
LLVM memcpy so the generated memcpy has correct align attributes on dst and src,
improving codegen and downstream optimizations.
Commit: d2c0937c5a8179eca45d9d6031ec459083346105
https://github.com/llvm/llvm-project/commit/d2c0937c5a8179eca45d9d6031ec459083346105
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
Log Message:
-----------
[AMDGPU] Make GCNHazardRecognizer "check" functions const. NFC. (#185416)
Commit: 3286c4c4f6e31a6728ff115800bec597aff0e7c9
https://github.com/llvm/llvm-project/commit/3286c4c4f6e31a6728ff115800bec597aff0e7c9
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_asm_sopp.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
M llvm/test/MC/AMDGPU/literals.s
Log Message:
-----------
[AMDGPU] Fix incorrect check prefixes in some MC tests (#185015)
Found using utils/filecheck_lint/filecheck_lint.py
Commit: 51a9052f1cc1c0c6120ea646239cbf3e5e21b0ed
https://github.com/llvm/llvm-project/commit/51a9052f1cc1c0c6120ea646239cbf3e5e21b0ed
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Extract select to min/max combining into separate function (NFC)
Commit: a5c28c5a7893c4fac3caac42db1e250125459fc3
https://github.com/llvm/llvm-project/commit/a5c28c5a7893c4fac3caac42db1e250125459fc3
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Refactor CountGeneratedNests, NFC (#185293)
Extract handling of individual constructs into a helper function. Change
the base count type to `int64_t` to match the type used in GetIntValue.
Rename the function to GetNumGeneratedNests.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: 9a1c63230b8ad3f19cb624f0d283f7df10957ab7
https://github.com/llvm/llvm-project/commit/9a1c63230b8ad3f19cb624f0d283f7df10957ab7
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
R clang/include/clang/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.h
R clang/include/clang/Analysis/Scalable/SSAFBuiltinForceLinker.h
R clang/include/clang/Analysis/Scalable/SSAFForceLinker.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h
M clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/Analysis/Scalable/CMakeLists.txt
R clang/lib/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
R clang/test/Analysis/SSAF/command-line-interface.cpp
R clang/test/Analysis/SSAF/downgradable-errors.cpp
R clang/test/Analysis/SSAF/help.cpp
M clang/unittests/Analysis/Scalable/CMakeLists.txt
R clang/unittests/Analysis/Scalable/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/Analysis/Scalable/Registries/FancyAnalysisData.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor1.cpp
M clang/unittests/Analysis/Scalable/Registries/MockSummaryExtractor2.cpp
M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
M clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
R clang/unittests/Analysis/Scalable/SSAFBuiltinTestForceLinker.h
R clang/unittests/Analysis/Scalable/SSAFTestForceLinker.h
M clang/unittests/Analysis/Scalable/TestFixture.cpp
Log Message:
-----------
Revert "Reapply "[clang][ssaf] Add --ssaf-extract-summaries= and --ssaf-tu-summary-file= options"" (#185429)
Reverts llvm/llvm-project#185414
This causes a layering violation:
```
.-> @@+_repo_rules+llvm-project//clang:frontend (2eb996bf0fff79a7e511505c102fb209134e52882857eedf358e55276d02d189)
| @@+_repo_rules+llvm-project//clang:static_analyzer_core_options (2eb996bf0fff79a7e511505c102fb209134e52882857eedf358e55276d02d189)
| @@+_repo_rules+llvm-project//clang:analysis (2eb996bf0fff79a7e511505c102fb209134e52882857eedf358e55276d02d189)
`-- @@+_repo_rules+llvm-project//clang:frontend (2eb996bf0fff79a7e511505c102fb209134e52882857eedf358e55276d02d189)
```
The reverted patch made `clang/Analysis` depend on `clang/FrontEnd`, and
`clang/FrontEnd` already (indirectly) depends on `clang/Analysis`.
Commit: fc863509e3afe19a3b24f70b31880708dc759b94
https://github.com/llvm/llvm-project/commit/fc863509e3afe19a3b24f70b31880708dc759b94
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp
Log Message:
-----------
[clang-tidy] Improve performance-use-std-move in presence of control-flow (#184136)
Commit: 0bf9bb5c42c625c513484bc6224a9fc85c7e25fb
https://github.com/llvm/llvm-project/commit/0bf9bb5c42c625c513484bc6224a9fc85c7e25fb
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
A flang/test/Transforms/omp-map-info-finalization-usm.fir
A offload/test/offloading/fortran/usm_derived_type_allocatable_member.f90
Log Message:
-----------
[Flang][OpenMP] Fix close map flag propagation for derived types in USM (#185330)
This fixes a bug in USM mode where the `close` map type modifer was
attached to some `map.info.op`'s corresponding to user-defined type
members while the parent type instance itself is not marked as `close`.
This fix ensures that if a parent record type map does not have the
'close' flag, it is cleared from its members as well, maintaining
consistency.
Gemini was used to create tests. AI generated test code was reviewed
line-by-line by me. Which were derived from a reproducer I was working
with to debug the issue.
Assisted-by: Gemini <gemini at google.com>
Commit: d15ca01d185aef3fefe0528c685358db9aec5264
https://github.com/llvm/llvm-project/commit/d15ca01d185aef3fefe0528c685358db9aec5264
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Plugins/LanguageRuntime/CPlusPlus/BUILD.gn
R llvm/utils/gn/secondary/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/BUILD.gn
Log Message:
-----------
[gn] port 58efc426d70 (de-plugin lldb ItaniumABI)
Commit: 0da2aecb01412588c571038d7c887674c291a08f
https://github.com/llvm/llvm-project/commit/0da2aecb01412588c571038d7c887674c291a08f
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
A llvm/test/Transforms/SLPVectorizer/non-power-of-2-bswap.ll
Log Message:
-----------
[SLP]Invalid cost for non-power-of-2 bswaps (#185407)
bswaps are supported only for power-of-2 types, need to disable it for
the default cost model to fix a compiler crash.
Fixes
https://github.com/llvm/llvm-project/pull/184018#issuecomment-4022697189
Commit: c3d040baf08481087cfaa2b06318a7f5a1dba3ad
https://github.com/llvm/llvm-project/commit/c3d040baf08481087cfaa2b06318a7f5a1dba3ad
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/bolt/unittests/Core/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
Log Message:
-----------
[gn] port 443ce5569ee9854c (X86 SDNodeInfo)
Commit: dcf2161098a5857be02de2f12b6a8c83fad54824
https://github.com/llvm/llvm-project/commit/dcf2161098a5857be02de2f12b6a8c83fad54824
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb][test] PlatformDarwinTest.cpp: move directory creation into SetUp
So it can be shared by future test-cases.
Drive-by change:
* Make the `TestParseVersionBuildDir` not depend on the test-fixture,
since it doesn't require any directory/debugger setup
Commit: ba1f3d1f746bbfd0df02e3c6c1390daef9267d86
https://github.com/llvm/llvm-project/commit/ba1f3d1f746bbfd0df02e3c6c1390daef9267d86
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb][test] PlatformDarwinTest.cpp: add more test-cases
Add various test-cases that exercise `LocateExecutableScriptingResourcesFromDSYM` further.
Commit: 8f668cec471355b1d04692f2483679dc1cb35990
https://github.com/llvm/llvm-project/commit/8f668cec471355b1d04692f2483679dc1cb35990
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-teams-reduction.mlir
Log Message:
-----------
[MLIR][OpenMP] Prevent teams reductions from deadlocking (#184625)
Currently, simple Fortran reductions like the example below cause a
deadlock at runtime:
```f90
integer :: i, x
!$omp teams distribute reduction(+:x)
do i=1, 10
x = x + 1
end do
```
Preventing a redundant barrier from being added in that case addresses
this issue. Synchronization is already being handled by the
`__kmpc_reduce` and `__kmpc_end_reduce` runtime calls for the host, and
by the OMPIRBuilder-generated `_omp_reduction_inter_warp_copy_func`
function for GPUs.
Commit: ce227964cc4de126c43f3458498ac70315809ce8
https://github.com/llvm/llvm-project/commit/ce227964cc4de126c43f3458498ac70315809ce8
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/TransformOps/XeGPUTransformOps.td
M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
M mlir/python/mlir/dialects/transform/xegpu.py
M mlir/test/Dialect/XeGPU/transform-ops.mlir
M mlir/test/python/dialects/transform_xegpu_ext.py
Log Message:
-----------
[mlir][xegpu] Add support for setting `order` in `SetDescLayoutOp` and `SetOpLayoutAttrOp` transform ops. (#184705)
Currently XeGPU transform dialect does not allow the user to set the
`order` attribute of a layout in `SetDescLayoutOp` and
`SetOpLayoutAttrOp`. This PR adds `order` as an optional argument to
these transform ops.
Commit: 2a9372ff021546a9b3310c2fb435a0cb4c6c744d
https://github.com/llvm/llvm-project/commit/2a9372ff021546a9b3310c2fb435a0cb4c6c744d
Author: Matthew Nagy <matthew.nagy at sony.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/docs/TypeSanitizer.rst
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_flags.inc
A compiler-rt/test/tysan/halt_on_error.c
Log Message:
-----------
halt_on_error flag for TySan and docs (#182479)
Commit: c0a3996e3595a1de0d7adf091125143d69000fc4
https://github.com/llvm/llvm-project/commit/c0a3996e3595a1de0d7adf091125143d69000fc4
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Target/X86/BUILD.gn
Log Message:
-----------
[gn] port 443ce5569ee9854c more
Commit: e4580d2195cfe94a83084b1716fea8a539715e99
https://github.com/llvm/llvm-project/commit/e4580d2195cfe94a83084b1716fea8a539715e99
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Fix unscheduled succs when nodes are scheduled (#184946)
When we update use-def edges the DAG gets notified to update the
UnscheduledSuccs counters. However, if either edge node is already
scheduled we should not update UnscheduledSuccs because the
UnscheduledSuccs counter value should be treated as "undefined" after a
node has been scheduled, i.e., it's value has a meaning only before the
node gets scheduled.
Commit: 013bdbed9fc51021e2b2de0ccb819979fb259581
https://github.com/llvm/llvm-project/commit/013bdbed9fc51021e2b2de0ccb819979fb259581
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
Log Message:
-----------
[MVEGatherScatter] Fix GEP scale calculations (#185437)
The GEP scale for a single index GEP is the type alloc size of the
source element type. The pass was mostly computing it correctly, but two
places were doing something different.
Commit: 43a0e59a34b15183d01cf2ce0eb0e9c9f9606048
https://github.com/llvm/llvm-project/commit/43a0e59a34b15183d01cf2ce0eb0e9c9f9606048
Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
Log Message:
-----------
[Hexagon] Add new register input/output types for qf instructions (#184398)
The v81 iset has been updated with input and output register
types/extensions for instructions. Currently, it supports qf32/qf16
register types. This patch implements a qf reg type lookup to query
these types. In the future, the register type extractor can be improved
and more APIs can be added to support other register types.
Co-authored-by: <santdas at qti.qualcomm.com>
Commit: f4e6226897dc16c640f8dec7ab9870e6dd0fa631
https://github.com/llvm/llvm-project/commit/f4e6226897dc16c640f8dec7ab9870e6dd0fa631
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/Iterators.h
M mlir/test/IR/visitors.mlir
M mlir/test/lib/IR/TestVisitors.cpp
Log Message:
-----------
[mlir] Fix crash in ForwardDominanceIterator when encountering graph regions (#185043)
ForwardDominanceIterator<NoGraphRegions=true> was asserting when it
encountered a region without SSA dominance (a "graph region"), such as
scf.forall.in_parallel's body. This crash was triggered by
-test-ir-visitors when walking functions that contain graph-region ops.
Change the behavior of ForwardDominanceIterator<true> and
ReverseDominanceIterator<true> to silently skip graph regions instead of
asserting, and update the documentation accordingly. This matches the
intended semantics of the NoGraphRegions flag: the traversal simply does
not enumerate blocks/ops inside such regions.
Fixes #116370
Assisted-by: Claude Code
Commit: fd676d802213c45c255b806ed906d7b8525e62d0
https://github.com/llvm/llvm-project/commit/fd676d802213c45c255b806ed906d7b8525e62d0
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/test/IR/test-func-erase-result.mlir
Log Message:
-----------
[MLIR][LLVM] Fix crash in LLVMFunctionType::clone when erasing void function results (#185093)
LLVMFunctionType::clone(inputs, results) was asserting that
results.size() == 1, which caused a crash (later changed to return
null/failure) when erasing results from a void llvm.func via
FunctionOpInterface::eraseResults.
For LLVM function types, an empty results range maps to void return: the
FunctionOpInterface represents void llvm.func with 0 results, while the
underlying LLVMFunctionType stores an explicit LLVMVoidType. When
erasing all results (or no-op erasing 0 results from a void function),
the interface passes an empty TypeRange to clone(), which should produce
a void function type.
Fix by accepting an empty results range in LLVMFunctionType::clone() and
mapping it to LLVMVoidType. More than one result remains invalid.
Fixes #128322
Assisted-by: Claude Code
Commit: 6b059a0921f8556ea562139e92eaf54da5fadac7
https://github.com/llvm/llvm-project/commit/6b059a0921f8556ea562139e92eaf54da5fadac7
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/HLFIR/Passes.h
M flang/include/flang/Optimizer/HLFIR/Passes.td
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
A flang/test/HLFIR/simplify-hlfir-intrinsics-maxmin.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
Log Message:
-----------
[flang] Inline max/minval according to -ffp-maxmin-behavior. (#185148)
This patch takes into account the option setting when inlining
max/minval intrinsics. It is not an NFC change for Flang, because:
* Inlining for integer types now uses arith.max/minsi operations.
* We do not mark the reduction loops as `unordered`
under `reassoc` FMF. I think this was not quite correct.
Otherwise, the default Legacy setting should produce the same
MLIR as before.
Commit: 2e3bff698090a59259267e924013e8fac54bcbfd
https://github.com/llvm/llvm-project/commit/2e3bff698090a59259267e924013e8fac54bcbfd
Author: Ehsan Amiri <ehsan.amiri at huawei.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DDG/basic-b.ll
M llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
M llvm/test/Analysis/DependenceAnalysis/BasePtrBug.ll
M llvm/test/Analysis/DependenceAnalysis/DADelin.ll
M llvm/test/Analysis/DependenceAnalysis/DifferentOffsets.ll
M llvm/test/Analysis/DependenceAnalysis/MIVCheckConst.ll
M llvm/test/Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll
M llvm/test/Analysis/DependenceAnalysis/Preliminary.ll
M llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
M llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheck.ll
M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
M llvm/test/Analysis/DependenceAnalysis/SymbolicRDIV.ll
M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
M llvm/test/Analysis/DependenceAnalysis/WeakCrossingSIV.ll
M llvm/test/Analysis/DependenceAnalysis/WeakZeroDstSIV.ll
M llvm/test/Analysis/DependenceAnalysis/WeakZeroSrcSIV.ll
M llvm/test/Analysis/DependenceAnalysis/becount-couldnotcompute.ll
M llvm/test/Analysis/DependenceAnalysis/exact-rdiv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-addrec-wrap.ll
M llvm/test/Transforms/LoopFusion/da_separate_loops.ll
M llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
M llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
Log Message:
-----------
[DA] Test AddRecs are nsw before strong SIV test (#183421)
Currently Strong SIV test, does not check that the AddRecs involved do
not overflow. This is required for correctness of the tests. Strictly
speaking, the range-based independence check in Strong SIV relies on
SCEV which internally takes care of potential overflows, so this is
mainly needed for the divisibility test and distance/directions
calculations, but putting the test early in the function covers all the
cases anyways.
Commit: c21a5ac736d173e70b1ba1b5c447b382fa1995b0
https://github.com/llvm/llvm-project/commit/c21a5ac736d173e70b1ba1b5c447b382fa1995b0
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir
Log Message:
-----------
[mlir][vector] Flatten transfer - support multi-dim scalar element (#185417)
Adds support for flattening multi-dimensional scalar vector transfers.
The addition prevents pattern crashes on such inputs and allows for
cleaner lowering of scalar vectors.
Commit: 4a8e172677c94d021260d47dc93fc16a5069f122
https://github.com/llvm/llvm-project/commit/4a8e172677c94d021260d47dc93fc16a5069f122
Author: Abhishek Varma <avarma094 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorization/unsupported.mlir
Log Message:
-----------
[mlir][Linalg] Prevent vectorization of generic Conv with dynamic dims (#185415)
-- We should use `isaConvolutionOpInterface` instead as it accommodates
both named as well as generic convolution ops.
-- https://github.com/llvm/llvm-project/pull/176339 missed making one
such update to `vectorizeDynamicLinalgOpPrecondition` and it got exposed
in a downstream project.
-- This commit therefore aims to fix the same.
Signed-off-by: Abhishek Varma <abhvarma at amd.com>
Commit: ffdb484752dca7a5c6679383b98c41c9da3ae6b0
https://github.com/llvm/llvm-project/commit/ffdb484752dca7a5c6679383b98c41c9da3ae6b0
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
A llvm/test/Transforms/InstCombine/RISCV/riscv-vmv-v-x.ll
Log Message:
-----------
[InstCombine/RISCV] Constant-fold bitcast(vmv.v.x) (#182630)
Constant-fold bitcast(vmv.v.x) to avoid creating redundant masks.
llc run showing vsetvli eliminated: https://godbolt.org/z/d1Gx3KqaT
Commit: 9b04a3cd393c24dfe14cf72f2130a17a9b2020b3
https://github.com/llvm/llvm-project/commit/9b04a3cd393c24dfe14cf72f2130a17a9b2020b3
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libcxx/utils/ci/docker/docker-compose.yml
M libcxx/utils/ci/docker/linux-builder-base.dockerfile
Log Message:
-----------
[libc++] Use compiler explorer for Clang as well and update to LLVM 23 as head (#185168)
Using the compiler explorer infrastucture simplifies the dockerfile a
bit, since we have a single source for compilers now instead of two
independent ones. compiler explorer is also usually significantly faster
at providing new versions than apt.llvm.org.
Commit: d6ee4c92884e547b1473fa7dbceb2155a2347429
https://github.com/llvm/llvm-project/commit/d6ee4c92884e547b1473fa7dbceb2155a2347429
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/test/CIR/Transforms/pure-ptr-arithmetic.cir
Log Message:
-----------
[CIR] Fix spurious MemRead on pure pointer-arithmetic ops (#185154)
Remove incorrect [MemRead] annotations from seven CIR ops that only
perform pointer arithmetic, and add the Pure trait where missing.
- VTableGetVPtrOp computes the address of the vptr slot within an
object. Since the vptr is always at offset zero, this is a bitcast —
confirmed by the lowering which does replaceOp(op, srcVal). No memory
access.
- VTableGetVirtualFnAddrOp takes an already-loaded !cir.vptr value and
an index, computes the address of the nth vtable entry. Lowers to a
GEPOp. No memory access.
- VTableGetTypeInfoOp takes an already-loaded !cir.vptr value, computes
the address of the type_info entry at a known ABI offset. Pointer
arithmetic only. No memory access.
- GetMemberOp computes the address of a struct/class member given a base
pointer and a constant index. Lowers to GEPOp (struct/class) or
BitcastOp (union). No memory access.
- GetRuntimeMemberOp computes a member address using a runtime
pointer-to-data-member value. Lowers to CastOp + PtrStrideOp (byte-level
pointer arithmetic). No memory access.
- BaseClassAddrOp computes the base class address from a derived class
pointer using a byte offset. Lowers to GEPOp/BitcastOp with a null check
when needed. No memory access.
- DerivedClassAddrOp computes the derived class address from a base
class pointer using a negative byte offset. Lowers to GEPOp with a null
check when needed. No memory access.
In all cases, the actual memory reads are performed by separate cir.load
ops that follow these address computations.
Commit: 37881bac75248ca48385d634554b4050e27be0d1
https://github.com/llvm/llvm-project/commit/37881bac75248ca48385d634554b4050e27be0d1
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-resize.mlir
Log Message:
-----------
[mlir][tosa][tosa-to-linalg] Fix resize bilinear delta computation for negative offsets (#184799)
Use floor-consistent remainder when lowering floating-point tosa.resize
to linalg: compute `r = in - floor(in/scale_n)*scale_n` instead of
RemSIOp. This keeps bilinear deltas in-range for negative offsets and
avoids invalid interpolation weights.
Commit: 2d6124c192c5fc88f156115b8c20819260c718e2
https://github.com/llvm/llvm-project/commit/2d6124c192c5fc88f156115b8c20819260c718e2
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/test/CodeGen/AArch64/stack-tagging-split-lifetime.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
Log Message:
-----------
[MTE] [HWASan] do not remove lifetimes for unterminated lifetime
The reasoning for this was incorrect. Return is an implicit lifetime
end of all allocas, so we are not inserting outside of a lifetime.
Reviewers: pcc, usama54321
Reviewed By: pcc
Pull Request: https://github.com/llvm/llvm-project/pull/184387
Commit: 83c55c3362a0d51c8d6986913b86b90f424be45a
https://github.com/llvm/llvm-project/commit/83c55c3362a0d51c8d6986913b86b90f424be45a
Author: Vasileios Porpodas <vasileios.porpodas at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A llvm/test/Transforms/SandboxVectorizer/external_uses.ll
Log Message:
-----------
[SandboxVec][NFC] Precommit test
For a follow-up patch on handling of external uses.
Commit: c4431d4e931e7325dca6e221b8ec41530312594e
https://github.com/llvm/llvm-project/commit/c4431d4e931e7325dca6e221b8ec41530312594e
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[TableGen] Fix ordering of register classes with artificial members. (#185448)
The current implementation wouldn't advance IB to skip artificial
registers once IA has reached the end.
Commit: 0ea734dd3a5b8b14ee0d8f29260f8166ae4c0d11
https://github.com/llvm/llvm-project/commit/0ea734dd3a5b8b14ee0d8f29260f8166ae4c0d11
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
Log Message:
-----------
[CIR] Extract CIR_VAOp base class for VAStartOp and VAEndOp (#185258)
Both ops share identical arguments and assembly format. Extract a common
base class to eliminate the duplication.
Commit: 7fd291b400bece84e4e893d7367ab0d09d588ff7
https://github.com/llvm/llvm-project/commit/7fd291b400bece84e4e893d7367ab0d09d588ff7
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/include/llvm/MC/MCSymbolGOFF.h
M llvm/lib/MC/MCAsmInfoGOFF.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/test/CodeGen/SystemZ/zos-func-alias.ll
M llvm/test/CodeGen/SystemZ/zos-section-1.ll
M llvm/test/CodeGen/SystemZ/zos-symbol-1.ll
M llvm/test/CodeGen/SystemZ/zos-symbol-2.ll
Log Message:
-----------
[GOFF] Set reference to ADA (#179734)
Function symbols must have a reference to the ADA, because this becomes
the value of the r5 register when the function is called. Simply get the
value from the begin symbol of the section.
Commit: b7a04455655a939be8aef201a62db4e7ec1d0fb8
https://github.com/llvm/llvm-project/commit/b7a04455655a939be8aef201a62db4e7ec1d0fb8
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPDInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_aliases-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_aliases.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp16-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp8-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp8.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_t16_err.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_t16_promote.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3-fake16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_aliases-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_aliases.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp8.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp16-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp8-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3p.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3p_aliases.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3p_dpp16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vopd.s
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3_dpp16.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3_dpp8.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3p.txt
Log Message:
-----------
[AMDGPU][MC] Update old and add new min/max instructions for gfx1170 (#184601)
Commit: 687d5c5f103cb7ff791de8f752e9096eacdce314
https://github.com/llvm/llvm-project/commit/687d5c5f103cb7ff791de8f752e9096eacdce314
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Log Message:
-----------
[LLDB] Remove C++ language runtime dependency of Clang expression parser (#185450)
From
https://github.com/llvm/llvm-project/pull/169225#issuecomment-4024377289:
There was a dependency cycle involving the C++ language runtime:
```
//lldb/source/Plugins/TypeSystem/Clang:Clang ->
//lldb/source/Plugins/ExpressionParser/Clang:Clang ->
//lldb/source/Plugins/LanguageRuntime/CPlusPlus:CPlusPlus ->
//lldb/source/Plugins/TypeSystem/Clang:Clang
```
`ExpressionParserClang` doesn't need to depend on the C++ language
runtime. It only included a file, but didn't use it. This PR removes
that dependency.
Commit: ae8f614a0cb63081487506227e373c05bfc45e0c
https://github.com/llvm/llvm-project/commit/ae8f614a0cb63081487506227e373c05bfc45e0c
Author: Fabio D'Urso <fdurso at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M compiler-rt/lib/scudo/standalone/mem_map_fuchsia.cpp
Log Message:
-----------
[scudo] Add missing class name specifier in mem_map_fuchsia (#185389)
Commit: f7a48fbefaf0bf85f93568f9fdca47bf6bc52ceb
https://github.com/llvm/llvm-project/commit/f7a48fbefaf0bf85f93568f9fdca47bf6bc52ceb
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/test/CodeGen/PowerPC/builtins-amo-err.c
M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/test/CodeGen/PowerPC/amo-enable.ll
Log Message:
-----------
[PowerPC] Add AMO load with Compare and Swap Not Equal (#178061)
This commit adds support for lwat/ldat atomic operations with function
code 16 (Compare and Swap Not Equal) via 4 clang builtins:
__builtin_amo_lwat_csne for 32-bit unsigned operations
__builtin_amo_ldat_csne for 64-bit unsigned operations
__builtin_amo_lwat_csne_s for 32-bit signed operations
__builtin_amo_ldat_csne_s for 64-bit signed operations
Commit: 89d150a7973d20dced91bb3c87be95879564b6b5
https://github.com/llvm/llvm-project/commit/89d150a7973d20dced91bb3c87be95879564b6b5
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/docs/TableGen/ProgRef.rst
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/TableGen/TGParser.h
A llvm/test/TableGen/let-append-bitrange-error.td
A llvm/test/TableGen/let-append-error.td
A llvm/test/TableGen/let-append-toplevel.td
A llvm/test/TableGen/let-append.td
A llvm/test/TableGen/let-prepend-error.td
Log Message:
-----------
[TableGen] Add let append/prepend syntax for field concatenation (#182382)
## Motivation
LLVM TableGen currently lacks a way to **accumulate** field values
across class hierarchies. When a derived class sets a field via `let`,
it completely replaces the parent's value. This forces users into
verbose workarounds like:
```tablegen
class Op { // This is generic MLIR Base
code extraClassDeclaration = ?;
}
// Some Generic shared base
class MyShared1OpClass : Op {
code shared1ExtraClassDeclaration = [{ some generic code 1 }];
}
class MyShared2OpClass : MyShared1OpClass {
code shared2ExtraClassDeclaration = [{ some generic code 2 }];
}
def MyOp : MyShared2OpClass {
// need to manually concatenate shared code
let extraClassDeclaration =
shared1ExtraClassDeclaration
# shared2ExtraClassDeclaration
# [{ additional specialized code }];
}
```
Instead I propose a more natural incremental solution without
unnecessery intermediate definitions:
```
class Op {
code extraClassDeclaration = ?;
}
class MyShared1OpClass : Op {
let append extraClassDeclaration = [{ some generic code 1 }];
}
class MyShared2OpClass : MyShared1OpClass {
let append extraClassDeclaration = [{ some generic code 2 }];
}
def MyOp : MyShared2OpClass {
let append extraClassDeclaration = [{ additional specialized code }];
}
```
This is especially painful in MLIR, where dialect authors want base
op/type/attribute classes to inject shared C++ declarations into all
derived definitions. I attempted to solve this in PR
https://github.com/llvm/llvm-project/pull/182265 with MLIR-specific
`inheritableExtraClassDeclaration`/`Definition` fields, but as
@joker-eph [pointed
out](https://github.com/llvm/llvm-project/pull/182265#discussion_r2098718600),
this is ad-hoc -- the same inheritance problem exists for `traits`,
`arguments`, `results`, and any other list/string/dag field. Rather than
adding `inheritable*` variants per field, we should solve this at the
language level.
## Design
This PR adds two new modifiers to the `let` statement: **`append`** and
**`prepend`**.
```tablegen
class Base {
list<int> items = [1, 2];
string text = "hello";
dag d = (op);
}
def Example : Base {
let append items = [3, 4]; // items = [1, 2, 3, 4]
let prepend items = [0]; // items = [0, 1, 2]
let append text = " world"; // text = "hello world"
let prepend text = "say "; // text = "say hello"
let append d = (op 3:$a); // d = (op 3:$a)
}
```
### Supported types
| Field type | Operation | Concat operator |
|---|---|---|
| `list<T>` | append/prepend | `!listconcat` |
| `string` / `code` | append/prepend | `!strconcat` |
| `dag` | append/prepend | `!con` |
| Other (`bit`, `int`, `bits`) | -- | Error |
### Semantics
- **`let append`** concatenates the new value **after** the current
value
- **`let prepend`** concatenates the new value **before** the current
value
- If the current value is **unset** (`?`), the new value is used
directly
- A plain **`let`** (without modifier) still replaces, allowing opt-out
from accumulated values
- Works in both **body-level** (`def Foo { let append ... }`) and
**top-level** (`let append ... in { }`) contexts
### Multi-level inheritance
Accumulation works naturally across inheritance chains:
```tablegen
class Base {
list<int> items = [1, 2];
}
class Middle : Base {
let append items = [3]; // items = [1, 2, 3]
}
def Leaf : Middle {
let append items = [4]; // items = [1, 2, 3, 4]
}
```
### Multiple inheritance
TableGen supports multiple inheritance (`def D : A, B { ... }`), where
parent classes are processed left to right and the **last parent class's
value wins** for any shared field. `let append`/`let prepend` operates
on whatever value the field has *after* inheritance resolution — it does
not accumulate across sibling parents:
```tablegen
class A { list<int> items = [1, 2]; }
class B { list<int> items = [3, 4]; }
def D : A, B {
let append items = [5]; // items = [3, 4, 5] (A's value is lost)
}
```
This also applies to diamond inheritance:
```tablegen
class Base { list<int> items = [1]; }
class Left : Base { let append items = [2]; } // [1, 2]
class Right : Base { let append items = [3]; } // [1, 3]
def D : Left, Right {
let append items = [4]; // items = [1, 3, 4] (Left's [2] is lost)
}
```
This is consistent with how plain `let` works with multiple inheritance
— it is the standard last-writer-wins rule. Users who need accumulation
from multiple parents should use a single-inheritance chain instead.
## Backward compatibility
This proposal is **fully backward compatible**. The keywords `append`
and `prepend` are implemented as **context-sensitive keywords** — they
are only recognized as modifiers when they appear immediately after
`let` (in both body-level and top-level contexts). In all other
positions, `append` and `prepend` remain valid identifiers and can be
used as field names, class names, def names, etc. This means:
- No existing `.td` files (in-tree or out-of-tree) will break
- Fields named `append` or `prepend` continue to work: `let append
append = [5];` is valid (the first `append` is the modifier, the second
is the field name)
- The parser checks for the identifier string value after `let`, not for
a reserved token
RFC:
https://discourse.llvm.org/t/rfc-tablegen-add-let-append-prepend-syntax-for-field-concatenation/89924/
Commit: d3a22eaab8cbd4a2ac7581298b5262f1632ae6d4
https://github.com/llvm/llvm-project/commit/d3a22eaab8cbd4a2ac7581298b5262f1632ae6d4
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/test/CIR/CodeGen/virtual-fn-calls-eh.cpp
M clang/test/CIR/CodeGen/virtual-function-calls.cpp
M clang/test/CIR/Transforms/flatten-try-op.cir
Log Message:
-----------
[CIR] Fix try_call replacement for indirect calls (#185095)
We had a bug in the FlattenCFG pass where if an indirect call occurred
within a cleanup scope that required exception handling, the indirect
callee was not being preserved in the cir.try_call. This fixes that.
Commit: f1a2fd2abbd38f21687c1ac6f27ed61769ea55a4
https://github.com/llvm/llvm-project/commit/f1a2fd2abbd38f21687c1ac6f27ed61769ea55a4
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
Log Message:
-----------
[HLSL][Matrix] Make HLSLElementwiseCast respect matrix memory layout (#184429)
Fixes #184379
Changes the implementation of HLSLElementwiseCast to respect matrix
memory layout.
The new implementation reads from the `LoadList` array in row-major
order as opposed to column-major in the old implementation, which makes
more sense because `LoadList` is always interpreted in row-major order
when read as a matrix.
The writes to the allocation `V` for the destination matrix now respects
the default matrix memory layout.
Assisted-by: claude-opus-4.6
Commit: 76daf31b4000623d5c9548348a859ea3ed8712e1
https://github.com/llvm/llvm-project/commit/76daf31b4000623d5c9548348a859ea3ed8712e1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/R600Subtarget.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/CodeGen/AMDGPU/amdgpu-max-num-workgroups-load-annotate.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-block-count.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
Log Message:
-----------
AMDGPU: Annotate group size ABI loads with range metadata (#185420)
We previously did the same for the grid size when annotated.
The group size is easier, so it's weird that this wasn't implemented
first.
Commit: 7a85921a7da2f1a909867c14c01f60df0bcbfe5a
https://github.com/llvm/llvm-project/commit/7a85921a7da2f1a909867c14c01f60df0bcbfe5a
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libc/src/string/strcmp.cpp
M libc/src/string/strcoll.cpp
M libc/src/string/strncmp.cpp
M libc/test/src/string/strcmp_test.cpp
M libc/test/src/string/strcoll_test.cpp
M libc/test/src/string/strncmp_test.cpp
Log Message:
-----------
[libc] Use unsigned char in strcmp, strncmp, and strcoll comparisons (#185393)
According to section 7.24.1 of the C standard, character comparison in
string functions must be performed as if the characters had the type
`unsigned char`.
The previous implementations of `strcmp`, `strncmp`, and `strcoll` were
doing a direct subtraction of `char` values. On platforms where `char`
is signed, this resulted in incorrect negative values being returned
when characters exceeding 127 were being compared.
This patch fixes the comparison functions to explicitly cast the
character values to `unsigned char` prior to computing their difference.
It also adds regression tests to ensure the comparison behaves correctly
for ASCII values greater than 127.
Commit: 3671fadb5b671ae76bf3d5a8dce383b66507f867
https://github.com/llvm/llvm-project/commit/3671fadb5b671ae76bf3d5a8dce383b66507f867
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsLoop.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCUtilsLoopTest.cpp
Log Message:
-----------
[mlir][OpenACC] Normalize loop bounds in convertACCLoopToSCFFor for negative steps (#184935)
`convertACCLoopToSCFFor` was passing `acc.loop` bounds directly to
`scf.for`, which produces an `scf.for` with a negative step when the
source is a Fortran DO loop counting down (e.g. `DO k = n, 1, -1`).
Since `scf.for` requires a positive step, this generated invalid IR that
caused downstream crashes during LLVM lowering.
`convertACCLoopToSCFParallel` already normalizes all loops
unconditionally to `lb=0, step=1, ub=tripCount`, but
`convertACCLoopToSCFFor` did not. This patch applies the same
normalization to `convertACCLoopToSCFFor`, with IV denormalization in
the loop body (`original_iv = normalized_iv * orig_step + orig_lb`), and
lets later passes fold away constants.
Commit: 298ef5155ea445c64616be660cfcc4bdedd5b019
https://github.com/llvm/llvm-project/commit/298ef5155ea445c64616be660cfcc4bdedd5b019
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
A clang/test/CIR/CodeGen/instantiate-init.cpp
Log Message:
-----------
[CIR] Add support for CXXStdInitializerListExpr (#185279)
Add support for the CXXStdInitializerListExpr
Commit: 5cafc12f06ea93045aaf4da6850b87323bccb30c
https://github.com/llvm/llvm-project/commit/5cafc12f06ea93045aaf4da6850b87323bccb30c
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/Analysis/Scalable/EntityLinker/EntityLinker.h
M clang/include/clang/Analysis/Scalable/EntityLinker/EntitySummaryEncoding.h
M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
M clang/include/clang/Analysis/Scalable/Support/ErrorBuilder.h
M clang/lib/Analysis/Scalable/CMakeLists.txt
M clang/lib/Analysis/Scalable/EntityLinker/EntityLinker.cpp
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.h
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-1.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-2.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-badext.txt
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-empty.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-invalid-entity-id-multikey.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-invalid-entity-id-ref.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-invalid-entity-id-value.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-malformed.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-missing-fields.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-noext
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-1+2.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-1.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-2.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-empty.json
A clang/test/Analysis/Scalable/ssaf-linker/cli.test
A clang/test/Analysis/Scalable/ssaf-linker/help.test
A clang/test/Analysis/Scalable/ssaf-linker/io.test
A clang/test/Analysis/Scalable/ssaf-linker/linking-errors.test
A clang/test/Analysis/Scalable/ssaf-linker/linking.test
A clang/test/Analysis/Scalable/ssaf-linker/time.test
A clang/test/Analysis/Scalable/ssaf-linker/validation-errors-permissions.test
A clang/test/Analysis/Scalable/ssaf-linker/validation-errors.test
A clang/test/Analysis/Scalable/ssaf-linker/verbose.test
A clang/test/Analysis/Scalable/ssaf-linker/version.test
M clang/test/CMakeLists.txt
M clang/test/lit.cfg.py
M clang/tools/CMakeLists.txt
A clang/tools/ssaf-linker/CMakeLists.txt
A clang/tools/ssaf-linker/SSAFLinker.cpp
M clang/unittests/Analysis/Scalable/EntityLinkerTest.cpp
M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/LUSummaryTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
Log Message:
-----------
[clang][ssaf] Implement Entity Linker CLI and patching for JSON Format
This PR implements Entity ID patching for the JSON serialization format
and introduces `ssaf-linker`, a command-line tool that drives the
`EntityLinker`.
1. Entity ID references inside summary blobs use the sentinel
representation `{"@": <uint64>}`. Patching walks the JSON value tree
recursively, recognizes sentinels, and rewrites their indices using the
`EntityResolutionTable` provided by the linker.
2. An object with an `@` key but extra keys `(size != 1)`, an `@` value
that is not a valid `uint64`, and an entity ID not present in the
resolution table, lead to patching errors.
3. `JSONFormat::EntityIdConverter` is replaced with two `function_ref`
typedefs to eliminate the wrapper class.
4.`ssaf-linker` is implemented in `clang/tools/ssaf-linker/` and gets
built at `bin/ssaf-linker`.
5. lit tests check CLI, verbose output, timing output, validation
errors, I/O errors, linking errors, and successful linking.
rdar://162570931
Commit: c700a00e8edf6b43d52c260171dfbd26469c4790
https://github.com/llvm/llvm-project/commit/c700a00e8edf6b43d52c260171dfbd26469c4790
Author: Steven Perron <stevenperron at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/AST/HLSL/Texture2D-shorthand-AST.hlsl
A clang/test/CodeGenHLSL/resources/Texture2D-default-explicit-binding.hlsl
A clang/test/CodeGenHLSL/resources/Texture2D-default.hlsl
A clang/test/CodeGenHLSL/resources/Texture2D-shorthand-contexts.hlsl
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
A clang/test/SemaHLSL/BuiltIns/RWStructuredBuffers.hlsl
M clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
Log Message:
-----------
[HLSL] Implement Texture2D default template (#184207)
The Texture2D type has a default template of float4. This can be written
in a couple way: `Texture2D<>` or `Texture2D`. This must be implemented
for consistenty with DXC in HLSL202x.
To implement `Texture2D<>` we simply add a default type for the template
parameter.
To implement `Texture2D`, we have to add a special case for a template
type without a template instantiation. For HLSL, we check if it is a
texture type. If so, the default type is filled in.
Note that HLSL202x does not support C++17 Class Template Argument
Deduction, so we cannot use that feature to give us `Texture2D`.
See https://github.com/llvm/wg-hlsl/pull/386 for alternatives that were
considered.
Part of #175630.
Assisted-by: Gemini
<!-- branch-stack-start -->
-------------------------
- main
- https://github.com/llvm/llvm-project/pull/184207 :point_left:
<sup>[Stack](https://www.git-town.com/how-to/proposal-breadcrumb.html)
generated by [Git Town](https://github.com/git-town/git-town)</sup>
<!-- branch-stack-end -->
Commit: 66137feee6037d9c9fb67a1b151c2c961a07af5c
https://github.com/llvm/llvm-project/commit/66137feee6037d9c9fb67a1b151c2c961a07af5c
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/test/CodeGen/AArch64/f16f32dot-fixed-length-fdot.ll
M llvm/test/CodeGen/AArch64/sve2p1-fixed-length-fdot.ll
Log Message:
-----------
[AArch64] Add partial reduce patterns for new fdot instructions (#184659)
This patch enables generation of new dot instruction added in under
FEAT_F16F32DOT from partial reduce nodes.
Commit: 9879df92a9ea4a52fb2256e94e81949279c0dd45
https://github.com/llvm/llvm-project/commit/9879df92a9ea4a52fb2256e94e81949279c0dd45
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/test/CIR/CodeGen/array-ctor.cpp
M clang/test/CIR/CodeGen/array-dtor.cpp
M clang/test/CIR/CodeGen/assume-attr.cpp
M clang/test/CIR/CodeGen/binop.cpp
M clang/test/CIR/CodeGen/cmp.cpp
M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
M clang/test/CIR/CodeGen/complex-mul-div.cpp
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/cxx-default-init.cpp
M clang/test/CIR/CodeGen/destructors.cpp
M clang/test/CIR/CodeGen/dynamic-cast-exact.cpp
M clang/test/CIR/CodeGen/dynamic-cast.cpp
M clang/test/CIR/CodeGen/forrange.cpp
M clang/test/CIR/CodeGen/global-array-dtor.cpp
M clang/test/CIR/CodeGen/global-init.cpp
M clang/test/CIR/CodeGen/local-vars.cpp
M clang/test/CIR/CodeGen/loop.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member-cast.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member-cmp.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
M clang/test/CIR/CodeGen/static-local.cpp
M clang/test/CIR/CodeGen/ternary.cpp
M clang/test/CIR/CodeGen/throws.cpp
M clang/test/CIR/CodeGen/vla.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512dq-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c
M clang/test/CIR/CodeGenCXX/typeid-should-throw.cpp
M clang/test/CIR/CodeGenCXX/typeid.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-read.cpp
M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
M clang/test/CIR/IR/cmp.cir
M clang/test/CIR/IR/throw.cir
M clang/test/CIR/Lowering/goto.cir
M clang/test/CIR/Lowering/switch.cir
M clang/test/CIR/Transforms/eh-abi-lowering-itanium.cir
M clang/test/CIR/Transforms/switch.cir
M clang/test/CIR/Transforms/ternary.cir
M clang/test/CodeGen/AArch64/neon/intrinsics.c
Log Message:
-----------
[CIR] Change CmpOp assembly format to use bare keyword style (#185114)
Update the assembly format of cir.cmp from the parenthesized style
`cir.cmp(gt, %a, %b) : !s32i, !cir.bool`
to the bare keyword style used by other CIR ops like cir.cast:
`cir.cmp gt %a, %b : !s32i`
The result type (!cir.bool) is now automatically inferred as it is
always cir::BoolType.
Commit: f70db52e1e5703b5de1124ad90c83e048aebc45f
https://github.com/llvm/llvm-project/commit/f70db52e1e5703b5de1124ad90c83e048aebc45f
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/tools.cpp
M flang/test/Semantics/cuf23.cuf
Log Message:
-----------
[flang][cuda] Relax host intrinsic semantic check in acc routine (#185483)
Semantic check that checks if any actual argument is on the device
doesn't need to be active in acc routine function/subroutine.
Commit: e645bb3a980edd569ae4ff5c8ffe7bc4bce2087a
https://github.com/llvm/llvm-project/commit/e645bb3a980edd569ae4ff5c8ffe7bc4bce2087a
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
Log Message:
-----------
[CIR] Fix codegen for MemberPoint with nullptr value (#185309)
Fix codegen for the MemberPoint with a nullptr value
Commit: 13440ae635468f6f7750118de959faee771dd8de
https://github.com/llvm/llvm-project/commit/13440ae635468f6f7750118de959faee771dd8de
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
Log Message:
-----------
[clang-doc] Fix wrong type name for Serializer in benchmark (#185493)
Commit: 0ab90533272c349d1f07f96e605c6086c6b0ea33
https://github.com/llvm/llvm-project/commit/0ab90533272c349d1f07f96e605c6086c6b0ea33
Author: Yoonseo Choi <yoonchoi at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Log Message:
-----------
[AMDGPU] Cgscc amdgpu attributor boilerplate NFC (#179719)
This PR is adding a boilerplate of CGSCC AMDGPUAttributor pass
(amdgpu-attributor-cgscc) by doing refactoring from the existing Module
AMDGPUAttributor pass (amdgpu-attributor).
CGSCC AMDGPUAttributor pass sets `AttributorConfig.IsModulePass =
false`, and make Attributor's `Functions` set contain only functions in
a SCC.
The main implementations of abstract attributes have not changed - NFC.
Subsequently, in future work some of the AMDGPU abstract attributors
might move to be handled by CGSCC pass.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 4aa1f211ca0312453c435d8f8d716972f065cbc8
https://github.com/llvm/llvm-project/commit/4aa1f211ca0312453c435d8f8d716972f065cbc8
Author: Rahman Lavaee <rahmanl at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
M llvm/include/llvm/CodeGen/MIRYamlMapping.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/Support/UniqueBBID.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/InsertCodePrefetch.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
A llvm/test/CodeGen/MIR/Generic/prefetch-targets-error.mir
A llvm/test/CodeGen/MIR/Generic/prefetch-targets.mir
M llvm/test/CodeGen/X86/basic-block-sections-code-prefetch.ll
Log Message:
-----------
Centralize prefetch target storage in MachineFunction. (#184194)
### Prefetch Symbol Resolution
Based on this
[suggestion](https://discourse.llvm.org/t/rfc-code-prefetch-insertion/88668/29?u=rlavaee),
we must identify if a prefetch target is defined in the current module
to avoid **undefined symbol errors**. Since this occurs during
sequential **CodeGen**, we must rely on function names rather than IR
Module APIs.
**Key Changes:**
* **`MachineFunction` Integration:** Added a `PrefetchTargets` field
(with serialization) to track all targets associated with a function.
* **Guaranteed Emission:** All prefetch targets are now emitted
regardless of basic block or callsite index matches to ensure the symbol
exists.
* **Fallback Placement:** Targets with non-matching callsite indices are
emitted at the end of the block to resolve the reference.
Commit: cf8a91eec28dd2122a69f3a4c315f875a6896af1
https://github.com/llvm/llvm-project/commit/cf8a91eec28dd2122a69f3a4c315f875a6896af1
Author: Derek Schuff <dschuff at chromium.org>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/test/Driver/wasm-features.c
M clang/test/Preprocessor/wasm-target-features.c
Log Message:
-----------
[WebAssembly] Clang support for acquire-release atomics (#184901)
Add the feature to the clang target, including driver flags and
preprocessor defines.
Commit: 19a31b27b0381d27de4d950bb1ea0a7c8c1e66e5
https://github.com/llvm/llvm-project/commit/19a31b27b0381d27de4d950bb1ea0a7c8c1e66e5
Author: V.Rybalov <viacheslav.g.rybalov at intel.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
A llvm/test/Transforms/VectorCombine/arbitrary-precision-int.ll
Log Message:
-----------
[VectorCombine] Fixing bitcast processing in VectorCombine (#185075)
Fixing bitcast instruction processing in VectorCombine pass
that operates: arbitrary precision integer types.
Commit: 3e9808befb70a73593d6d98cf744018b4ecab89c
https://github.com/llvm/llvm-project/commit/3e9808befb70a73593d6d98cf744018b4ecab89c
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M compiler-rt/lib/scudo/standalone/primary64.h
Log Message:
-----------
[scudo] Use a fixed format for the milliseconds in latest release. (#185097)
Commit: 3e2069d1280b4a70b0b8c7b252b7bd52d2784aec
https://github.com/llvm/llvm-project/commit/3e2069d1280b4a70b0b8c7b252b7bd52d2784aec
Author: Rahman Lavaee <rahmanl at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/MIR/Generic/prefetch-targets-error.mir
M llvm/test/CodeGen/MIR/Generic/prefetch-targets.mir
Log Message:
-----------
Fix https://lab.llvm.org/buildbot/#/builders/154/builds/28782
Commit: c182ca3e3ad6c0932ea8258e36174a85a6beda7a
https://github.com/llvm/llvm-project/commit/c182ca3e3ad6c0932ea8258e36174a85a6beda7a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/source/Core/PluginManager.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp
M lldb/source/Plugins/DynamicLoader/wasm-DYLD/DynamicLoaderWasmDYLD.cpp
M lldb/source/Plugins/DynamicLoader/wasm-DYLD/DynamicLoaderWasmDYLD.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteMacOSX.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp
M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp
M lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/test/API/api/command-return-object/main.cpp
M lldb/test/API/api/multithreaded/driver.cpp.template
M lldb/tools/lldb-test/SystemInitializerTest.cpp
M lldb/unittests/Platform/PlatformDarwinTest.cpp
M lldb/unittests/Process/ProcessTraceTest.cpp
M lldb/unittests/Target/LocateModuleCallbackTest.cpp
Log Message:
-----------
[lldb] Assert & fix missing calls to UnregisterPlugin (#185162)
Fix missing calls to UnregisterPlugin and add an assert in the
PluginManager that ensures all plugins have been unregistered by the
time the plugin manager is destroyed.
Commit: 2c1594a258d92f28e8b90b96e3ca12c55ab44eef
https://github.com/llvm/llvm-project/commit/2c1594a258d92f28e8b90b96e3ca12c55ab44eef
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-startswith.cpp
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/signal-handler-minimal.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler-posix.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-container.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/std-namespace-modification.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-constructor-options.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-include.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage-options.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage.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/cert/uppercase-literal-suffix-integer.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/objc-function-naming.m
M clang-tools-extra/test/clang-tidy/checkers/llvm/include-order.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvmlibc/restrict-system-libc-headers.cpp
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/pass-by-value-macro-header.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-scope-lock-warn-on-using-and-typedef-false.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-no-crash.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-warn-on-single-locks-false.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-custom.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-fmt.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-member.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-absl.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-fmt.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-member.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-custom-view.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-ignored.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view.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-strict.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
M clang-tools-extra/test/clang-tidy/checkers/performance/move-constructor-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-includestyle.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.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-cstr-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr.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/test/clang-tidy/checkers/readability/string-compare-custom-string-classes.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/string-compare.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-cxx23.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-floating-point.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-hexadecimal-floating-point.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-ms.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer.cpp
Log Message:
-----------
[clang-tidy][NFC] Implicitly add checkers/Inputs/Headers as system headers in tests (#185442)
Commit: 48e6adc97edd0d833908b49e2c504afb4a90c61a
https://github.com/llvm/llvm-project/commit/48e6adc97edd0d833908b49e2c504afb4a90c61a
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.h
M mlir/docs/Rationale/SideEffectsAndSpeculation.md
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
M mlir/include/mlir/Interfaces/SideEffectInterfaces.h
M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
M mlir/lib/Transforms/CSE.cpp
M mlir/test/Analysis/test-alias-analysis-modref.mlir
A mlir/test/Dialect/OpenACC/cse.mlir
M mlir/test/Transforms/cse.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.h
M mlir/unittests/Interfaces/CMakeLists.txt
A mlir/unittests/Interfaces/SideEffectInterfacesTest.cpp
Log Message:
-----------
[RFC][mlir] Resource hierarchy for MLIR Side Effects. (#181229)
This patch allows creating a hierarchy of `SideEffects::Resource`s by adding
a virtual `getParent()` method, so that effects on *disjoint* resources
can be proven non-conflicting. It also adds virtual `isAddressable()` method
that represents a property of a resource to be addressable via a pointer
value. The non-addressable resources may not be affected via any pointer.
This is unblocking CSE, LICM and alias analysis without per-pass
special-casing.
RFC:
https://discourse.llvm.org/t/rfc-mlir-memory-region-hierarchy-for-mlir-side-effects/89811
Commit: 9062a02da6501db6eac14dd0cc0b99c99284a554
https://github.com/llvm/llvm-project/commit/9062a02da6501db6eac14dd0cc0b99c99284a554
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/source/Core/PluginManager.cpp
Log Message:
-----------
[lldb] Temporarily remove the assert to unblock the bots (#185505)
The assert is triggering from Dexter in the cross-project-test. This
temporarily removes the assert while I address the issue.
Commit: c192e8c9e39ddb99724fef5e301c6baa357dcce9
https://github.com/llvm/llvm-project/commit/c192e8c9e39ddb99724fef5e301c6baa357dcce9
Author: tudinhh <103348714+tudinhh at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/lhs-constant-non-cummutative.ll
Log Message:
-----------
[SLP] Fix misvectorization in commutative to non-commutative conversion (#185230)
**Summary**
Fixes a miscompilation where commutative operations (e.g., or, and, mul)
with a left-hand side constant were incorrectly transformed into
non-commutative operations (e.g., shl, sub).
**The Problem**
In `BinOpSameOpcodeHelper::getOperand`, when a constant is at `Pos ==
0`, the helper was failing to swap operand order for new non-commutative
target opcodes. This resulted in inverted logic, such as transforming
`or 0, %x` into `shl 0, %x` (resulting in 0) instead of the correct `%x
<< 0`.
**The Fix**
The existing logic only protected the Sub opcode. This patch generalizes
the fix to all non-commutative instructions by using
`!Instruction::isCommutative(ToOpcode)`. This ensures that for any
directional operation, the variable is correctly placed on the LHS and
the constant on the RHS.
**Changes**
SLPVectorizer.cpp: Replaced the specific Sub check with a general
isCommutative check.
Regression Test: Added lhs-constant-non-cummutative.ll to cover shl,
sub, and ashr targets.
Fixes #185186
Commit: 46ab0803e7a0b9839d26ab5706512f2941268adc
https://github.com/llvm/llvm-project/commit/46ab0803e7a0b9839d26ab5706512f2941268adc
Author: Justice Adams <jadams23 at apple.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
A .ci/green-dragon/lldb-ubuntu.groovy
A .ci/green-dragon/lldb-windows.groovy
Log Message:
-----------
[green dragon] add lldb windows/ubuntu jobs (#185488)
* Add LLDB jobs for windows and ubuntu 2404
Commit: 2cde7ac1ba256deb757946c449b790468ad0c45e
https://github.com/llvm/llvm-project/commit/2cde7ac1ba256deb757946c449b790468ad0c45e
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libc/test/src/sys/time/utimes_test.cpp
Log Message:
-----------
[libc] Use explicit cast to time_t in utimes_test. (#185307)
This fixes an error on RISCV-32 bot, where time_t is "long long" type
(64-bit, as required by POSIX), instead of "long".
Commit: 4f094816ef7d2811b36ee328bac3b418dfd021cc
https://github.com/llvm/llvm-project/commit/4f094816ef7d2811b36ee328bac3b418dfd021cc
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/MIR/Generic/prefetch-targets-error.mir
Log Message:
-----------
[CodeGen] Fix prefetch-targets-error.mir
\#184194 introduced this test which was failing in some configurations
as it would try and write output to the test directory by having
incorrectly specified -o flags.
Commit: 2bd23327f8611401d384d6b503cc2332a65999ed
https://github.com/llvm/llvm-project/commit/2bd23327f8611401d384d6b503cc2332a65999ed
Author: google-llvm-bazel-bot <google-bazel-bot at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 48e6adc (#185507)
This fixes 48e6adc97edd0d833908b49e2c504afb4a90c61a.
Commit: 215b9055ba0463ef29935ce79e437465c2477887
https://github.com/llvm/llvm-project/commit/215b9055ba0463ef29935ce79e437465c2477887
Author: Igor Wodiany <dev at wodiany.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
Log Message:
-----------
[mlir][spirv] Make `MatrixType` type a `ShapedType` (#185470)
This will allow to enforce some of the type constraints in ODS using
builtin classes e.g., `AllElementTypesMatch`. This is a first PR in a series of PRs moving all verification for Matrix
ops to ODS.
Commit: 91ef9274ec9733e392923c4d17ca5168fda8fe3e
https://github.com/llvm/llvm-project/commit/91ef9274ec9733e392923c4d17ca5168fda8fe3e
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/MIR/Generic/prefetch-targets-error.mir
Log Message:
-----------
[CodeGen] Fix 4f094816ef7d2811b36ee328bac3b418dfd021cc
Missed fixing some stuff up due to files still being left around in my
build directory.
Commit: fa23f9149e8d8c347051453b46a545d6462b9367
https://github.com/llvm/llvm-project/commit/fa23f9149e8d8c347051453b46a545d6462b9367
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/Transforms/InstSimplify/and-or-implied-cond.ll
Log Message:
-----------
[InstSimplify] Test Simplify and/or of trunc nuw to i1 with op replacement (NFC)
Commit: dacb62989db8084cc2865d6b9ef85bbdf34e112d
https://github.com/llvm/llvm-project/commit/dacb62989db8084cc2865d6b9ef85bbdf34e112d
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/and-or-implied-cond.ll
Log Message:
-----------
[InstSimplify] Simplify and/or of trunc nuw to i1 with op replacement
Commit: 13b394312b97b4c0ea72a8d2a40c68d3fa392b3e
https://github.com/llvm/llvm-project/commit/13b394312b97b4c0ea72a8d2a40c68d3fa392b3e
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
A lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatter.txt
A lldb/test/Shell/ScriptInterpreter/Python/python-bytecode.test
Log Message:
-----------
[lldb][bytecode] Add Python to formatter bytecode compiler (#113734)
A compiler from Python to the assembly syntax of the [lldb data
formatter
bytecode](https://discourse.llvm.org/t/a-bytecode-for-lldb-data-formatters/82696).
Assisted-by: claude
Commit: 7030a34403b0a7e6b0a4be5cd15262b20aa98743
https://github.com/llvm/llvm-project/commit/7030a34403b0a7e6b0a4be5cd15262b20aa98743
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libc/Maintainers.rst
A libc/docs/Helpers/Styles.rst
R libc/docs/README.txt
A libc/docs/_static/copybutton.css
A libc/docs/_static/copybutton.js
M libc/docs/_static/custom.css
M libc/docs/conf.py
A libc/docs/dev/building_docs.rst
M libc/docs/dev/index.rst
M libc/docs/dev/undefined_behavior.rst
M libc/docs/full_cross_build.rst
M libc/docs/full_host_build.rst
M libc/docs/gpu/building.rst
M libc/docs/gpu/motivation.rst
M libc/docs/gpu/rpc.rst
M libc/docs/gpu/support.rst
M libc/docs/gpu/testing.rst
M libc/docs/gpu/using.rst
M libc/docs/headers/math/index.rst
M libc/docs/index.rst
M libc/docs/overlay_mode.rst
M libc/docs/porting.rst
M libc/docs/uefi/building.rst
M libc/docs/uefi/support.rst
M libc/docs/uefi/testing.rst
M libc/docs/uefi/using.rst
Log Message:
-----------
[libc][docs] Furo theme, new landing page, cleanups (#184303)
Switch the libc documentation site from the alabaster theme to Furo,
which provides mobile-friendly layout, a collapsible sidebar with
caption-based section grouping, and built-in "Edit this page" links.
Changes by area:
conf.py
- Switch html_theme to "furo"
- Add myst_parser extension (already in llvm/docs/requirements.txt, used
by LLDB/Clang/LLVM docs) to allow Markdown alongside RST
- Accept both .rst and .md source suffixes
- Configure Furo source_repository/source_branch/source_directory for
"Edit this page" links pointing to GitHub
- Wire _static/copybutton.{js,css} for copy-to-clipboard buttons on code
blocks (no new pip dependency; can migrate to sphinx-copybutton later
once it's in requirements-hashed.txt)
- Exclude plan-docs.md and Helpers/ from Sphinx processing
index.rst
- Rewrite landing page: remove apologetic "not fully complete" note, add
"What Works Today" section with concrete supported use cases, honest
caveat that full C stdlib coverage is still in progress
- Restructure hidden toctrees into five captioned sidebar groups: "Using
LLVM-libc", "Platforms" (GPU/UEFI promoted to top-level),
"Implementation Status", "Development", "Links"
New files
- docs/_static/copybutton.{js,css}: lightweight copy button for code
blocks
- docs/_static/custom.css: add status badge styles (.badge-complete
etc.) for use with Helpers/Styles.rst substitutions in later phases
Prepare for future status badges:
- docs/Helpers/Styles.rst: RST substitution definitions for status
badges (|Complete|, |Partial|, |InProgress|, |NotStarted|, |GPUOnly|,
|LinuxOnly|) — excluded from toctree, available for Phase 5+ pages
- docs/dev/building_docs.rst: new page covering prerequisites (with
Debian apt-first instructions), CMake flags, ninja docs-libc-html, the
docgen auto-generation pipeline, and troubleshooting
Removed
- docs/README.txt: stale file claiming Sphinx 1.1.3, not in any toctree;
superseded by docs/dev/building_docs.rst
Cleanups
- Remove redundant ".. contents:: Table of Contents" directives from 16
RST files (Furo renders its own per-page TOC in the sidebar)
- Remove same directive from libc/Maintainers.rst (pulled into docs via
include)
Commit: a89bb6291dd9cbc401f291b4b4c15a71f9053eb0
https://github.com/llvm/llvm-project/commit/a89bb6291dd9cbc401f291b4b4c15a71f9053eb0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/Headers/gpuintrin.h
M clang/test/Headers/gpuintrin.c
M libc/src/__support/GPU/utils.h
Log Message:
-----------
[Clang] Update the 'gpuintrin.h' lane scan handling (#185451)
Summary:
This patch uses a more efficient algorithm for the reduction rather than
a divergent branch. We also provide a prefix and suffix version, the sum
is now just the first element of this.
This changes the name to this, which is technically breaking but I don't
think these were really used in practice and it's a trivial change based
on the clang version if it's really needed..
```
__gpu_prefix_scan_sum_u32(...)
__gpu_suffix_scan_sum_u32(...)
```
Commit: 6e8e8eaa3476fb20e68b3b4cfe589bc91294f812
https://github.com/llvm/llvm-project/commit/6e8e8eaa3476fb20e68b3b4cfe589bc91294f812
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/and-or-implied-cond.ll
Log Message:
-----------
Revert "[InstSimplify] Simplify and/or of trunc nuw to i1 with op replacement"
This reverts commit dacb62989db8084cc2865d6b9ef85bbdf34e112d.
Commit: 089d69de4656712fd3045b44e0ff1b390e0c4159
https://github.com/llvm/llvm-project/commit/089d69de4656712fd3045b44e0ff1b390e0c4159
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/cuda/memory.cpp
M flang/include/flang/Runtime/CUDA/common.h
Log Message:
-----------
[flang][cuda][NFC] Add filename and line number in error reporting (#185516)
Some entry points carry over filename and line number for error
reporting. Use this information when reporting cuda error.
Commit: 4a75d33a0624239817a70aad643da8216b4be5f4
https://github.com/llvm/llvm-project/commit/4a75d33a0624239817a70aad643da8216b4be5f4
Author: Lei Huang <lei at ca.ibm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
Log Message:
-----------
[PowerPC][NFC] fix indentation and spacing (#185500)
Commit: aa64d7e92fd510bc6e54a60b2796a8c6747395e4
https://github.com/llvm/llvm-project/commit/aa64d7e92fd510bc6e54a60b2796a8c6747395e4
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libc/test/src/sys/socket/linux/send_recv_test.cpp
M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
M libc/test/src/time/mktime_test.cpp
Log Message:
-----------
[libc] Fix implicit lossy conversion warnings in tests (NFC). (#185503)
Cast expected error values (-1) to ssize_t for send/recv family of
functions.
Commit: 13f523867e3ace6539d6ddfd813a44abb106e017
https://github.com/llvm/llvm-project/commit/13f523867e3ace6539d6ddfd813a44abb106e017
Author: David Green <david.green at arm.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/movi64_sve.ll
Log Message:
-----------
[AArch64][GlobalISel] Add test coverage to movi64_sve.ll. NFC
Commit: 90978e484f289f4c7036486e375166f69a587b2b
https://github.com/llvm/llvm-project/commit/90978e484f289f4c7036486e375166f69a587b2b
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
Log Message:
-----------
[arm64ec] Fix missing sret return in Arm64EC entry thunks for large struct returns (#185452)
When an Arm64EC function returns a struct by value that is too large for
x64's `RAX` (>8 bytes), the entry thunk synthesizes a hidden sret
pointer parameter for the x64 side. However, this
parameter was never marked with the sret attribute, so ISel did not copy
its value into `x8` (the Arm64EC mapping of `RAX`) on return. This
caused the x64 caller to see a garbage pointer in `RAX` instead of the
return buffer address.
The change adds the sret attribute to the thunk's synthesized pointer
parameter, so that `LowerFormalArguments` saves it and `LowerReturn`
restores it to `x8` before the tail call to `__os_arm64x_dispatch_ret`.
Fixes #185390
Commit: 0559fe6e416c9f0f9a6428db6f333209d86e4303
https://github.com/llvm/llvm-project/commit/0559fe6e416c9f0f9a6428db6f333209d86e4303
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-doc/benchmarks/CMakeLists.txt
M clang-tools-extra/test/clang-doc/CMakeLists.txt
Log Message:
-----------
[clang-doc] Cleanup CMake files and ensure benchmarks build (#185469)
There's some poor formatting, and ClangDocBenchmark references several
targets that are required, but only because they're required for clang-doc
itself. We can just get those requirements from the clangDoc target.
Additionally, we can make sure the benchmark builds as part of testing
when LLVM_INCLUDE_BENCHMARKS is set.
Commit: 6a6564cd1476270e9342b6be0792109516ddd99c
https://github.com/llvm/llvm-project/commit/6a6564cd1476270e9342b6be0792109516ddd99c
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libc/hdr/CMakeLists.txt
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/Elf32_auxv_t.h
A libc/hdr/types/Elf64_auxv_t.h
M libc/include/CMakeLists.txt
M libc/include/elf.yaml
M libc/include/llvm-libc-macros/link-macros.h
M libc/include/llvm-libc-macros/sys-auxv-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/Elf32_auxv_t.h
A libc/include/llvm-libc-types/Elf64_auxv_t.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/auxv.h
Log Message:
-----------
[libc] Add more macro/type declarations to Elf headers. (#185348)
* Add several `AT_` macro values from `<sys/auxv.h>`. In particular,
this allows to make internal Linux auxv header parsing more hermetic by
removing one of Linux header includes.
* Add constants between `DT_ADDRNGLO` and `DT_ADDRNGHI`, in particular
`DT_GNU_HASH`, which is de-facto standard on many platforms.
* Add `Elf32_auxv_t` and `Elf64_auxv_t` types which define the auxv
entries and can be used by VDSO parsing code. Note that this PR doesn't
yet update libc's own Linux auxv header support (in
`src/__support/OSUtil/linux/auxv.h`).
This fixes some of the missing definitions when building code working
with Elf files, such as Abseil's debugging support in
https://github.com/abseil/abseil-cpp/tree/master/absl/debugging/internal.
Commit: a9e457a82f6a349a47bab72a2877b4ea0e321091
https://github.com/llvm/llvm-project/commit/a9e457a82f6a349a47bab72a2877b4ea0e321091
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/RPC.cpp
Log Message:
-----------
[Offload][AMDGPU] Fix RPC server on mixed w32 w64 workloads (#185496)
Summary:
This was a regression from the original LLVM-gpu-loader. We used to
handle `-mwavefrontsize64` correctly in the loader by over-allocating
memory and just leaving the upper 32-bits masked off. In order to handle
this in offload we need to scan loaded kernels to see how much memory we
need to allocate. This should be safe, the protocol is designed to
handle an arbitrary size and worst-case this just wastes space.
Commit: f2dc4897faac3980c810c4bc51a5988a08eb8587
https://github.com/llvm/llvm-project/commit/f2dc4897faac3980c810c4bc51a5988a08eb8587
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/test/Analysis/CostModel/AMDGPU/exp.ll
M llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
M llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
Log Message:
-----------
[AMDGPU] Replace undef with poison in exp/exp2/exp10 cost tests NFC (#185527)
Commit: a8b726ab9d6d024a7971d27771b84b814adbd674
https://github.com/llvm/llvm-project/commit/a8b726ab9d6d024a7971d27771b84b814adbd674
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M flang-rt/lib/runtime/execute.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
Log Message:
-----------
[flang-rt] Need to pad the output of execute_command_line(..., CMDMSG) (#185509)
Previously the error message was copied, but not padded for cases where
the message was shorter than the passed CMDMSG string. Add the padding
and also change the test case to test padding on all platforms.
Commit: 331a91cff8480c50e076735c7cd2db32103c4331
https://github.com/llvm/llvm-project/commit/331a91cff8480c50e076735c7cd2db32103c4331
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
Log Message:
-----------
[NFC][AMDGPU] Add debug print to `AMDGPULowerVGPREncoding.cpp` (#185331)
Commit: 1324ea1b229919310f54c032f7b30c770bce8a3c
https://github.com/llvm/llvm-project/commit/1324ea1b229919310f54c032f7b30c770bce8a3c
Author: Derek Schuff <dschuff at chromium.org>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/simd-memcmp.ll
M llvm/test/CodeGen/WebAssembly/simd-reductions.ll
Log Message:
-----------
[WebAssembly] Fold any/alltrue SIMD boolean reductions with eqz (#184704)
Existing ISel patterns match setne/seteq following SIMD boolean reductions
any_true and all_true, and drop the ones that are redundant (because the
reductions always return 1 or 0). This adds patterns to also produce eqz
instructions instead of a comparison with a const.
Commit: 367569e667dd01d51e755c4cb76dc49de0b8957c
https://github.com/llvm/llvm-project/commit/367569e667dd01d51e755c4cb76dc49de0b8957c
Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AArch64/clmul-fixed.ll
M llvm/test/CodeGen/X86/clmul-vector.ll
Log Message:
-----------
[SelectionDAG] Use ExpandIntRes_CLMUL to expand vector CLMUL via narrower legal types (#184468)
Reuse the ExpandIntRes_CLMUL identity to expand vector
CLMUL/CLMULR/CLMULH on wider element types (vXi16, vXi32, vXi64) by
decomposing into half-element-width operations that eventually reach a
legal CLMUL type.
Three generic strategies in expandCLMUL:
1. Halve: halve element width (e.g. v8i16 -> v8i8 on AArch64)
2. promote to double : zext to wider type if CLMUL is legal there (e.g.
x86)
3. Count widen: pad with undef to double element count (e.g. v4i16 ->
v8i16)
A helper canNarrowCLMULToLegal() guides strategy selection and prevents
circular expansion in the CLMULH bitreverse path.
Also add Custom BITREVERSE lowering for v4i16/v8i16 on AArch64 using
REV16+RBIT, which the CLMULH expansion relies on.
Fixes #183768
Commit: 0b5c16b94710ccf23909153c8d2100a29ea465ae
https://github.com/llvm/llvm-project/commit/0b5c16b94710ccf23909153c8d2100a29ea465ae
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M libclc/opencl/lib/amdgcn/printf/__printf_alloc.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
Log Message:
-----------
[libclc] Replace last of `opencl` atomics with `__scoped_` versions (#185515)
Summary:
These were the only uses of the old atomics. The old definition guards
stay as those prevent us from compiling the unsupported uintptr_t atomic
type on nvptx which does not define it. Could probably be improved
later.
Commit: 982beb1729257e1772bc6ec79ec0282207f2552e
https://github.com/llvm/llvm-project/commit/982beb1729257e1772bc6ec79ec0282207f2552e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/lib/Basic/Targets/SPIR.h
M clang/test/Sema/scoped-atomic-ops.c
Log Message:
-----------
[SPIR] Do not warn on 64-bit atomics (#185502)
Summary:
SPIR-V's Int64Atomics capability is not dependent on its addressing mode
as far as I am aware. These 32-bit SPIR targets already claim to support
the cl_khr_int64 atomics and we already emit 64-bit atomics in the
backend. Additionally, this is already accepted as a hack due to the
fact that the host will increase it in offloading usage. I do not see a
reason to keep these at 32, which causes numerous warnings inside of the
`libclc` build.
Commit: 1b396ee52cdfd3717bfc58676f97bf4e516ef606
https://github.com/llvm/llvm-project/commit/1b396ee52cdfd3717bfc58676f97bf4e516ef606
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fix 6a6564cd1476270e9342b6be0792109516ddd99c
Introduced a new header/dependencies on said header.
Commit: 4095ac92b454393c4a749d2f29565c2fc20af6f6
https://github.com/llvm/llvm-project/commit/4095ac92b454393c4a749d2f29565c2fc20af6f6
Author: Ayokunle Amodu <ayokunle321 at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-bcopy.cpp
Log Message:
-----------
[CIR][CIRGen] Upstream support for `__builtin_bcopy` (#185038)
This adds CIR support for the bcopy builtin.
Commit: 51aad697e5bebcd09c295b63ff7dec5b6ec44d87
https://github.com/llvm/llvm-project/commit/51aad697e5bebcd09c295b63ff7dec5b6ec44d87
Author: Eric Christopher <echristo at gmail.com>
Date: 2026-03-09 (Mon, 09 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/lib/Target/NVPTX/NVPTXDwarfDebug.cpp
M llvm/lib/Target/NVPTX/NVPTXDwarfDebug.h
Log Message:
-----------
[NFC] Migrate NVPTX specific debug info code to separate class
This refactors the dwarf emission code to pull out the rest of the NVPTX specific code into it's own subclass for debug info handling and architecture specific differences.
Tested with ninja check-all on OSX.
Commit: c6bde8318ea7f8b0d95fc26730640dcdc3643d57
https://github.com/llvm/llvm-project/commit/c6bde8318ea7f8b0d95fc26730640dcdc3643d57
Author: Steven Perron <stevenperron at google.com>
Date: 2026-03-10 (Tue, 10 Mar 2026)
Changed paths:
M clang/lib/AST/TypePrinter.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/Texture2D-scalar-AST.hlsl
M clang/test/AST/HLSL/Texture2D-vector-AST.hlsl
M clang/test/AST/HLSL/pch_with_matrix_element_accessor.hlsl
M clang/test/AST/HLSL/pch_with_matrix_single_subscript.hlsl
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
M clang/test/SemaHLSL/BuiltIns/matrix-errors.hlsl
M clang/test/SemaHLSL/Types/BuiltinMatrix/MatrixFloatPrecisionWarnings.hlsl
Log Message:
-----------
[HLSL] Fix interleaved vector and matrix return types in AST dump (#184888)
HLSL vector and matrix types were previously printed with their closing
syntax (', N>') in 'printAfter', causing them to interleave with
function
parameters when used as return types (e.g., 'vector<float (args), 4>').
This change moves the HLSL vector and matrix closing syntax into
'printBefore' when 'UseHLSLTypes' is enabled, ensuring the type is
printed completely before the parameter list.
Note that address space qualifiers are now printed after the type
(e.g., 'vector<float, 4>hlsl_device'). This is because
'canPrefixQualifiers' in 'TypePrinter.cpp' returns false for these
types.
We cannot easily change this to check 'UseHLSLTypes' because
'canPrefixQualifiers' is a static method and does not have access to the
PrintingPolicy at that point.
Fixes interleaved output in HLSL AST tests.
Fixes https://github.com/llvm/llvm-project/issues/114868.
Assisted-by: Gemini
Commit: 44fd3fd710d720bae14dda26ea672f50521933cc
https://github.com/llvm/llvm-project/commit/44fd3fd710d720bae14dda26ea672f50521933cc
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-10 (Tue, 10 Mar 2026)
Changed paths:
A .ci/green-dragon/lldb-ubuntu.groovy
A .ci/green-dragon/lldb-windows.groovy
M .ci/monolithic-windows.sh
A .github/workflows/sycl-tests.yml
M bolt/include/bolt/Core/BinaryFunction.h
R bolt/include/bolt/Passes/ReorderUtils.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
A bolt/test/AArch64/check-symbol-area.s
M bolt/test/max-funcs.test
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-doc/ClangDoc.cpp
M clang-tools-extra/clang-doc/ClangDoc.h
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/MDMustacheGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/head-template.mustache
M clang-tools-extra/clang-doc/assets/navbar-template.mustache
M clang-tools-extra/clang-doc/benchmarks/CMakeLists.txt
M clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
M clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp
R clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
R clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.h
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/performance/UseStdMoveCheck.cpp
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/index/dex/dexp/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/monitor/CMakeLists.txt
M clang-tools-extra/clangd/index/remote/server/CMakeLists.txt
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/missing-std-forward.rst
M clang-tools-extra/docs/clang-tidy/checks/hicpp/ignored-remove-result.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/test/clang-doc/CMakeLists.txt
M clang-tools-extra/test/clang-doc/basic-project.mustache.test
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/utility
M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-startswith.cpp
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/signal-handler-minimal.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler-posix.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-container.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/std-namespace-modification.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-constructor-options.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-include.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage-options.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage.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/cert/uppercase-literal-suffix-integer.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables-mathheader.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward-cxx23.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index-includestyle.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/objc-function-naming.m
M clang-tools-extra/test/clang-tidy/checkers/llvm/include-order.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvmlibc/restrict-system-libc-headers.cpp
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/pass-by-value-macro-header.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-scope-lock-warn-on-using-and-typedef-false.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-no-crash.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-warn-on-single-locks-false.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-custom.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-fmt.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-member.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-absl.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-fmt.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-member.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-custom-view.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-ignored.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view.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
A clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-string-concatenation-strict.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
M clang-tools-extra/test/clang-tidy/checkers/performance/move-constructor-init.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/no-automatic-move-allowed-types.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/type-promotion-in-math-fn-includestyle.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-includestyle.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/use-std-move.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static-deducing-this.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.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-cstr-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr.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/test/clang-tidy/checkers/readability/string-compare-custom-string-classes.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/string-compare.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-cxx23.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-floating-point.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-hexadecimal-floating-point.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-ms.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
M clang/cmake/modules/AddGRPC.cmake
M clang/docs/ClangFormatStyleOptions.rst
A clang/docs/ClangIRABILowering.md
M clang/docs/ReleaseNotes.rst
R clang/docs/ScalableStaticAnalysisFramework/Framework.rst
R clang/docs/ScalableStaticAnalysisFramework/SummaryExtraction.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/SummaryExtractionInternals.rst
A clang/docs/ScalableStaticAnalysisFramework/developer-docs/index.rst
A clang/docs/ScalableStaticAnalysisFramework/index.rst
A clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/TypeSanitizer.rst
M clang/docs/index.rst
M clang/include/clang/Analysis/Scalable/EntityLinker/EntityLinker.h
M clang/include/clang/Analysis/Scalable/EntityLinker/EntitySummaryEncoding.h
M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
M clang/include/clang/Analysis/Scalable/Support/ErrorBuilder.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Sarif.h
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Analysis/FixitUtil.cpp
M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
M clang/lib/Analysis/Scalable/CMakeLists.txt
M clang/lib/Analysis/Scalable/EntityLinker/EntityLinker.cpp
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
A clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.h
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/Sarif.cpp
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuilder.h
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenFunction.cpp
A clang/lib/CodeGen/QualTypeMapper.cpp
A clang/lib/CodeGen/QualTypeMapper.h
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Headers/amdhsa_abi.h
M clang/lib/Headers/gpuintrin.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/AST/ByteCode/memberpointers.cpp
M clang/test/AST/ByteCode/new-delete.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/Texture2D-scalar-AST.hlsl
A clang/test/AST/HLSL/Texture2D-shorthand-AST.hlsl
M clang/test/AST/HLSL/Texture2D-vector-AST.hlsl
M clang/test/AST/HLSL/pch_with_matrix_element_accessor.hlsl
M clang/test/AST/HLSL/pch_with_matrix_single_subscript.hlsl
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-1.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-2.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-badext.txt
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-empty.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-invalid-entity-id-multikey.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-invalid-entity-id-ref.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-invalid-entity-id-value.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-malformed.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-missing-fields.json
A clang/test/Analysis/Scalable/ssaf-linker/Inputs/tu-noext
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-1+2.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-1.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-2.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lu-empty.json
A clang/test/Analysis/Scalable/ssaf-linker/cli.test
A clang/test/Analysis/Scalable/ssaf-linker/help.test
A clang/test/Analysis/Scalable/ssaf-linker/io.test
A clang/test/Analysis/Scalable/ssaf-linker/linking-errors.test
A clang/test/Analysis/Scalable/ssaf-linker/linking.test
A clang/test/Analysis/Scalable/ssaf-linker/time.test
A clang/test/Analysis/Scalable/ssaf-linker/validation-errors-permissions.test
A clang/test/Analysis/Scalable/ssaf-linker/validation-errors.test
A clang/test/Analysis/Scalable/ssaf-linker/verbose.test
A clang/test/Analysis/Scalable/ssaf-linker/version.test
M clang/test/Analysis/lit.local.cfg
M clang/test/CIR/CodeGen/array-ctor.cpp
M clang/test/CIR/CodeGen/array-dtor.cpp
M clang/test/CIR/CodeGen/array.cpp
M clang/test/CIR/CodeGen/assume-attr.cpp
M clang/test/CIR/CodeGen/binop.cpp
M clang/test/CIR/CodeGen/builtins-x86.c
M clang/test/CIR/CodeGen/clear-cache.c
M clang/test/CIR/CodeGen/cmp.cpp
M clang/test/CIR/CodeGen/complex-cast.cpp
M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
M clang/test/CIR/CodeGen/complex-mul-div.cpp
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/cxx-default-init.cpp
M clang/test/CIR/CodeGen/destructors.cpp
M clang/test/CIR/CodeGen/dynamic-cast-exact.cpp
M clang/test/CIR/CodeGen/dynamic-cast.cpp
M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
M clang/test/CIR/CodeGen/forrange.cpp
M clang/test/CIR/CodeGen/global-array-dtor.cpp
M clang/test/CIR/CodeGen/global-init.cpp
A clang/test/CIR/CodeGen/instantiate-init.cpp
M clang/test/CIR/CodeGen/local-vars.cpp
M clang/test/CIR/CodeGen/loop.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/pack-indexing.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member-cast.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member-cmp.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
M clang/test/CIR/CodeGen/static-local.cpp
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/CodeGen/ternary.cpp
M clang/test/CIR/CodeGen/throws.cpp
M clang/test/CIR/CodeGen/thunks.cpp
R clang/test/CIR/CodeGen/try-catch-tmp.cpp
M clang/test/CIR/CodeGen/try-catch.cpp
A clang/test/CIR/CodeGen/virtual-fn-calls-eh.cpp
M clang/test/CIR/CodeGen/virtual-function-calls.cpp
M clang/test/CIR/CodeGen/vla.c
M clang/test/CIR/CodeGen/vtt.cpp
M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512dq-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c
A clang/test/CIR/CodeGenBuiltins/builtin-bcopy.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-constant-p.c
M clang/test/CIR/CodeGenCXX/typeid-should-throw.cpp
M clang/test/CIR/CodeGenCXX/typeid.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-read.cpp
M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
M clang/test/CIR/IR/cmp.cir
A clang/test/CIR/IR/invalid-const-array.cir
M clang/test/CIR/IR/throw.cir
M clang/test/CIR/Lowering/goto.cir
M clang/test/CIR/Lowering/switch.cir
M clang/test/CIR/Transforms/eh-abi-lowering-itanium.cir
M clang/test/CIR/Transforms/flatten-try-op.cir
A clang/test/CIR/Transforms/pure-ptr-arithmetic.cir
M clang/test/CIR/Transforms/switch.cir
M clang/test/CIR/Transforms/ternary.cir
M clang/test/CMakeLists.txt
M clang/test/CodeGen/2005-01-02-ConstantInits.c
M clang/test/CodeGen/AArch64/neon/fullfp16.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
M clang/test/CodeGen/AArch64/varargs.c
M clang/test/CodeGen/PowerPC/builtins-amo-err.c
M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
M clang/test/CodeGen/PowerPC/ppc-emmintrin.c
M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c
M clang/test/CodeGen/PowerPC/ppc32-dwarf.c
M clang/test/CodeGen/PowerPC/ppc64-dwarf.c
M clang/test/CodeGen/RISCV/builtin-cpu-is.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/non-overloaded/vdota4us_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/non-policy/overloaded/vdota4us_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/non-overloaded/vdota4us_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4su_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vv.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4u_vx.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvdot4a8i/policy/overloaded/vdota4us_vx.c
M clang/test/CodeGen/Sparc/sparcv9-dwarf.c
M clang/test/CodeGen/SystemZ/align-systemz-02.c
M clang/test/CodeGen/X86/avx10_2bf16-builtins.c
M clang/test/CodeGen/X86/va-arg-sse.c
M clang/test/CodeGen/aix-builtin-cpu-is.c
M clang/test/CodeGen/aix-builtin-cpu-supports.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/amdgpu-abi-version.c
M clang/test/CodeGen/attr-counted-by-for-pointers.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/attr-cpuspecific.c
M clang/test/CodeGen/attr-target-clones-riscv.c
M clang/test/CodeGen/attr-target-clones.c
M clang/test/CodeGen/attr-target-version-riscv.c
A clang/test/CodeGen/bitcast-based-lvalue.c
M clang/test/CodeGen/builtin-cpu-is.c
M clang/test/CodeGen/builtin-cpu-supports.c
M clang/test/CodeGen/builtin_vectorelements.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset-in-offsetof-idiom.c
M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
M clang/test/CodeGen/clear_cache.c
M clang/test/CodeGen/complex-strictfp.c
M clang/test/CodeGen/complex.c
A clang/test/CodeGen/distributed-thin-lto/pass-plugin.ll
M clang/test/CodeGen/mips-inline-asm-modifiers.c
M clang/test/CodeGen/multi-aix-builtin-cpu-supports.c
M clang/test/CodeGen/object-size.c
M clang/test/CodeGen/packed-nest-unpacked.c
M clang/test/CodeGen/ptrauth-function-init.c
M clang/test/CodeGen/ptrauth-restricted-intptr-qualifier.c
M clang/test/CodeGen/unaligned-expr.c
M clang/test/CodeGen/union-tbaa1.c
M clang/test/CodeGen/volatile-1.c
M clang/test/CodeGen/volatile-2.c
M clang/test/CodeGen/volatile-complex.c
M clang/test/CodeGenCUDA/address-spaces.cu
M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
M clang/test/CodeGenCUDA/convergent.cu
M clang/test/CodeGenCUDA/incomplete-func-ptr-type.cu
M clang/test/CodeGenCUDA/managed-var.cu
M clang/test/CodeGenCXX/2011-12-19-init-list-ctor.cpp
M clang/test/CodeGenCXX/apple-kext-indirect-call-2.cpp
M clang/test/CodeGenCXX/apple-kext-indirect-call.cpp
M clang/test/CodeGenCXX/apple-kext-indirect-virtual-dtor-call.cpp
A clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
A clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
M clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
M clang/test/CodeGenCXX/attr-target-version-riscv.cpp
M clang/test/CodeGenCXX/blocks-cxx11.cpp
M clang/test/CodeGenCXX/builtin-invoke.cpp
M clang/test/CodeGenCXX/catch-nullptr-and-nonzero-offset-in-offsetof-idiom.cpp
M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist-pr12086.cpp
M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist.cpp
M clang/test/CodeGenCXX/cxx11-initializer-aggregate.cpp
M clang/test/CodeGenCXX/cxx1y-initializer-aggregate.cpp
M clang/test/CodeGenCXX/cxx1z-decomposition.cpp
M clang/test/CodeGenCXX/cxx1z-initializer-aggregate.cpp
M clang/test/CodeGenCXX/cxx2a-consteval.cpp
M clang/test/CodeGenCXX/finegrain-bitfield-access.cpp
M clang/test/CodeGenCXX/for-range.cpp
M clang/test/CodeGenCXX/forward-declare-as-array-elem.cpp
M clang/test/CodeGenCXX/global-array-destruction.cpp
M clang/test/CodeGenCXX/inheriting-constructor.cpp
M clang/test/CodeGenCXX/labeled-break-continue.cpp
A clang/test/CodeGenCXX/microsoft-abi-diamond-template-multiple-vbptrs.cpp
M clang/test/CodeGenCXX/ms-inline-asm-fields.cpp
M clang/test/CodeGenCXX/no-odr-use.cpp
M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call.cpp
M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
M clang/test/CodeGenCXX/temporaries.cpp
M clang/test/CodeGenCXX/ubsan-nullability-arg.cpp
M clang/test/CodeGenCXX/volatile-1.cpp
M clang/test/CodeGenCXX/vtt-address-space.cpp
M clang/test/CodeGenHIP/amdgpu-barrier-type.hip
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenHIP/hip_weak_alias.cpp
A clang/test/CodeGenHIP/placement-new-addrspace.hip
A clang/test/CodeGenHIP/sret-nontrivial-copyable.hip
M clang/test/CodeGenHLSL/ArrayAssignable.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
A clang/test/CodeGenHLSL/builtins/mul.hlsl
A clang/test/CodeGenHLSL/resources/Texture2D-default-explicit-binding.hlsl
A clang/test/CodeGenHLSL/resources/Texture2D-default.hlsl
A clang/test/CodeGenHLSL/resources/Texture2D-shorthand-contexts.hlsl
M clang/test/CodeGenHLSL/resources/cbuffer_geps.hlsl
M clang/test/CodeGenObjC/super-message-fragileabi.m
A clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
M clang/test/CodeGenOpenCL/convergent.cl
A clang/test/DebugInfo/CXX/debug-info-constexpr-array.cpp
M clang/test/DebugInfo/KeyInstructions/complex.c
M clang/test/Driver/wasm-features.c
A clang/test/Frontend/Inputs/expected-sarif/sarif-diagnostics.cpp.sarif
A clang/test/Frontend/Inputs/expected-sarif/sarif-legacy-stable-ids.c.sarif
M clang/test/Frontend/sarif-diagnostics.cpp
A clang/test/Frontend/sarif-legacy-stable-ids.c
M clang/test/Headers/amdhsa_abi.cl
M clang/test/Headers/gpuintrin.c
M clang/test/Lexer/cxx20-module-directive.cpp
A clang/test/Modules/diag-pragma-nonaffecting.cpp
M clang/test/Modules/templates.mm
M clang/test/OpenMP/amdgcn_sret_ctor.cpp
M clang/test/OpenMP/atomic_capture_codegen.cpp
M clang/test/OpenMP/atomic_read_codegen.c
M clang/test/OpenMP/atomic_update_codegen.cpp
M clang/test/OpenMP/atomic_write_codegen.c
M clang/test/OpenMP/for_firstprivate_codegen.cpp
M clang/test/OpenMP/for_linear_codegen.cpp
M clang/test/OpenMP/for_private_codegen.cpp
M clang/test/OpenMP/for_reduction_codegen.cpp
M clang/test/OpenMP/parallel_copyin_codegen.cpp
M clang/test/OpenMP/parallel_for_linear_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_firstprivate_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_lastprivate_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/parallel_master_taskloop_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/parallel_private_codegen.cpp
M clang/test/OpenMP/parallel_reduction_codegen.cpp
M clang/test/OpenMP/scope_codegen.cpp
M clang/test/OpenMP/sections_firstprivate_codegen.cpp
M clang/test/OpenMP/sections_private_codegen.cpp
M clang/test/OpenMP/sections_reduction_codegen.cpp
M clang/test/OpenMP/single_codegen.cpp
M clang/test/OpenMP/single_firstprivate_codegen.cpp
M clang/test/OpenMP/single_private_codegen.cpp
M clang/test/OpenMP/target_data_codegen.cpp
M clang/test/OpenMP/target_enter_data_codegen.cpp
M clang/test/OpenMP/target_enter_data_depend_codegen.cpp
M clang/test/OpenMP/target_exit_data_codegen.cpp
M clang/test/OpenMP/target_exit_data_depend_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_map_codegen_21.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_update_codegen.cpp
M clang/test/OpenMP/target_update_depend_codegen.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/threadprivate_codegen.cpp
M clang/test/Preprocessor/wasm-target-features.c
M clang/test/Sema/Inputs/lifetime-analysis.h
M clang/test/Sema/attr-overflow-behavior-constexpr.cpp
M clang/test/Sema/attr-overflow-behavior-templates.cpp
M clang/test/Sema/attr-overflow-behavior.c
M clang/test/Sema/attr-overflow-behavior.cpp
M clang/test/Sema/scoped-atomic-ops.c
M clang/test/Sema/warn-lifetime-safety.cpp
A clang/test/SemaCUDA/dtor-constexpr-virtual-base.cu
M clang/test/SemaCXX/new-delete.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-parm-unsupported.cpp
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
A clang/test/SemaHLSL/BuiltIns/RWStructuredBuffers.hlsl
M clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
M clang/test/SemaHLSL/BuiltIns/matrix-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/mul-errors.hlsl
M clang/test/SemaHLSL/Resources/static_resources.hlsl
M clang/test/SemaHLSL/Types/BuiltinMatrix/MatrixFloatPrecisionWarnings.hlsl
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
M clang/test/TableGen/DiagnosticBase.inc
M clang/test/TableGen/deferred-diag.td
M clang/test/lit.cfg.py
M clang/tools/CMakeLists.txt
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
M clang/tools/diagtool/DiagnosticNames.cpp
A clang/tools/ssaf-linker/CMakeLists.txt
A clang/tools/ssaf-linker/SSAFLinker.cpp
M clang/unittests/Analysis/Scalable/EntityLinkerTest.cpp
M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.cpp
M 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/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/builtins/cpu_model/riscv.c
M compiler-rt/lib/scudo/standalone/mem_map_fuchsia.cpp
M compiler-rt/lib/scudo/standalone/primary64.h
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_flags.inc
A compiler-rt/test/tysan/halt_on_error.c
M flang-rt/CMakeLists.txt
M flang-rt/README.md
M flang-rt/cmake/modules/AddFlangRTOffload.cmake
M flang-rt/include/flang-rt/runtime/environment.h
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/cuda/memory.cpp
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/execute.cpp
M flang-rt/lib/runtime/external-unit.cpp
M flang-rt/lib/runtime/pseudo-unit.cpp
M flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/CMakeLists.txt
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang/docs/GettingStarted.md
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Lower/LoweringOptions.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/include/flang/Optimizer/HLFIR/Passes.h
M flang/include/flang/Optimizer/HLFIR/Passes.td
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Runtime/CUDA/common.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Semantics/semantics.h
M flang/include/flang/Semantics/tools.h
A flang/include/flang/Support/FPMaxminBehavior.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/HlfirIntrinsics.cpp
M flang/lib/Lower/LoweringOptions.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Support/CMakeLists.txt
A flang/lib/Support/FPMaxminBehavior.cpp
A flang/test/Driver/ffp-maxmin-behavior.f90
M flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
M flang/test/Fir/convert-nontemporal-to-llvm.fir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/embox-char.fir
M flang/test/Fir/polymorphic.fir
M flang/test/Fir/tbaa-codegen-records.fir
M flang/test/Fir/tbaa.fir
A flang/test/HLFIR/simplify-hlfir-intrinsics-maxmin.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
M flang/test/Integration/OpenMP/private-global.f90
M flang/test/Integration/unroll-loops.f90
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
A flang/test/Lower/HLFIR/cshift-optional-dim.f90
M flang/test/Lower/HLFIR/unroll-loops.fir
M flang/test/Lower/Intrinsics/btest.f90
M flang/test/Lower/Intrinsics/c_associated.f90
M flang/test/Lower/Intrinsics/c_funloc.f90
M flang/test/Lower/Intrinsics/cmplx.f90
M flang/test/Lower/Intrinsics/cpu_time.f90
M flang/test/Lower/Intrinsics/date_and_time.f90
M flang/test/Lower/Intrinsics/dconjg.f90
M flang/test/Lower/Intrinsics/dim.f90
M flang/test/Lower/Intrinsics/dimag.f90
M flang/test/Lower/Intrinsics/dprod.f90
A flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
R flang/test/Lower/OpenMP/Todo/affinity-clause.f90
M flang/test/Lower/OpenMP/delayed-privatization-allocatable-firstprivate.f90
M flang/test/Lower/OpenMP/task-affinity.f90
A flang/test/Lower/fp-maxmin-behavior.f90
M flang/test/Lower/location.f90
A flang/test/Lower/pdt-struct-constructor-init.f90
M flang/test/Semantics/cuf23.cuf
M flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
A flang/test/Transforms/omp-map-info-finalization-usm.fir
M flang/tools/bbc/bbc.cpp
M flang/tools/tco/tco.cpp
M libc/Maintainers.rst
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.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/linux/x86_64/headers.txt
A libc/docs/Helpers/Styles.rst
R libc/docs/README.txt
A libc/docs/_static/copybutton.css
A libc/docs/_static/copybutton.js
M libc/docs/_static/custom.css
M libc/docs/conf.py
A libc/docs/dev/building_docs.rst
M libc/docs/dev/index.rst
M libc/docs/dev/undefined_behavior.rst
M libc/docs/full_cross_build.rst
M libc/docs/full_host_build.rst
M libc/docs/gpu/building.rst
M libc/docs/gpu/motivation.rst
M libc/docs/gpu/rpc.rst
M libc/docs/gpu/support.rst
M libc/docs/gpu/testing.rst
M libc/docs/gpu/using.rst
M libc/docs/headers/math/index.rst
M libc/docs/index.rst
M libc/docs/overlay_mode.rst
M libc/docs/porting.rst
M libc/docs/uefi/building.rst
M libc/docs/uefi/support.rst
M libc/docs/uefi/testing.rst
M libc/docs/uefi/using.rst
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_socket_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/Elf32_auxv_t.h
A libc/hdr/types/Elf64_auxv_t.h
A libc/hdr/types/struct_sockaddr_un.h
M libc/include/CMakeLists.txt
M libc/include/elf.yaml
M libc/include/llvm-libc-macros/link-macros.h
M libc/include/llvm-libc-macros/sys-auxv-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/Elf32_auxv_t.h
A libc/include/llvm-libc-types/Elf64_auxv_t.h
M libc/include/sys/socket.yaml
A libc/include/sys/un.yaml
M libc/src/__support/GPU/utils.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/auxv.h
M libc/src/string/strcmp.cpp
M libc/src/string/strcoll.cpp
M libc/src/string/strncmp.cpp
M libc/src/wctype/CMakeLists.txt
A libc/src/wctype/iswdigit.cpp
A libc/src/wctype/iswdigit.h
M libc/test/src/string/strcmp_test.cpp
M libc/test/src/string/strcoll_test.cpp
M libc/test/src/string/strncmp_test.cpp
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/test/src/sys/socket/linux/send_recv_test.cpp
M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
M libc/test/src/sys/time/utimes_test.cpp
M libc/test/src/time/mktime_test.cpp
M libc/test/src/wctype/CMakeLists.txt
M libc/test/src/wctype/iswalpha_test.cpp
A libc/test/src/wctype/iswdigit_test.cpp
M libclc/CMakeLists.txt
A libclc/clc/include/clc/amdgpu/amdgpu_utils.h
A libclc/clc/include/clc/collective/clc_work_group_any_all.h
A libclc/clc/include/clc/collective/clc_work_group_broadcast.h
A libclc/clc/include/clc/collective/clc_work_group_broadcast.inc
A libclc/clc/include/clc/collective/clc_work_group_reduce.h
A libclc/clc/include/clc/collective/clc_work_group_reduce.inc
A libclc/clc/include/clc/subgroup/clc_sub_group_broadcast.h
A libclc/clc/include/clc/subgroup/clc_sub_group_reduce.h
A libclc/clc/include/clc/subgroup/clc_sub_group_reduce.inc
A libclc/clc/include/clc/subgroup/clc_subgroup.h
A libclc/clc/include/clc/subgroup/clc_subgroup_broadcast.inc
A libclc/clc/include/clc/subgroup/clc_subgroup_broadcast_scalarize.inc
A libclc/clc/include/clc/synchronization/clc_sub_group_barrier.h
M libclc/clc/include/clc/synchronization/clc_work_group_barrier.h
A libclc/clc/include/clc/workitem/clc_get_global_linear_id.h
M libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h
A libclc/clc/lib/amdgcn/CMakeLists.txt
R libclc/clc/lib/amdgcn/SOURCES
A libclc/clc/lib/amdgcn/subgroup/sub_group_broadcast.cl
A libclc/clc/lib/amdgcn/subgroup/sub_group_reduce.cl
A libclc/clc/lib/amdgcn/subgroup/subgroup.cl
A libclc/clc/lib/amdgcn/synchronization/clc_sub_group_barrier.cl
M libclc/clc/lib/amdgcn/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/amdgcn/workitem/clc_get_enqueued_local_size.cl
M libclc/clc/lib/amdgcn/workitem/clc_get_global_size.cl
M libclc/clc/lib/amdgcn/workitem/clc_get_local_size.cl
M libclc/clc/lib/amdgcn/workitem/clc_get_max_sub_group_size.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_num_groups.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_num_sub_groups.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_sub_group_id.cl
A libclc/clc/lib/amdgcn/workitem/clc_get_sub_group_size.cl
A libclc/clc/lib/amdgpu/CMakeLists.txt
R libclc/clc/lib/amdgpu/SOURCES
A libclc/clc/lib/clspv/CMakeLists.txt
R libclc/clc/lib/clspv/SOURCES
A libclc/clc/lib/generic/CMakeLists.txt
R libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/collective/clc_work_group_any_all.cl
A libclc/clc/lib/generic/collective/clc_work_group_broadcast.cl
A libclc/clc/lib/generic/collective/clc_work_group_broadcast.inc
A libclc/clc/lib/generic/collective/clc_work_group_reduce.cl
A libclc/clc/lib/generic/collective/clc_work_group_reduce.inc
A libclc/clc/lib/generic/subgroup/sub_group_barrier.cl
A libclc/clc/lib/generic/workitem/clc_get_global_id.cl
A libclc/clc/lib/generic/workitem/clc_get_global_linear_id.cl
M libclc/clc/lib/generic/workitem/clc_get_local_linear_id.cl
A libclc/clc/lib/ptx-nvidiacl/CMakeLists.txt
R libclc/clc/lib/ptx-nvidiacl/SOURCES
M libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl
A libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_size.cl
A libclc/clc/lib/spirv/CMakeLists.txt
R libclc/clc/lib/spirv/SOURCES
M libclc/cmake/modules/AddLibclc.cmake
A libclc/cmake/modules/CMakeCLCCompiler.cmake.in
A libclc/cmake/modules/CMakeCLCCompilerTest.cl
A libclc/cmake/modules/CMakeCLCInformation.cmake
A libclc/cmake/modules/CMakeDetermineCLCCompiler.cmake
A libclc/cmake/modules/CMakeTestCLCCompiler.cmake
R libclc/opencl/lib/amdgcn-amdhsa/SOURCES
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_local_size.cl
R libclc/opencl/lib/amdgcn-amdhsa/workitem/get_num_groups.cl
A libclc/opencl/lib/amdgcn/CMakeLists.txt
R libclc/opencl/lib/amdgcn/SOURCES
A libclc/opencl/lib/amdgcn/async/wait_group_events.cl
R libclc/opencl/lib/amdgcn/mem_fence/fence.cl
A libclc/opencl/lib/amdgcn/printf/__printf_alloc.cl
R libclc/opencl/lib/amdgcn/subgroup/subgroup.cl
R libclc/opencl/lib/amdgcn/synchronization/sub_group_barrier.cl
R libclc/opencl/lib/amdgcn/workitem/get_global_offset.cl
R libclc/opencl/lib/amdgcn/workitem/get_global_size.cl
R libclc/opencl/lib/amdgcn/workitem/get_group_id.cl
R libclc/opencl/lib/amdgcn/workitem/get_local_id.cl
R libclc/opencl/lib/amdgcn/workitem/get_local_size.cl
R libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl
R libclc/opencl/lib/amdgcn/workitem/get_work_dim.cl
A libclc/opencl/lib/clspv/CMakeLists.txt
R libclc/opencl/lib/clspv/SOURCES
A libclc/opencl/lib/generic/CMakeLists.txt
R libclc/opencl/lib/generic/SOURCES
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
A libclc/opencl/lib/generic/collective/work_group_any_all.cl
A libclc/opencl/lib/generic/collective/work_group_broadcast.cl
A libclc/opencl/lib/generic/collective/work_group_broadcast.inc
A libclc/opencl/lib/generic/collective/work_group_reduce.cl
A libclc/opencl/lib/generic/collective/work_group_reduce.inc
A libclc/opencl/lib/generic/mem_fence/fence.cl
A libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
A libclc/opencl/lib/generic/subgroup/sub_group_broadcast.inc
A libclc/opencl/lib/generic/subgroup/sub_group_reduce.cl
A libclc/opencl/lib/generic/subgroup/sub_group_reduce.inc
A libclc/opencl/lib/generic/subgroup/subgroup.cl
A libclc/opencl/lib/generic/synchronization/sub_group_barrier.cl
M libclc/opencl/lib/generic/synchronization/work_group_barrier.cl
M libclc/opencl/lib/generic/workitem/get_global_id.cl
A libclc/opencl/lib/generic/workitem/get_global_linear_id.cl
A libclc/opencl/lib/generic/workitem/get_global_offset.cl
M libclc/opencl/lib/generic/workitem/get_global_size.cl
A libclc/opencl/lib/generic/workitem/get_group_id.cl
A libclc/opencl/lib/generic/workitem/get_local_id.cl
A libclc/opencl/lib/generic/workitem/get_local_linear_id.cl
A libclc/opencl/lib/generic/workitem/get_local_size.cl
A libclc/opencl/lib/generic/workitem/get_num_groups.cl
A libclc/opencl/lib/generic/workitem/get_work_dim.cl
R libclc/opencl/lib/ptx-nvidiacl/SOURCES
R libclc/opencl/lib/ptx-nvidiacl/mem_fence/fence.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_global_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_group_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_linear_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_local_size.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_max_sub_group_size.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_groups.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_num_sub_groups.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_local_id.cl
R libclc/opencl/lib/ptx-nvidiacl/workitem/get_sub_group_size.cl
A libclc/opencl/lib/spirv/CMakeLists.txt
R libclc/opencl/lib/spirv/SOURCES
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/include/__functional/function.h
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__iterator/wrap_iter.h
M libcxx/include/__type_traits/strip_signature.h
M libcxx/include/__vector/vector.h
M libcxx/include/future
M libcxx/include/optional
M libcxx/include/string
M libcxx/include/variant
M libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
M libcxx/test/std/utilities/variant/variant.relops/relops.pass.cpp
M libcxx/utils/ci/docker/docker-compose.yml
M libcxx/utils/ci/docker/linux-builder-base.dockerfile
M libcxx/utils/ci/lnt/run-benchmarks
M lld/ELF/LTO.cpp
M lld/MachO/LTO.cpp
M lldb/cmake/modules/AddLLDB.cmake
M lldb/examples/python/formatter_bytecode.py
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/CommandObjectThread.cpp
M lldb/source/Commands/CommandObjectType.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/EmulateInstruction.cpp
M lldb/source/Core/Highlighter.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/DataFormatters/FormatManager.cpp
M lldb/source/Expression/REPL.cpp
M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp
M lldb/source/Host/windows/ProcessLauncherWindows.cpp
M lldb/source/Host/windows/PseudoConsole.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp
M lldb/source/Plugins/DynamicLoader/wasm-DYLD/DynamicLoaderWasmDYLD.cpp
M lldb/source/Plugins/DynamicLoader/wasm-DYLD/DynamicLoaderWasmDYLD.h
M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommandObjectCPlusPlus.cpp
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommandObjectCPlusPlus.h
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/CMakeLists.txt
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
R lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
A lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteMacOSX.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
M lldb/source/Plugins/REPL/Clang/CMakeLists.txt
M lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp
M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp
M lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Symbol/ObjectContainer.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Symbol/SaveCoreOptions.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolVendor.cpp
M lldb/source/Symbol/TypeSystem.cpp
M lldb/source/Target/ABI.cpp
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/JITLoader.cpp
M lldb/source/Target/Language.cpp
M lldb/source/Target/LanguageRuntime.cpp
M lldb/source/Target/MemoryHistory.cpp
M lldb/source/Target/OperatingSystem.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SyntheticFrameProvider.cpp
M lldb/source/Target/SystemRuntime.cpp
M lldb/source/Target/UnwindAssembly.cpp
M lldb/test/API/api/command-return-object/main.cpp
M lldb/test/API/api/multithreaded/driver.cpp.template
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/Makefile
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/MyStringFormatter.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/TestSyntheticOneLineSummaries.py
A lldb/test/API/functionalities/data-formatter/synth_oneline_summaries/main.c
A lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatter.txt
M lldb/test/Shell/ScriptInterpreter/Python/bytecode.test
A lldb/test/Shell/ScriptInterpreter/Python/python-bytecode.test
M lldb/tools/lldb-dap/Handler/ExceptionInfoRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-test/SystemInitializerTest.cpp
M lldb/unittests/Core/PluginManagerTest.cpp
M lldb/unittests/Platform/CMakeLists.txt
M lldb/unittests/Platform/PlatformDarwinTest.cpp
M lldb/unittests/Process/ProcessTraceTest.cpp
M lldb/unittests/Target/LocateModuleCallbackTest.cpp
M llvm/CMakeLists.txt
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CommandGuide/llubi.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/examples/Kaleidoscope/Chapter3/toy.cpp
M llvm/include/llvm/ADT/StringSwitch.h
M llvm/include/llvm/Analysis/Loads.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
M llvm/include/llvm/CodeGen/MIRYamlMapping.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/include/llvm/LTO/Config.h
M llvm/include/llvm/MC/MCSymbolGOFF.h
M llvm/include/llvm/Support/DivisionByConstantInfo.h
M llvm/include/llvm/Support/ModRef.h
M llvm/include/llvm/Support/UniqueBBID.h
M llvm/include/llvm/Target/TargetMacroFusion.td
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/IVDescriptors.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/CodeGen/IfConversion.cpp
M llvm/lib/CodeGen/InsertCodePrefetch.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/MC/MCAsmInfoGOFF.cpp
M llvm/lib/Support/DivisionByConstantInfo.cpp
M llvm/lib/Support/JSON.cpp
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/TableGen/TGParser.h
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN1.td
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/R600Subtarget.h
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPDInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/A15SDOptimizer.cpp
M llvm/lib/Target/ARM/ARM.h
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMCallLowering.cpp
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/ARMParallelDSP.cpp
A llvm/lib/Target/ARM/ARMPassRegistry.def
M llvm/lib/Target/ARM/ARMSLSHardening.cpp
M llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.h
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp
M llvm/lib/Target/ARM/MLxExpansionPass.cpp
M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
M llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
M llvm/lib/Target/ARM/MVETailPredication.cpp
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/ARM/Utils/ARMBaseInfo.cpp
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXDwarfDebug.cpp
M llvm/lib/Target/NVPTX/NVPTXDwarfDebug.h
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvdot4a8i.td
M llvm/lib/Target/RISCV/RISCVMacroFusion.td
M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/CMakeLists.txt
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrAVX10.td
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
M llvm/lib/Target/X86/X86InstrMMX.td
M llvm/lib/Target/X86/X86InstrRAOINT.td
M llvm/lib/Target/X86/X86InstrTSX.td
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.h
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/BasicAA/featuretest.ll
M llvm/test/Analysis/CostModel/AMDGPU/exp.ll
M llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
M llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
A llvm/test/Analysis/CostModel/RISCV/extract-last-active.ll
M llvm/test/Analysis/DDG/basic-b.ll
M llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
M llvm/test/Analysis/DependenceAnalysis/BasePtrBug.ll
M llvm/test/Analysis/DependenceAnalysis/DADelin.ll
M llvm/test/Analysis/DependenceAnalysis/DifferentOffsets.ll
M llvm/test/Analysis/DependenceAnalysis/MIVCheckConst.ll
M llvm/test/Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll
M llvm/test/Analysis/DependenceAnalysis/Preliminary.ll
M llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
M llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheck.ll
M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
M llvm/test/Analysis/DependenceAnalysis/SymbolicRDIV.ll
M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
M llvm/test/Analysis/DependenceAnalysis/WeakCrossingSIV.ll
M llvm/test/Analysis/DependenceAnalysis/WeakZeroDstSIV.ll
M llvm/test/Analysis/DependenceAnalysis/WeakZeroSrcSIV.ll
M llvm/test/Analysis/DependenceAnalysis/becount-couldnotcompute.ll
M llvm/test/Analysis/DependenceAnalysis/exact-rdiv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-addrec-wrap.ll
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
M llvm/test/CodeGen/AArch64/bf16-imm.ll
M llvm/test/CodeGen/AArch64/clmul-fixed.ll
M llvm/test/CodeGen/AArch64/f16-imm.ll
A llvm/test/CodeGen/AArch64/f16f32dot-fixed-length-fdot.ll
M llvm/test/CodeGen/AArch64/fabs-combine.ll
M llvm/test/CodeGen/AArch64/fdiv-const.ll
M llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
A llvm/test/CodeGen/AArch64/framelayout-fpr128-csr.ll
A llvm/test/CodeGen/AArch64/framelayout-fpr128-spill.mir
M llvm/test/CodeGen/AArch64/half-precision-signof-no-assert.ll
M llvm/test/CodeGen/AArch64/isinf.ll
M llvm/test/CodeGen/AArch64/known-never-nan.ll
M llvm/test/CodeGen/AArch64/movi64_sve.ll
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sme-aarch64-svcount-O3.ll
M llvm/test/CodeGen/AArch64/stack-tagging-split-lifetime.ll
M llvm/test/CodeGen/AArch64/sve-pred-selectop.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
M llvm/test/CodeGen/AArch64/sve2p1-fixed-length-fdot.ll
A llvm/test/CodeGen/AArch64/udiv-const-optimization.ll
M llvm/test/CodeGen/AArch64/urem-lkk.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn-exp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-max-num-workgroups-load-annotate.ll
A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn-codegen.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
A llvm/test/CodeGen/AMDGPU/asyncmark-waitcnt.mir
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-block-count.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.chain.arg.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
M llvm/test/CodeGen/AMDGPU/remat-fp64-constants.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-addrspacecast.ll
M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/vgpr-limit-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
M llvm/test/CodeGen/ARM/ARMLoadStoreDBG.mir
M llvm/test/CodeGen/ARM/prera-ldst-aliasing.mir
A llvm/test/CodeGen/DirectX/matrix-multiply.ll
M llvm/test/CodeGen/Hexagon/autohvx/vector-align-tbaa.ll
A llvm/test/CodeGen/MIR/Generic/prefetch-targets-error.mir
A llvm/test/CodeGen/MIR/Generic/prefetch-targets.mir
M llvm/test/CodeGen/Mips/optimizeAndPlusShift.ll
M llvm/test/CodeGen/PowerPC/amo-enable.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
M llvm/test/CodeGen/RISCV/features-info.ll
R llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
R llvm/test/CodeGen/RISCV/intrinsic-cttz-elts.ll
M llvm/test/CodeGen/RISCV/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
M llvm/test/CodeGen/RISCV/macro-fusions.mir
M llvm/test/CodeGen/RISCV/rv32p.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
A llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-elts.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4su.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4u.ll
M llvm/test/CodeGen/RISCV/rvv/vdota4us.ll
A llvm/test/CodeGen/RISCV/udiv-const-optimization.ll
M llvm/test/CodeGen/RISCV/urem-lkk.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/SPV_ALTERA_arbitrary_precision_integers.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test_extended.ll
R llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_arbitrary_precision_integers.ll
M llvm/test/CodeGen/SystemZ/zos-func-alias.ll
M llvm/test/CodeGen/SystemZ/zos-section-1.ll
M llvm/test/CodeGen/SystemZ/zos-symbol-1.ll
M llvm/test/CodeGen/SystemZ/zos-symbol-2.ll
M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
M llvm/test/CodeGen/Thumb2/mve-minmax.ll
M llvm/test/CodeGen/Thumb2/mve-pred-selectop.ll
M llvm/test/CodeGen/Thumb2/mve-pred-selectop2.ll
M llvm/test/CodeGen/Thumb2/mve-pred-selectop3.ll
M llvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll
M llvm/test/CodeGen/WebAssembly/export-name.ll
M llvm/test/CodeGen/WebAssembly/import-module.ll
M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll
M llvm/test/CodeGen/WebAssembly/simd-memcmp.ll
M llvm/test/CodeGen/WebAssembly/simd-reductions.ll
A llvm/test/CodeGen/X86/GlobalISel/postlegalizer-combiner-identity.mir
A llvm/test/CodeGen/X86/andnot-sink-not.ll
M llvm/test/CodeGen/X86/avx512-cmp.ll
M llvm/test/CodeGen/X86/basic-block-sections-code-prefetch.ll
M llvm/test/CodeGen/X86/bit-manip-i512.ll
M llvm/test/CodeGen/X86/clmul-vector.ll
M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
M llvm/test/CodeGen/X86/known-never-zero.ll
M llvm/test/CodeGen/X86/known-pow2.ll
M llvm/test/CodeGen/X86/masked_packss.ll
M llvm/test/CodeGen/X86/masked_packus.ll
M llvm/test/CodeGen/X86/narrow-shl-load.ll
M llvm/test/CodeGen/X86/packss.ll
M llvm/test/CodeGen/X86/packus.ll
M llvm/test/CodeGen/X86/setcc-logic.ll
M llvm/test/CodeGen/X86/shift-i512.ll
A llvm/test/CodeGen/X86/udiv-const-optimization.ll
M llvm/test/CodeGen/X86/urem-lkk.ll
M llvm/test/CodeGen/X86/wide-scalar-shift-by-byte-multiple-legalization.ll
M llvm/test/DebugInfo/Generic/instcombine-phi.ll
A llvm/test/DebugInfo/X86/debug-info-constexpr-array.ll
M llvm/test/Instrumentation/AddressSanitizer/basic-msvc64.ll
M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_aliases-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_aliases.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp16-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp8-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_dpp8.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_t16_err.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop2_t16_promote.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3-fake16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_aliases-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_aliases.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3_dpp8.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp16-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp8-fake16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3p.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vop3p_aliases.s
M llvm/test/MC/AMDGPU/gfx1170_asm_vop3p_dpp16.s
A llvm/test/MC/AMDGPU/gfx1170_asm_vopd.s
M llvm/test/MC/AMDGPU/gfx1250_asm_sopp.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2-fake16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
M llvm/test/MC/AMDGPU/literals.s
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3_dpp16.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3_dpp8.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_vop3p.txt
A llvm/test/MC/Hexagon/reloc-directive.s
M llvm/test/MC/Mips/elf_header.s
M llvm/test/MC/WebAssembly/export-name-invalid.s
M llvm/test/MC/WebAssembly/export-name.s
M llvm/test/MC/WebAssembly/import-module-invalid.s
M llvm/test/MC/WebAssembly/import-module.s
M llvm/test/MC/WebAssembly/import-name-invalid.s
A llvm/test/MC/X86/Relocations/avx10.2satcvt.s
M llvm/test/TableGen/MacroFusion.td
A llvm/test/TableGen/SubRegsLaneBitmask.td
A llvm/test/TableGen/let-append-bitrange-error.td
A llvm/test/TableGen/let-append-error.td
A llvm/test/TableGen/let-append-toplevel.td
A llvm/test/TableGen/let-append.td
A llvm/test/TableGen/let-prepend-error.td
M llvm/test/Transforms/Coroutines/coro-cleanup-noop-elide.ll
M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
M llvm/test/Transforms/InferFunctionAttrs/enable-builtin.ll
M llvm/test/Transforms/InstCombine/2006-12-15-Range-Test.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-gatherscatter.ll
M llvm/test/Transforms/InstCombine/AMDGPU/canonicalize-add-to-gep.ll
M llvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
A llvm/test/Transforms/InstCombine/RISCV/riscv-vmv-v-x.ll
M llvm/test/Transforms/InstCombine/align-addr.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/array.ll
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
M llvm/test/Transforms/InstCombine/canonicalize-gep-mul.ll
M llvm/test/Transforms/InstCombine/cast.ll
M llvm/test/Transforms/InstCombine/cast_phi.ll
M llvm/test/Transforms/InstCombine/cast_ptr.ll
M llvm/test/Transforms/InstCombine/constant-fold-address-space-pointer.ll
M llvm/test/Transforms/InstCombine/dependent-ivs.ll
M llvm/test/Transforms/InstCombine/fmul.ll
M llvm/test/Transforms/InstCombine/gep-addrspace.ll
M llvm/test/Transforms/InstCombine/gep-alias.ll
M llvm/test/Transforms/InstCombine/gep-canonicalize-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-combine-loop-invariant.ll
M llvm/test/Transforms/InstCombine/gep-custom-dl.ll
M llvm/test/Transforms/InstCombine/gep-fold-chained-const-select.ll
M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll
M llvm/test/Transforms/InstCombine/gep-sext.ll
M llvm/test/Transforms/InstCombine/gep-srem-to-and-deref.ll
M llvm/test/Transforms/InstCombine/gep-vector-indices.ll
M llvm/test/Transforms/InstCombine/gep-vector.ll
M llvm/test/Transforms/InstCombine/gepofconstgepi8.ll
M llvm/test/Transforms/InstCombine/gepphigep.ll
M llvm/test/Transforms/InstCombine/get_active_lane_mask.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/indexed-gep-compares.ll
M llvm/test/Transforms/InstCombine/known-phi-recurse.ll
M llvm/test/Transforms/InstCombine/load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/load-cmp.ll
M llvm/test/Transforms/InstCombine/load.ll
M llvm/test/Transforms/InstCombine/loadstore-alignment.ll
M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics-inseltpoison.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
M llvm/test/Transforms/InstCombine/mem-gep-zidx.ll
M llvm/test/Transforms/InstCombine/memcpy-addrspace.ll
M llvm/test/Transforms/InstCombine/memcpy-from-global.ll
M llvm/test/Transforms/InstCombine/multi-size-address-space-pointer.ll
M llvm/test/Transforms/InstCombine/narrow.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/pr38984-inseltpoison.ll
M llvm/test/Transforms/InstCombine/pr38984.ll
M llvm/test/Transforms/InstCombine/pr58901.ll
M llvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll
M llvm/test/Transforms/InstCombine/remove-loop-phi-multiply-by-zero.ll
M llvm/test/Transforms/InstCombine/scalable-select.ll
M llvm/test/Transforms/InstCombine/select-gep.ll
M llvm/test/Transforms/InstCombine/shift.ll
M llvm/test/Transforms/InstCombine/sink_instruction.ll
M llvm/test/Transforms/InstCombine/store.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/InstCombine/vec_demanded_elts-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
M llvm/test/Transforms/InstCombine/vec_phi_extract-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vec_phi_extract.ll
M llvm/test/Transforms/InstCombine/vector_gep1-inseltpoison.ll
M llvm/test/Transforms/InstCombine/vector_gep1.ll
M llvm/test/Transforms/InstCombine/vector_gep2.ll
M llvm/test/Transforms/InstCombine/vectorgep-crash.ll
M llvm/test/Transforms/InstCombine/wcslen-1.ll
M llvm/test/Transforms/InstCombine/wcslen-3.ll
M llvm/test/Transforms/InstCombine/wcslen-5.ll
M llvm/test/Transforms/InstSimplify/and-or-implied-cond.ll
M llvm/test/Transforms/LoopFusion/da_separate_loops.ll
M llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
M llvm/test/Transforms/LoopSimplify/merge-exits.ll
M llvm/test/Transforms/LoopUnroll/AArch64/runtime-unroll-generic.ll
M llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
M llvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll
M llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
M llvm/test/Transforms/LoopVectorize/AArch64/aarch64-predication.ll
A llvm/test/Transforms/LoopVectorize/AArch64/clmul.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-large-strides.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vfabi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-no-scalar-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll
A llvm/test/Transforms/LoopVectorize/RISCV/clmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/addressing.ll
M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
A llvm/test/Transforms/LoopVectorize/VPlan/interleave-conditional-scalar-assignment-vplan.ll
M llvm/test/Transforms/LoopVectorize/VPlan/tail-folding.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
A llvm/test/Transforms/LoopVectorize/X86/clmul.ll
M llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
A llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
M llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/bsd_regex.ll
A llvm/test/Transforms/LoopVectorize/conditional-scalar-assignment-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
M llvm/test/Transforms/LoopVectorize/gep_with_bitcast.ll
M llvm/test/Transforms/LoopVectorize/histograms.ll
M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
M llvm/test/Transforms/LoopVectorize/if-conversion.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-2.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/intrinsic.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/loop-scalars.ll
M llvm/test/Transforms/LoopVectorize/non-const-n.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/phi-cost.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-min-max.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/runtime-check.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
M llvm/test/Transforms/LoopVectorize/scalar_after_vectorization.ll
M llvm/test/Transforms/LoopVectorize/select-cmp.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/LoopVectorize/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/vector-geps.ll
M llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM1.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/extra-unroll-simplifications.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-load-from-vector-loop.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleave_vec.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/interleavevectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/loopflatten.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/peel-multiple-unreachable-exits-for-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/predicated-reduction.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/reduce_submuladd.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sinking-vs-if-conversion.ll
M llvm/test/Transforms/PhaseOrdering/SystemZ/sub-xor.ll
M llvm/test/Transforms/PhaseOrdering/X86/earlycse-after-simplifycfg-two-entry-phi-node-folding.ll
M llvm/test/Transforms/PhaseOrdering/X86/excessive-unrolling.ll
M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions2.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions3.ll
M llvm/test/Transforms/PhaseOrdering/X86/pixel-splat.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr88239.ll
M llvm/test/Transforms/PhaseOrdering/X86/preserve-access-group.ll
M llvm/test/Transforms/PhaseOrdering/X86/simplifycfg-late.ll
M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
M llvm/test/Transforms/PhaseOrdering/X86/spurious-peeling.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv-nounroll.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
M llvm/test/Transforms/PhaseOrdering/gvn-replacement-vs-hoist.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
M llvm/test/Transforms/PhaseOrdering/loop-vectorize-bfi.ll
M llvm/test/Transforms/PhaseOrdering/lto-argpromotion-ipsccp.ll
M llvm/test/Transforms/PhaseOrdering/lto-licm.ll
M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
M llvm/test/Transforms/PhaseOrdering/simplifycfg-options.ll
M llvm/test/Transforms/Reassociate/reassociate-decrement-dbgvalue.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/same-node-reused.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/shuffled-gather-casted.ll
A llvm/test/Transforms/SLPVectorizer/X86/bswap-i64-by-i32-chunks.ll
M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/gather-move-out-of-loop.ll
M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
A llvm/test/Transforms/SLPVectorizer/X86/lhs-constant-non-cummutative.ll
A llvm/test/Transforms/SLPVectorizer/X86/mask-size-less-common-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-reused-as-last-inst.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder_with_external_users.ll
M llvm/test/Transforms/SLPVectorizer/X86/shl-to-add-transformation5.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-throttle.ll
M llvm/test/Transforms/SLPVectorizer/X86/small-graph-diff-block-instructions.ll
M llvm/test/Transforms/SLPVectorizer/alternate-non-profitable.ll
M llvm/test/Transforms/SLPVectorizer/ext-int-reduced-not-operand.ll
A llvm/test/Transforms/SLPVectorizer/non-power-of-2-bswap.ll
A llvm/test/Transforms/SandboxVectorizer/external_uses.ll
M llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/uniform-unswitch.ll
M llvm/test/Transforms/SimplifyCFG/Hexagon/switch-to-lookup-table.ll
A llvm/test/Transforms/VectorCombine/arbitrary-precision-int.ll
A llvm/test/tools/llubi/loadstore_be.ll
A llvm/test/tools/llubi/loadstore_le.ll
A llvm/test/tools/llubi/loadstore_misaligned.ll
A llvm/test/tools/llubi/loadstore_null.ll
A llvm/test/tools/llubi/loadstore_oob1.ll
A llvm/test/tools/llubi/loadstore_overaligned.ll
A llvm/test/tools/llubi/loadstore_poison.ll
A llvm/test/tools/llubi/loadstore_uaf.ll
A llvm/test/tools/llubi/store_dead.ll
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-basic-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-forwarding.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-mask.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-permutation.s
M llvm/tools/dsymutil/DebugMap.cpp
M llvm/tools/dsymutil/DebugMap.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llubi/lib/Context.cpp
M llvm/tools/llubi/lib/Context.h
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llubi/lib/Value.h
M llvm/tools/llubi/llubi.cpp
M llvm/tools/llvm-gpu-loader/llvm-gpu-loader.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
M llvm/unittests/Support/JSONTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/gn/secondary/bolt/unittests/Core/BUILD.gn
M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Plugins/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Plugins/LanguageRuntime/CPlusPlus/BUILD.gn
R llvm/utils/gn/secondary/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Target/X86/BUILD.gn
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/docs/Passes.md
M mlir/docs/Rationale/SideEffectsAndSpeculation.md
M mlir/include/mlir/Bindings/Python/IRAttributes.h
M mlir/include/mlir/Bindings/Python/IRCore.h
M mlir/include/mlir/Bytecode/BytecodeImplementation.h
M mlir/include/mlir/Dialect/Index/IR/IndexOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/include/mlir/Dialect/Linalg/Passes.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
A mlir/include/mlir/Dialect/UB/IR/UBMatchers.h
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/Dialect/XeGPU/TransformOps/XeGPUTransformOps.td
M mlir/include/mlir/IR/BuiltinDialect.h
M mlir/include/mlir/IR/BuiltinDialect.td
M mlir/include/mlir/IR/Iterators.h
M mlir/include/mlir/IR/Operation.h
M mlir/include/mlir/Interfaces/LoopLikeInterface.td
M mlir/include/mlir/Interfaces/SideEffectInterfaces.h
M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRCore.cpp
R mlir/lib/Bindings/Python/stubgen_runner.py
M mlir/lib/Bytecode/Reader/BytecodeReader.cpp
M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Bufferization/Extensions/ShardingExtensions.cpp
M mlir/lib/Dialect/Bufferization/Transforms/BufferOptimizations.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/MorphOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsLoop.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
M mlir/lib/Dialect/Shard/Transforms/ShardingPropagation.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
M mlir/lib/Dialect/X86/Transforms/VectorContractToPackedTypeDotProduct.cpp
M mlir/lib/Dialect/X86/Utils/X86Utils.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/lib/IR/BuiltinDialectBytecode.cpp
M mlir/lib/IR/Operation.cpp
M mlir/lib/Interfaces/CMakeLists.txt
M mlir/lib/Interfaces/LoopLikeInterface.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Tools/mlir-reduce/MlirReduceMain.cpp
M mlir/lib/Transforms/CSE.cpp
M mlir/python/mlir/dialects/transform/xegpu.py
M mlir/python/mlir/ir.py
M mlir/test/Analysis/test-alias-analysis-modref.mlir
M mlir/test/CAPI/irdl.c
A mlir/test/Conversion/GPUCommon/lower-launch-func-bare-ptr-invalid.mlir
M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-resize.mlir
M mlir/test/Conversion/VectorToGPU/vector-to-mma-ops.mlir
A mlir/test/Dialect/Affine/SuperVectorize/vectorize_inner_loop_dep_bounds.mlir
M mlir/test/Dialect/Affine/invalid.mlir
M mlir/test/Dialect/Affine/ops.mlir
M mlir/test/Dialect/Bufferization/Transforms/buffer-hoisting.mlir
M mlir/test/Dialect/GPU/shuffle-rewrite.mlir
M mlir/test/Dialect/GPU/sparse-roundtrip.mlir
M mlir/test/Dialect/GPU/subgroup-mma-vector-unroll.mlir
M mlir/test/Dialect/GPU/subgroupId-rewrite.mlir
M mlir/test/Dialect/GPU/transform-gpu.mlir
M mlir/test/Dialect/LLVMIR/inlining.mlir
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Dialect/LLVMIR/types-invalid.mlir
M mlir/test/Dialect/Linalg/named-ops-fail.mlir
M mlir/test/Dialect/Linalg/named-ops.mlir
R mlir/test/Dialect/Linalg/roundtrip-linalg-named-ops.mlir
A mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-category-ops.mlir
A mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-named-ops.mlir
M mlir/test/Dialect/Linalg/specialize-generic-ops.mlir
M mlir/test/Dialect/Linalg/vectorization/unsupported.mlir
M mlir/test/Dialect/NVGPU/canonicalization.mlir
M mlir/test/Dialect/NVGPU/tmaload-transform.mlir
M mlir/test/Dialect/NVGPU/transform-matmul-to-nvvm.mlir
A mlir/test/Dialect/OpenACC/cse.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/SCF/invalid.mlir
M mlir/test/Dialect/SCF/transform-ops.mlir
M mlir/test/Dialect/Shard/sharding-propagation-failed.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_matmul.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_matvec.mlir
M mlir/test/Dialect/SparseTensor/GPU/gpu_spgemm_lib.mlir
M mlir/test/Dialect/SparseTensor/invalid.mlir
M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Dialect/X86/vector-contract-to-packed-type-dotproduct.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
M mlir/test/Dialect/XeGPU/transform-ops.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
M mlir/test/Examples/NVGPU/Ch0.py
M mlir/test/Examples/NVGPU/Ch3.py
M mlir/test/Examples/NVGPU/Ch4.py
M mlir/test/Examples/NVGPU/Ch5.py
M mlir/test/IR/array-of-attr.mlir
A mlir/test/IR/test-branch-types-compatible.mlir
M mlir/test/IR/test-func-erase-result.mlir
M mlir/test/IR/test-matchers.mlir
M mlir/test/IR/test-symbol-uses.mlir
M mlir/test/IR/visitors.mlir
M mlir/test/Integration/Dialect/XeGPU/LANE/no-xegpu-ops.mlir
M mlir/test/Integration/GPU/CUDA/sm90/cga_cluster.mlir
M mlir/test/Integration/GPU/CUDA/sm90/gemm_f32_f16_f16_128x128x128.mlir
M mlir/test/Integration/GPU/CUDA/sm90/gemm_pred_f32_f16_f16_128x128x128.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x128_stride_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x64_swizzle128b.mlir
M mlir/test/Integration/GPU/CUDA/sm90/tma_load_64x8_8x128_noswizzle.mlir
M mlir/test/Integration/GPU/CUDA/sm90/transform-dialect/tma_load_64x8_8x128_noswizzle-transform.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-addi64-to-spirv.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-memcpy-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/LevelZero/gpu-reluf32-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-addi64-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-memcpy-addf32-to-spirv.mlir
M mlir/test/Integration/GPU/SYCL/gpu-reluf32-to-spirv.mlir
A mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops-invalid.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
M mlir/test/Target/LLVMIR/nvvm/addf/addf_invalid.mlir
A mlir/test/Target/LLVMIR/nvvm/fma/fma.mlir
A mlir/test/Target/LLVMIR/nvvm/fma/fma_invalid.mlir
A mlir/test/Target/LLVMIR/nvvm/fma/fma_vector.mlir
A mlir/test/Target/LLVMIR/nvvm/subf/subf.mlir
A mlir/test/Target/LLVMIR/nvvm/subf/subf_invalid.mlir
A mlir/test/Target/LLVMIR/nvvm/subf/subf_vector.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-teams-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
M mlir/test/Transforms/cse.mlir
M mlir/test/Transforms/inlining.mlir
M mlir/test/lib/Dialect/Test/TestDialectInterfaces.cpp
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.h
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/IR/TestMatchers.cpp
M mlir/test/lib/IR/TestSymbolUses.cpp
M mlir/test/lib/IR/TestVisitors.cpp
R mlir/test/mlir-reduce/crashop-reduction.mlir
R mlir/test/mlir-reduce/multiple-function.mlir
A mlir/test/mlir-reduce/reduction-tree.mlir
M mlir/test/mlir-tblgen/attr-or-type-format-roundtrip.mlir
M mlir/test/mlir-tblgen/attr-or-type-format.td
M mlir/test/python/dialects/gpu/dialect.py
M mlir/test/python/dialects/nvvm.py
M mlir/test/python/dialects/transform_xegpu_ext.py
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
M mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCUtilsLoopTest.cpp
A mlir/unittests/IR/BuiltinDialectVersionTest.cpp
M mlir/unittests/IR/CMakeLists.txt
M mlir/unittests/IR/OperationSupportTest.cpp
M mlir/unittests/Interfaces/CMakeLists.txt
A mlir/unittests/Interfaces/SideEffectInterfacesTest.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/RPC.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
A offload/test/offloading/fortran/usm_derived_type_allocatable_member.f90
M utils/bazel/.bazelversion
M utils/bazel/MODULE.bazel.lock
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl
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/build_defs.bzl
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel
M utils/bazel/llvm-project-overlay/third-party/unittest/BUILD.bazel
M utils/bazel/third_party_build/nanobind.BUILD
Log Message:
-----------
Merge branch 'main' into users/kasuga-fj/da-fix-weak-zero-siv-delta-ovfl
Compare: https://github.com/llvm/llvm-project/compare/81f886c3fb54...44fd3fd710d7
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