LLVM/project d05370eclang-tools-extra/clang-tidy/bugprone CapturingThisInMemberVariableCheck.cpp InfiniteLoopCheck.cpp, clang-tools-extra/clang-tidy/modernize LoopConvertUtils.cpp LoopConvertCheck.cpp

[clang-tidy][NFC] Enable readability-any-all-of check (#167134)

Closes https://github.com/llvm/llvm-project/issues/156161.
Assisted-by: Claude Sonnet 4.5 via Claude Code
DeltaFile
+11-12clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
+7-13clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
+7-12clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
+8-11clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
+6-12clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
+6-11clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
+45-7119 files not shown
+105-17325 files

LLVM/project 08ed95alldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp, llvm/test/CodeGen/RISCV/rvv fixed-vectors-interleaved-access.ll fixed-vectors-reduction-fp.ll

Merge branch 'main' into users/rampitec/avoid-undef-in-hazard-gfx1250-flat-scr-hi.mir
DeltaFile
+484-484llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
+342-204llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
+82-179llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
+82-179llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
+223-1lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+211-3llvm/unittests/IR/IntrinsicsTest.cpp
+1,424-1,05045 files not shown
+1,908-1,31251 files

LLVM/project 822fc44llvm/include/llvm/IR Intrinsics.h, llvm/lib/IR Intrinsics.cpp IRBuilder.cpp

[LLVM][Intrinsics] Adds an API to automatically resolve overload types (#169007)

Currently, the getOrInsertDeclaration API requires callers to explicitly
provide overload types for overloaded intrinsics, placing a significant
burden on callers who must determine whether overload types are needed.
This typically results in conditional logic at each call site to check
if the intrinsic is overloaded and manually match the intrinsic
signature.

This patch introduces a new getOrInsertDeclaration overload that
automatically deduces overload types from the provided return type and
argument types, then uses this API to simplify
IRBuilder::CreateIntrinsic. The new API uses
Intrinsic::matchIntrinsicSignature internally to resolve overloaded
types, eliminating the need for callers to do manual overload detection.
DeltaFile
+211-3llvm/unittests/IR/IntrinsicsTest.cpp
+47-9llvm/lib/IR/Intrinsics.cpp
+15-0llvm/include/llvm/IR/Intrinsics.h
+1-13llvm/lib/IR/IRBuilder.cpp
+274-254 files

LLVM/project 5c06121llvm/unittests/CAS CASTestConfig.h

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+2-1llvm/unittests/CAS/CASTestConfig.h
+2-11 files

LLVM/project 23df287mlir/lib/Dialect/XeGPU/Transforms XeGPUSubgroupDistribute.cpp XeGPUPropagateLayout.cpp

fix minor bug
DeltaFile
+15-10mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
+2-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
+17-122 files

LLVM/project 1f35b52lldb/source/Plugins/SymbolFile/DWARF DWARFASTParserClang.cpp, lldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp

[lldb][DWARFASTParserClang] Treat DW_TAG_template_alias like we do DW_TAG_typedef (#170135)

Depends on:
* https://github.com/llvm/llvm-project/pull/170132

Clang gained the `-gtemplate-alias` not too long ago, which emits C++
alias templates as `DW_TAG_template_alias` (instead of
`DW_TAG_typedef`). The main difference is that `DW_TAG_template_alias`
has `DW_TAG_template_XXX` children. The flag was not enabled by default
because consumers (mainly LLDB) didn't know how to handle it. This patch
adds rudimentary support for debugging with `DW_TAG_template_alias`.

This patch simply creates the same kind of `TypedefDecl` as we do for
`DW_TAG_typedef`. The more complete solution would be to create a
`TypeAliasTemplateDecl` and associated `TypeAliasDecl`. But that would
require DWARF to carry generic template information, but currently each
`DW_TAG_template_alias` represents a concrete instantiation. We could
probably hack up some working AST representation that includes the
template parameters, but I currently don't see a compelling reason to.

    [3 lines not shown]
DeltaFile
+223-1lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+3-1lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
+226-22 files

LLVM/project 1c86f4allvm/include/llvm/CodeGen BasicTTIImpl.h, llvm/lib/Target/AArch64 AArch64TargetTransformInfo.cpp

[TTI] Use MemIntrinsicCostAttributes for getGatherScatterOpCost (#168650)

- Following #168029. This is a step toward a unified interface for
masked/gather-scatter/strided/expand-compress cost modeling.
- Replace the ad-hoc parameter list with a single attributes object.

API change:
```
- InstructionCost getGatherScatterOpCost(Opcode, DataTy, Ptr, VariableMask,
-                                        Alignment, CostKind, Inst);

+ InstructionCost getGatherScatterOpCost(MemIntrinsicCostAttributes,
+                                       CostKind);
```

Notes:
- NFCI intended: callers populate MemIntrinsicCostAttributes with same
information as before.
DeltaFile
+17-14llvm/include/llvm/CodeGen/BasicTTIImpl.h
+12-7llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
+14-5llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
+10-6llvm/lib/Target/X86/X86TargetTransformInfo.cpp
+11-5llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
+4-5llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
+68-426 files not shown
+83-6912 files

LLVM/project 2978b20llvm/lib/Analysis Delinearization.cpp, llvm/test/Analysis/Delinearization validation_large_size.ll multidim_only_ivs_2d.ll

[Delinearization] Add validation for large size arrays (#169902)

This patch adds a check in validation for delinearization to ensure that
the offset calculation does not overflow. If it overflows, different
array accesses (e.g., `A[0][0]` and `A[1][0]`) could map to the same
linear index, leading to incorrect behavior.
For fixed-size arrays, the check is relatively straightforward. However,
for dynamic-size arrays (i.e., arrays where the size is not known at
compile time), it's difficult to prove this statically, and it going to
fail for almost all cases. Maybe we need to add some runtime checks or
reasoning based on `inbounds` like LAA does.

Fixes the test cases added in #169048.
DeltaFile
+63-0llvm/lib/Analysis/Delinearization.cpp
+47-7llvm/test/Analysis/Delinearization/validation_large_size.ll
+16-16llvm/test/Analysis/DependenceAnalysis/DADelin.ll
+7-3llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
+2-2llvm/test/Analysis/Delinearization/multidim_only_ivs_2d.ll
+2-2llvm/test/Analysis/Delinearization/multidim_two_accesses_different_delinearization.ll
+137-304 files not shown
+143-3310 files

LLVM/project 542a8f2lldb/test/API/functionalities/scripted_frame_provider TestScriptedFrameProvider.py, lldb/test/API/functionalities/scripted_frame_provider/circular_dependency TestFrameProviderCircularDependency.py

[lldb/test] Add missing import for decorator (NFC)

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
DeltaFile
+2-1lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+1-1lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py
+3-22 files

LLVM/project e407f52.github/workflows issue-write-test.yaml test-unprivileged-download-artifact.yml, .github/workflows/unprivileged-download-artifact action.yml

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+40-19.github/workflows/unprivileged-download-artifact/action.yml
+32-0.github/workflows/issue-write-test.yaml
+18-8.github/workflows/test-unprivileged-download-artifact.yml
+7-1.github/workflows/issue-write.yml
+97-284 files

LLVM/project 75e1679.ci premerge_advisor_explain.py, .github/workflows issue-write-test.yaml test-unprivileged-download-artifact.yml

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+40-19.github/workflows/unprivileged-download-artifact/action.yml
+32-0.github/workflows/issue-write-test.yaml
+18-8.github/workflows/test-unprivileged-download-artifact.yml
+10-2.github/workflows/premerge.yaml
+7-1.github/workflows/issue-write.yml
+2-1.ci/premerge_advisor_explain.py
+109-316 files

LLVM/project 76cb984llvm/lib/Target/RISCV RISCVVectorPeephole.cpp, llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv select.mir

[RISCV] Sources of vmerge shouldn't overlap V0 (#170070)

According to the spec:

> A vector register cannot be used to provide source operands with more
> than one EEW for a single instruction. A mask register source is
> considered to have EEW=1 for this constraint.

There must be a mask `V0` in `vmerge` variants so the sources should
use register classes without `V0`.

This fixes #169905.

Co-authored-by: Luke Lau <luke at igalia.com>
DeltaFile
+484-484llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
+342-204llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
+82-179llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
+82-179llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
+25-28llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
+22-22llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/select.mir
+1,037-1,09612 files not shown
+1,140-1,17818 files

LLVM/project 242077aclang/test/CXX/drs cwg30xx.cpp

[clang][NFC] Promote CWG3005 test to "ready"

Not updating cxx_dr_status.html yet, because CWG2917 test might need major adjustments before make_cxx_dr_status can be ran.
DeltaFile
+1-1clang/test/CXX/drs/cwg30xx.cpp
+1-11 files

LLVM/project 6f5a69blldb/test/API/functionalities/scripted_frame_provider TestScriptedFrameProvider.py, lldb/test/API/functionalities/scripted_frame_provider/circular_dependency TestFrameProviderCircularDependency.py

[lldb/test] Skip ScriptedFrameProviders tests on arm32 (NFC)

It looks like the providers don't get loaded on arm32 bots:

https://github.com/llvm/llvm-project/issues/170412

Skipping for now since I don't have access to a machine to investigate
it.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
DeltaFile
+1-1lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+1-1lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py
+2-22 files

LLVM/project b5ef5edllvm/lib/CodeGen/SelectionDAG LegalizeDAG.cpp

DAG: Avoid using getLibcallName when looking for a divrem call

Also introduce an error if it's not available, which is not yet
testable.
DeltaFile
+13-2llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+13-21 files

LLVM/project 60f5eec.github/workflows issue-write-test.yaml test-unprivileged-download-artifact.yml, .github/workflows/unprivileged-download-artifact action.yml

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+40-19.github/workflows/unprivileged-download-artifact/action.yml
+32-0.github/workflows/issue-write-test.yaml
+18-8.github/workflows/test-unprivileged-download-artifact.yml
+7-1.github/workflows/issue-write.yml
+97-284 files

LLVM/project 0d500af.github/workflows test-unprivileged-download-artifact.yml issue-write-test.yaml, .github/workflows/unprivileged-download-artifact action.yml

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+40-19.github/workflows/unprivileged-download-artifact/action.yml
+18-8.github/workflows/test-unprivileged-download-artifact.yml
+25-0.github/workflows/issue-write-test.yaml
+1-0.github/workflows/issue-write.yml
+84-274 files

LLVM/project ccd4ee5clang/lib/Sema SemaTemplate.cpp, lldb/test/API/functionalities/scripted_frame_provider TestScriptedFrameProvider.py

Merge branch 'main' into users/kasuga-fj/delinearization-validate-large-array
DeltaFile
+798-831llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
+534-0lldb/test/API/python_api/sbframe_extensions/TestSBFrameExtensions.py
+216-216llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
+427-0lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+206-197llvm/test/CodeGen/AMDGPU/fshr.ll
+19-341clang/lib/Sema/SemaTemplate.cpp
+2,200-1,585435 files not shown
+16,060-7,918441 files

LLVM/project 3d8a256.github/workflows/unprivileged-download-artifact action.yml

fix

Created using spr 1.3.7
DeltaFile
+1-3.github/workflows/unprivileged-download-artifact/action.yml
+1-31 files

LLVM/project 8bec90eclang/lib/CodeGen CGStmt.cpp, clang/test/CodeGenCXX cxx2c-enumerating-expansion-statements.cpp cxx2c-iterating-expansion-stmt.cpp

[Clang] [C++26] Expansion Statements (Part 8)
DeltaFile
+1,518-0clang/test/CodeGenCXX/cxx2c-enumerating-expansion-statements.cpp
+474-0clang/test/CodeGenCXX/cxx2c-iterating-expansion-stmt.cpp
+471-0clang/test/CodeGenCXX/cxx2c-destructuring-expansion-stmt.cpp
+429-0clang/test/CodeGenCXX/cxx2c-expansion-stmts-control-flow.cpp
+208-0clang/test/CodeGenCXX/cxx2c-expansion-stmts-templates.cpp
+40-1clang/lib/CodeGen/CGStmt.cpp
+3,140-11 files not shown
+3,143-17 files

LLVM/project f78d11eclang/docs ReleaseNotes.rst, clang/include/clang/Basic DiagnosticCommonKinds.td

[Clang] [C++26] Expansion Statements (Part 11)
DeltaFile
+104-0clang/test/AST/ast-print-expansion-stmts.cpp
+49-0clang/test/AST/ast-dump-expansion-stmt.cpp
+0-4clang/include/clang/Basic/DiagnosticCommonKinds.td
+1-1clang/www/cxx_status.html
+2-0clang/docs/ReleaseNotes.rst
+156-55 files

LLVM/project 0a945e6clang/include/clang/Basic DiagnosticSemaKinds.td, clang/include/clang/Sema ScopeInfo.h

[Clang] [C++26] Expansion Statements (Part 9)
DeltaFile
+117-0clang/test/SemaCXX/cxx2c-expansion-stmts-control-flow.cpp
+38-9clang/lib/Sema/SemaLookup.cpp
+28-2clang/lib/Sema/SemaStmt.cpp
+9-2clang/lib/Parse/ParseStmt.cpp
+5-1clang/include/clang/Sema/ScopeInfo.h
+6-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+203-141 files not shown
+205-157 files

LLVM/project 83573e6clang/test/CodeGenCXX cxx2c-iterating-expansion-stmt.cpp

CWG 3131
DeltaFile
+198-164clang/test/CodeGenCXX/cxx2c-iterating-expansion-stmt.cpp
+198-1641 files

LLVM/project e0ada82clang/test/AST ast-print-expansion-stmts.cpp

CWG 3131
DeltaFile
+2-2clang/test/AST/ast-print-expansion-stmts.cpp
+2-21 files

LLVM/project 8e22321clang/include/clang/Basic DiagnosticSemaKinds.td, clang/include/clang/Options Options.td

[Clang] [C++26] Expansion Statements (Part 10)
DeltaFile
+68-0clang/test/SemaCXX/cxx2c-expansion-stmts-limit.cpp
+18-0clang/lib/Sema/SemaExpand.cpp
+9-0clang/test/SemaCXX/cxx2c-fexpansion-statements.cpp
+4-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+4-0clang/include/clang/Options/Options.td
+1-0clang/lib/Driver/ToolChains/Clang.cpp
+104-01 files not shown
+105-07 files

LLVM/project 94104feclang/test/CodeGenCXX cxx2c-iterating-expansion-stmt.cpp

Properly compute iterating expansion stmt size
DeltaFile
+4-3clang/test/CodeGenCXX/cxx2c-iterating-expansion-stmt.cpp
+4-31 files

LLVM/project fff7b37clang/lib/CodeGen CGDecl.cpp

Move CGDecl implementation here
DeltaFile
+6-2clang/lib/CodeGen/CGDecl.cpp
+6-21 files

LLVM/project dd84520clang/test/SemaCXX cxx2c-expansion-stmts.cpp

CWG 3131
DeltaFile
+52-8clang/test/SemaCXX/cxx2c-expansion-stmts.cpp
+52-81 files

LLVM/project 2988ddc.github/workflows/unprivileged-download-artifact action.yml

debug

Created using spr 1.3.7
DeltaFile
+2-0.github/workflows/unprivileged-download-artifact/action.yml
+2-01 files

LLVM/project a5e068bmlir/lib/Dialect/XeGPU/Transforms XeGPUPropagateLayout.cpp, mlir/test/Dialect/XeGPU propagate-layout.mlir

add propagation tests
DeltaFile
+58-0mlir/test/Dialect/XeGPU/propagate-layout.mlir
+3-6mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
+61-62 files