LLVM/project 6638d59lldb/source/Plugins/UnwindAssembly/InstEmulation UnwindAssemblyInstEmulation.cpp UnwindAssemblyInstEmulation.h

[lldb][NFC] Rename forward_branch_offset to branch_offset in UnwindAssemblyInstEmulation (#169631)

This will reduce the diff in subsequent patches

Part of a sequence of PRs:
[lldb][NFCI] Rewrite UnwindAssemblyInstEmulation in terms of a CFG visit
#169630
[lldb][NFC] Rename forward_branch_offset to branch_offset in
UnwindAssemblyInstEmulation #169631
[lldb] Add DisassemblerLLVMC::IsBarrier API #169632
[lldb] Handle backwards branches in UnwindAssemblyInstEmulation #169633
commit-id:5e758a22
DeltaFile
+9-10lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
+2-2lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.h
+11-122 files

LLVM/project c5ecdeclldb/packages/Python/lldbsuite/test/tools/lldb-dap dap_server.py, lldb/tools/lldb-dap DAP.cpp

[lldb-dap] start all sent protocol message from number one. (#170378)

This aligns with the DAP
[specification](https://microsoft.github.io/debug-adapter-protocol//specification.html#Base_Protocol_ProtocolMessage)

Force it to be an error in test cases.
DeltaFile
+5-2lldb/tools/lldb-dap/DAP.cpp
+2-2lldb/tools/lldb-dap/Protocol/ProtocolBase.h
+1-1lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
+8-53 files

LLVM/project cd86b2allvm/lib/CodeGen MachineVerifier.cpp MachineOperand.cpp, llvm/lib/CodeGen/MIRParser MIParser.cpp

[CodeGen] Add MO_LaneMask type and a new COPY_LANEMASK instruction (#151944)

Introduce MO_LaneMask as new machine operand type. This can be used to
hold liveness infomation at sub-register granularity for register-type
operands. We also introduce a new COPY_LANEMASK instruction that uses
MO_lanemask operand to perform partial copy from source register
opernad.

One such use case of MO_LaneMask can be seen in #151123, where it can be
used to store live regUnits information corresponding to the source
register of the COPY instructions, later can be used during CopyPhysReg
expansion.
DeltaFile
+40-0llvm/lib/CodeGen/MachineVerifier.cpp
+37-0llvm/test/MachineVerifier/AMDGPU/verifier-copyLanemask-invalid-lanemask.mir
+28-0llvm/lib/CodeGen/MIRParser/MIParser.cpp
+16-3llvm/lib/CodeGen/MachineOperand.cpp
+19-0llvm/test/MachineVerifier/AMDGPU/verifier-copyLanemask-missing-lanemask.mir
+17-0llvm/test/CodeGen/MIR/AMDGPU/parse-lanemask-operand.mir
+157-321 files not shown
+298-827 files

LLVM/project d5ef331lldb/test/API/python_api/sbframe_extensions TestSBFrameExtensions.py, lldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp

rebased

Created using spr 1.3.7
DeltaFile
+798-831llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
+484-484llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
+342-204llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
+534-0lldb/test/API/python_api/sbframe_extensions/TestSBFrameExtensions.py
+333-168lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+216-216llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
+2,707-1,903488 files not shown
+17,503-9,214494 files

LLVM/project 33766eflldb/test/API/python_api/sbframe_extensions TestSBFrameExtensions.py, lldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+798-831llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
+484-484llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
+342-204llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
+534-0lldb/test/API/python_api/sbframe_extensions/TestSBFrameExtensions.py
+333-168lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+216-216llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
+2,707-1,903488 files not shown
+17,503-9,214494 files

LLVM/project 3c7d1a3lldb/test/API/python_api/sbframe_extensions TestSBFrameExtensions.py, lldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp

rebased

Created using spr 1.3.7
DeltaFile
+798-831llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
+484-484llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
+342-204llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
+534-0lldb/test/API/python_api/sbframe_extensions/TestSBFrameExtensions.py
+333-168lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+216-216llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
+2,707-1,903488 files not shown
+17,503-9,214494 files

LLVM/project 43c6bfdlldb/test/API/python_api/sbframe_extensions TestSBFrameExtensions.py, lldb/unittests/SymbolFile/DWARF DWARFASTParserClangTests.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+798-831llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
+484-484llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
+342-204llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
+534-0lldb/test/API/python_api/sbframe_extensions/TestSBFrameExtensions.py
+333-168lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
+216-216llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
+2,707-1,903488 files not shown
+17,503-9,214494 files

LLVM/project ae4289fllvm/lib/Target/Hexagon HexagonTargetTransformInfo.cpp HexagonTargetTransformInfo.h

[Hexagon][NFC] Drop no-op getMaskedMemoryOpCost/getGatherScatterOpCost stubs (#170426)

These stubs (from 4bdf1aa416b02) don’t actually override anything.
Removing them eliminates the need for a local getMemIntrinsicCost()
forwarder in #169885.
DeltaFile
+0-12llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
+0-6llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
+0-182 files

LLVM/project 47205d0llvm/lib/Target/SPIRV SPIRVBuiltins.cpp

[Revew] getOpExtCallArguments->getBuiltinCallArguments
DeltaFile
+3-3llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
+3-31 files

LLVM/project befa4e8llvm/test/CodeGen/AMDGPU hazard-gfx1250-flat-scr-hi.mir

[AMDGPU] Avoid undefs in hazard-gfx1250-flat-scr-hi.mir. NFC (#170396)

DeltaFile
+57-32llvm/test/CodeGen/AMDGPU/hazard-gfx1250-flat-scr-hi.mir
+57-321 files

LLVM/project 5ee6cffclang/lib/Serialization ASTReaderDecl.cpp, clang/test/Modules GH170084.cpp

[clang] Propagate definition data to all redecls (#170090)

Fix the propagation added in commit 0d490ae55f to include all redecls,
not only previous ones. This fixes another instance of the assertion
"Cannot get layout of forward declarations" in getASTRecordLayout().

Kudos to Alexander Kornienko for providing an initial version of the
reproducer that I further simplified.

Fixes #170084
DeltaFile
+75-0clang/test/Modules/GH170084.cpp
+2-2clang/lib/Serialization/ASTReaderDecl.cpp
+77-22 files

LLVM/project 98182f4clang/lib/CodeGen CodeGenFunction.cpp, clang/lib/CodeGen/TargetBuiltins AMDGPU.cpp

Move CodeGenFunction::EmitScalarOrConstFoldImmArg; NFC (#170286)

This function is called from various .cpp files under `TargetBuiltins/`,
and was moved unintentionally into `AMDGPU.cpp` in PR #132252. Move it
to a common place.
DeltaFile
+17-0clang/lib/CodeGen/CodeGenFunction.cpp
+0-17clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
+17-172 files

LLVM/project 3f9b997llvm/test/CodeGen/SPIRV/transcoding OpExtInst_vector_promoton_bug.ll OpExtInst_vector_promoton.ll

[Review] Fix the _bug test such that it passes if spirv-tools is not available.
DeltaFile
+4-3llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton_bug.ll
+2-2llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton.ll
+6-52 files

LLVM/project 03f48dallvm/test/CodeGen/SPIRV/transcoding OpExtInst_vector_promoton_bug.ll OpExtInst_vector_promoton.ll

[Review] for clarity, split the test case in two
DeltaFile
+20-0llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton_bug.ll
+1-15llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton.ll
+21-152 files

LLVM/project 13dca3fllvm/lib/Target/SPIRV SPIRVRegularizer.cpp, llvm/test/CodeGen/SPIRV/transcoding OpExtInst_vector_promoton.ll

[SPIRV] Remove the vector-scalar min/max/fmin/fmax IR rewriting
DeltaFile
+3-99llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
+84-1llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton.ll
+87-1002 files

LLVM/project f01c0e9llvm/lib/Target/SPIRV SPIRVBuiltins.cpp

[Review] Broadcast->Splat & Move code to helper
DeltaFile
+32-18llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
+32-181 files

LLVM/project a275f09llvm/lib/Target/SPIRV SPIRVBuiltins.cpp, llvm/test/CodeGen/SPIRV/transcoding OpExtInst_vector_promoton.ll

[SPIRV] Promote scalar arguments to vector for OpExtInst
DeltaFile
+46-2llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
+25-11llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton.ll
+71-132 files

LLVM/project bdbd6c4llvm/test/CodeGen/SPIRV/transcoding OpExtInst_vector_promoton.ll OpMin.ll

[NFC][SPIRV] Update OpMin test to show that the promotion to vector is broken
DeltaFile
+96-0llvm/test/CodeGen/SPIRV/transcoding/OpExtInst_vector_promoton.ll
+0-16llvm/test/CodeGen/SPIRV/transcoding/OpMin.ll
+96-162 files

LLVM/project e6110cbmlir/include/mlir/Transforms Passes.td, mlir/lib/Transforms RemoveDeadValues.cpp CMakeLists.txt

[mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (#169269)

This commit fixes two crashes in the `-remove-dead-values` pass related
to private functions.

Private functions are considered entirely "dead" by the liveness
analysis, which drives the `-remove-dead-values` pass.

The `-remove-dead-values` pass removes dead block arguments from private
functions. Private functions are entirely dead, so all of their block
arguments are removed. However, the pass did not correctly update all
users of these dropped block arguments.

1. A side-effecting operation must be removed if one of its operands is
dead. Otherwise, the operation would end up with a NULL operand. Note:
The liveness analysis would not have marked an SSA value as "dead" if it
had a reachable side-effecting users. (Therefore, it is safe to erase
such side-effecting operations.)
2. A branch operation must be removed if one of its non-forwarded

    [2 lines not shown]
DeltaFile
+45-2mlir/lib/Transforms/RemoveDeadValues.cpp
+27-0mlir/test/Transforms/remove-dead-values.mlir
+1-0mlir/include/mlir/Transforms/Passes.td
+1-0mlir/lib/Transforms/CMakeLists.txt
+74-24 files

LLVM/project 30f479fclang/include/clang/CIR/Dialect/IR CIRDialect.td, clang/lib/CIR/Dialect/IR CIRAttrs.cpp

[CIR] Use default attribute printer/parser (NFC) (#170366)

DeltaFile
+0-18clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
+1-8clang/include/clang/CIR/Dialect/IR/CIRDialect.td
+1-262 files

LLVM/project 042a38fllvm/include/llvm/Support DebugCounter.h, llvm/lib/Support DebugCounter.cpp

[Support] Optimize DebugCounter (#170305)

Currently, DebugCounters work by creating a unique counter ID during
registration, and then using that ID to look up the counter information
in the global registry.

However, this means that anything working with counters has to always go
through the global instance. This includes the fast path that checks
whether any counters are enabled.

Instead, we can drop the counter IDs, and make the counter variables use
CounterInfo themselves. We can then directly check whether the specific
counter is active without going through the global registry. This is
both faster for the fast-path where all counters are disabled, and also
faster for the case where only one counter is active (as the fast-path
can now still be used for all the disabled counters).

After this change, disabled counters become essentially free at runtime,
and we should be able to enable them in non-assert builds as well.
DeltaFile
+61-69llvm/include/llvm/Support/DebugCounter.h
+28-38llvm/lib/Support/DebugCounter.cpp
+1-0llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+90-1073 files

LLVM/project 9f634c6llvm/lib/Target/RISCV/GISel RISCVLegalizerInfo.cpp, llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv legalize-extract-subvector.mir

[RISCV][GISel] Fix legalize G_EXTRACT_SUBVECTOR (#169877)

Fix wrong mask type that used by G_VSLIDEDOWN_VL.
DeltaFile
+28-28llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
+1-1llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
+29-292 files

LLVM/project 689b3ccclang/docs ReleaseNotes.rst, clang/include/clang/Basic DiagnosticLexKinds.td DiagnosticGroups.td

[clang] Support header shadowing diagnostics in Clang header search (#162491)

When including a header file, multiple files with the same name may
exist across different search paths, like:
   |-- main.cpp
  |-- **header.h**
  |-- include
  |  └── **header.h**
The compiler usually picks the first match it finds (typically following
MSVC rules for current/include-chain paths first, then regular -I
paths), which may not be the user’s intended header.
This silent behavior can lead to subtle runtime API mismatches or
increase the cost of resolving errors such as “error: use of undeclared
identifier”, especially in large projects.

Therefore, this patch tries to provide a diagnostic message without
changing the current header selection. It does this by performing an
additional search for duplicate filenames across all search paths (both
MSVC rules and standard paths). This informs the user about a potential

    [5 lines not shown]
DeltaFile
+67-0clang/lib/Lex/HeaderSearch.cpp
+57-0clang/test/Preprocessor/header-shadowing.c
+6-0clang/include/clang/Lex/HeaderSearch.h
+4-0clang/include/clang/Basic/DiagnosticLexKinds.td
+3-0clang/docs/ReleaseNotes.rst
+2-0clang/include/clang/Basic/DiagnosticGroups.td
+139-06 files

LLVM/project 73036cfclang-tools-extra/clang-tidy/bugprone ExceptionEscapeCheck.cpp, clang-tools-extra/clang-tidy/modernize UseStdPrintCheck.h

[clang-tidy][NFC] Fix miscellaneous clang-tidy warnings (#170424)

DeltaFile
+2-2clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
+2-1clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
+1-1clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
+5-43 files

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