[all-commits] [llvm/llvm-project] a02a5e: [AArch64][llvm] (NFC) Rename `[SU]DOT_ZZZI?_{S|D}`...
Amir Ayupov via All-commits
all-commits at lists.llvm.org
Tue Oct 28 16:20:56 PDT 2025
Branch: refs/heads/users/shawbyoung/spr/main.bolt-match-functions-with-pseudo-probes
Home: https://github.com/llvm/llvm-project
Commit: a02a5e747b22598c7725c2775246daad0a5dde32
https://github.com/llvm/llvm-project/commit/a02a5e747b22598c7725c2775246daad0a5dde32
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedA320.td
M llvm/lib/Target/AArch64/AArch64SchedA510.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
Log Message:
-----------
[AArch64][llvm] (NFC) Rename `[SU]DOT_ZZZI?_{S|D}` and `BFMMLA_ZZZ` to _BtoS/_HtoD/HtoS to clarify (#160139)
Rename instruction references for `[SU]DOT_ZZZI?_{S|D}` and `BFMMLA_ZZZ`
to _BtoS/_HtoD/_HtoS to better clarify intent, and all cascading changes
in other places where these names are referenced.
Commit: 66fd42008a003e42241dcc709cecdfe5021f47ae
https://github.com/llvm/llvm-project/commit/66fd42008a003e42241dcc709cecdfe5021f47ae
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
Log Message:
-----------
[LV] Don't ignore invariant stores when costing (#158682)
Invariant stores of reductions are removed early in the VPlan
construction, and there is no reason to ignore them while costing.
Commit: 819e6b2043f39972a62a816b8ef16f63b63eea63
https://github.com/llvm/llvm-project/commit/819e6b2043f39972a62a816b8ef16f63b63eea63
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/get_active_lane_mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vfabi.ll
Log Message:
-----------
[InstSimplify] Consider vscale_range for get active lane mask (#160073)
Scalable get_active_lane_mask intrinsic calls can be simplified to i1
splat (ptrue) when its constant range is larger than or equal to the
maximum possible number of elements, which can be inferred from
vscale_range(x, y)
Commit: b5cf9a6e7df0f12b9995e560287f1d2e287a210b
https://github.com/llvm/llvm-project/commit/b5cf9a6e7df0f12b9995e560287f1d2e287a210b
Author: Pradeep Kumar <pradeepku at nvidia.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/CodeGen/NVPTX/tcgen05-mma-block-scale-ptx88.ll
M llvm/test/CodeGen/NVPTX/tcgen05-mma.ll
Log Message:
-----------
[LLVM][NVPTX-Tests] Fix tcgen05.mma lit tests committed in 7be3c3a (#160464)
This commit fixes the ptxas ISA version mismatch committed in 7be3c3aa4fb311c0c84d9d1321d5b1dca1e03ad7. Locally verified with CUDA 12.8 and 12.9 toolkits
Commit: e86209c04e53a7c8b855243f5697a6007d64b73c
https://github.com/llvm/llvm-project/commit/e86209c04e53a7c8b855243f5697a6007d64b73c
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode][test] Disable a bitcast test on s390x (#160452)
Fixes #160374
Commit: 755ffa3cc3e326e9cd1ca87822c456335e1f0a9a
https://github.com/llvm/llvm-project/commit/755ffa3cc3e326e9cd1ca87822c456335e1f0a9a
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Do not make align imply dereferenceability (#158062)
We currently specify that something like `load i8, align 16384` implies
that the object is actually dereferenceable up to 16384 bytes, rather
than only the one byte implied by the load type.
We should stop doing that, because it makes it invalid to infer
alignments larger than the load/store type, which is something we do
(and want to do).
There is some SDAG code that does make use of this property by
widening accesses and extracting part of them. However, I believe we
should be justifying that based on target-specific guarantees, rather
than a generic IR property. (The reasoning goes something like this:
Typically, memory protection has page granularity, so widening a load to
the alignment will not trap, as long as the alignment is not larger than
the page size, which is true for any practically interesting access
size.)
Fixes https://github.com/llvm/llvm-project/issues/90446.
Commit: fcf020f3be9a69ed41823e3ef0d05217692144aa
https://github.com/llvm/llvm-project/commit/fcf020f3be9a69ed41823e3ef0d05217692144aa
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/AssumptionCache.h
M llvm/lib/Analysis/AssumptionCache.cpp
M llvm/lib/Transforms/Scalar/DropUnnecessaryAssumes.cpp
Log Message:
-----------
[AssumptionCache] Don't use ResultElem for assumption list (NFC) (#160462)
ResultElem stores a weak handle of an assume, plus an index for
referring to a specific operand bundle. This makes sense for the results
of assumptionsFor(), which refers to specific operands of assumes.
However, assumptions() is a plain list of assumes. It does *not* contain
separate entries for each operand bundles. The operand bundle index is
always ExprResultIdx.
As such, we should be directly using WeakVH for this case, without the
additional wrapper.
Commit: 88a2f405acbf8df2809d37851c04c278890fea2f
https://github.com/llvm/llvm-project/commit/88a2f405acbf8df2809d37851c04c278890fea2f
Author: David Green <david.green at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
A llvm/test/CodeGen/AArch64/debug-info-sve-pair.mir
Log Message:
-----------
[Debug][AArch64] Do not crash on unknown subreg register sizes. (#160442)
The AArch64 zsub regs are scalable, so defined with a size of -1 (which
comes through as 65535). The RegisterSize is only 128, so code to try
and find overlapping regs of a z30_z31 in DwarfEmitter can crash on
trying to access out of range bits in a BitVector. Hexagon and x86 also
contain subregs with unknown sizes.
Ideally most of these would be scalable values but in the meantime add a
check that the register are small enough to overlap with the current
register size, to prevent us from crashing.
This fixes the issue reported on #153810.
Commit: 58870065109825ac0ed7adcd5bdc31de5b1c76b1
https://github.com/llvm/llvm-project/commit/58870065109825ac0ed7adcd5bdc31de5b1c76b1
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/lib/IR/Verifier.cpp
M llvm/test/Transforms/AlignmentFromAssumptions/domtree-crash.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Verifier/assume-bundles.ll
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[IR] Forbid mixing condition and operand bundle assumes (#160460)
Assumes either have a boolean condition, or a number of attribute based
operand bundles. Currently, we also allow mixing both forms, though we
don't make use of this in practice. This adds additional complexity for
code dealing with assumes.
Forbid mixing both forms, by requiring that assumes with operand bundles
have an i1 true condition.
Commit: 290c2a7c3377e23404d62502cdc9962479da5c98
https://github.com/llvm/llvm-project/commit/290c2a7c3377e23404d62502cdc9962479da5c98
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/Headers/xmmintrin.h
M clang/test/CodeGen/X86/mmx-builtins.c
Log Message:
-----------
[Headers][X86] Allow _mm_max_pu8 / _mm_min_pu8 to be used in constexpr (#160489)
These were missed in an earlier patch
Commit: 5031c163ff82029263b0611b91ca2290b288562b
https://github.com/llvm/llvm-project/commit/5031c163ff82029263b0611b91ca2290b288562b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/Headers/smmintrin.h
Log Message:
-----------
[Headers][X86] _mm_cmpgt_epi64 is only available on SSE42 targets (#160491)
smmintrin.h redefines __DEFAULT_FN_ATTRS half way through the file to
handle SSE42-only instructions - when we made _mm_cmpgt_epi64 constexpr
we failed to redefine __DEFAULT_FN_ATTRS_CONSTEXPR as well to match
Commit: 3c4f61179179e376ffe63921cd21b5a54491edbb
https://github.com/llvm/llvm-project/commit/3c4f61179179e376ffe63921cd21b5a54491edbb
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopUnroll/scevunroll.ll
Log Message:
-----------
[LoopPeel] Add test with branch that can be simplified with guards.
Add test where a branch can be removed after peeling by applying info
from loop guards. It unfortunately requires running IndVars first, to
strengthen flags of the induction.
Commit: 59e74a0749203998b3e5fd9bc6525de148db28ab
https://github.com/llvm/llvm-project/commit/59e74a0749203998b3e5fd9bc6525de148db28ab
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/examples/standalone/CMakeLists.txt
A mlir/examples/standalone/pyproject.toml
M mlir/test/CMakeLists.txt
M mlir/test/Examples/standalone/lit.local.cfg
A mlir/test/Examples/standalone/test.wheel.toy
M mlir/test/lit.site.cfg.py.in
Log Message:
-----------
Reland "[MLIR][Python] add Python wheel build demo/test" (#160481) (#160488)
Reland standalone wheel build. The fix is to gate the test behind
`BUILD_SHARED_LIBS=OFF` (because bundling all libs in the wheel requires
valid rpaths which is not the case under `BUILD_SHARED_LIBS=ON`).
Commit: ff4c4997ee72f4fda2d9939faefe8ef262d294a8
https://github.com/llvm/llvm-project/commit/ff4c4997ee72f4fda2d9939faefe8ef262d294a8
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
Log Message:
-----------
[mlir][bufferization] Support custom types at function boundaries (#159766)
Support custom types (3/N): allow custom tensor and buffer types in
function signatures and at call-sites. This is one of the major building
blocks to move in the direction of module-level one-shot-bufferization
support.
To achieve this, `BufferizationOptions::FunctionArgTypeConverterFn`
callback is converted to work with tensor-like and buffer-like types,
instead of the builtin counterparts. The default behavior for builtins
remains unchanged, while custom types by default go through
`TensorLikeType::getBufferType()` which is a general conversion
interface.
Commit: 20711c1ecb7a35fa0fc0bf99461da3afe682e355
https://github.com/llvm/llvm-project/commit/20711c1ecb7a35fa0fc0bf99461da3afe682e355
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/SMEPeepholeOpt.cpp
M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
M llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
Log Message:
-----------
[AArch64][SME] Allow SME peephole optimizations across SME pseudos (#157655)
This allows folding `smstart/stops` in more cases.
Commit: ea0e5185e2bd9d1de7c422b2c692c6f52a61ecfa
https://github.com/llvm/llvm-project/commit/ea0e5185e2bd9d1de7c422b2c692c6f52a61ecfa
Author: Ross Brunton <bruntonross at protonmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M offload/liboffload/API/Memory.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/memory/olGetMemInfo.cpp
A offload/unittests/OffloadAPI/memory/olGetMemInfoSize.cpp
Log Message:
-----------
[Offload] Add olGetMemInfo with platform-less API (#159581)
Commit: a7b4dd42bd00c57dbf42bdb1e2a351065c7282be
https://github.com/llvm/llvm-project/commit/a7b4dd42bd00c57dbf42bdb1e2a351065c7282be
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
Log Message:
-----------
[LV] Don't create partial reductions if factor doesn't match accumulator (#158603)
Check if the scale-factor of the accumulator is the same as the request
ScaleFactor in tryToCreatePartialReductions.
This prevents creating partial reductions if not all instructions in the
reduction chain form partial reductions. e.g. because we do not form a
partial reduction for the loop exit instruction.
Currently code-gen works fine, because the scale factor of
VPPartialReduction is not used during ::execute, but it means we compute
incorrect cost/register pressure, because the partial reduction won't
reduce to the specified scaling factor.
PR: https://github.com/llvm/llvm-project/pull/158603
Commit: e574381839f3ddcad2a6c885444d6c59c1b46a11
https://github.com/llvm/llvm-project/commit/e574381839f3ddcad2a6c885444d6c59c1b46a11
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
Log Message:
-----------
[AArch64] Add tests for partial reduction of shl.
Add tests with partial reductions where the operand is a shift instead
of a mul.
Commit: 825c956c64eb703a1874116df5bf894159f51aae
https://github.com/llvm/llvm-project/commit/825c956c64eb703a1874116df5bf894159f51aae
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
Log Message:
-----------
[AMDGPU] SIMemoryLegalizer: Factor out check if memory operations can affect the global AS (#160129)
Mostly NFC, and adds an assertion for gfx12 to ensure that no atomic scratch
instructions are present in the case of GloballyAddressableScratch. This should
always hold because of #154710.
Commit: 9e55d81c682a3649858320e942a3fe2ba3d5fff2
https://github.com/llvm/llvm-project/commit/9e55d81c682a3649858320e942a3fe2ba3d5fff2
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
M llvm/test/CodeGen/AMDGPU/add_u64.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
M llvm/test/CodeGen/AMDGPU/sub_u64.ll
Log Message:
-----------
[AMDGPU][AsmParser] Introduce MC representation for lit() and lit64(). (#160316)
And rework the lit64() support to use it.
The rules for when to add lit64() can be simplified and
improved. In this change, however, we just follow the existing
conventions on the assembler and disassembler sides.
In codegen we do not (and normally should not need to) add explicit
lit() and lit64() modifiers, so the codegen tests lose them. The change
is an NFCI otherwise.
Simplifies printing operands.
Commit: c520531cfcee6e6b4212e1501a9c35140d872398
https://github.com/llvm/llvm-project/commit/c520531cfcee6e6b4212e1501a9c35140d872398
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M lldb/test/CMakeLists.txt
M lldb/utils/lldb-dotest/CMakeLists.txt
Log Message:
-----------
[cmake][lldb][test] Respect LIBCXX_LIBDIR_SUBDIR (#159106)
This code in principle needs to match the one in libc++ but hasn't been updated to account for
LIBCXX_LIBDIR_SUBDIR so tests don't work if LLVM is built with it specified.
Fixes: ed155f3f237a7e3a3e40a84d815225d27e83f0db
Commit: 72b8073d05e35baa274e51a8d6a870bc4f0ad29e
https://github.com/llvm/llvm-project/commit/72b8073d05e35baa274e51a8d6a870bc4f0ad29e
Author: Artemy Skrebkov <artemy.skrebkov at intel.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/test/Dialect/SparseTensor/scf_1_N_conversion.mlir
Log Message:
-----------
[mlir][SCF] Add scf.index_switch support for populateSCFStructuralTypeConversionsAndLegality (#160344)
In a downstream project, there is a need for a type conversion pattern
for scf.index_switch operation. A test is added into
`mlir/test/Dialect/SparseTensor/scf_1_N_conversion.mlir` (not sure this
functionality is really required for sparse tensors, but the test
showcase that the new conversion pattern is functional)
Commit: 844e47c60c33c01fb39c8311eb930dd7d0ff7a62
https://github.com/llvm/llvm-project/commit/844e47c60c33c01fb39c8311eb930dd7d0ff7a62
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
Log Message:
-----------
[LV] Fixup a test after 66fd420 (#160505)
Follow up on 66fd420 ([LV] Don't ignore invariant stores when costing)
to regen a test with UTC.
Commit: 52ede499921f2e27c68a8f9bf9d5d3ad72aae083
https://github.com/llvm/llvm-project/commit/52ede499921f2e27c68a8f9bf9d5d3ad72aae083
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/GenerateInput.h
Log Message:
-----------
[libc++] Make the benchmarking data pseudo-random (#159525)
Having truly random data makes it quite difficult to compare benchmark
results, since a significant amount of difference can simply be due to
different input data. Making the data determinisic helps a lot when
trying to figure out whether specific changes indeed improve the
performance.
Commit: 2d6ce5148cf144ab800116e1f75a5d007e82cf58
https://github.com/llvm/llvm-project/commit/2d6ce5148cf144ab800116e1f75a5d007e82cf58
Author: Bart Chrzaszcz <bartchr at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/test/lit.site.cfg.py.in
Log Message:
-----------
[mlir] Fix bazel after `59e74a0`. (#160508)
Commit: d94a8282fbc60bcbb94732f06c98b93a7b09a35f
https://github.com/llvm/llvm-project/commit/d94a8282fbc60bcbb94732f06c98b93a7b09a35f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/new-delete.cpp
Log Message:
-----------
[clang][bytecode] Don't crash on a null Descriptor (#160506)
... for dynamic memory allocation. This happens when the requested array
size is too large.
Fixes #152951
Commit: 0a268f803cdf914f410728e0258524bb658e5b99
https://github.com/llvm/llvm-project/commit/0a268f803cdf914f410728e0258524bb658e5b99
Author: woruyu <1214539920 at qq.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Headers/avx2intrin.h
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/smmintrin.h
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512bw-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/sse2-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
Log Message:
-----------
[Headers][X86] VectorExprEvaluator::VisitCallExpr - allow SSE/AVX2/AVX512 pack intrinsics to be used in constexpr (#156003)
Fixes #154283
Commit: 077a796c0da6c32d5d43af9945b4c2728f43633f
https://github.com/llvm/llvm-project/commit/077a796c0da6c32d5d43af9945b4c2728f43633f
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRef.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/Interfaces/CMakeLists.txt
A mlir/include/mlir/Interfaces/MemOpInterfaces.h
A mlir/include/mlir/Interfaces/MemOpInterfaces.td
A mlir/include/mlir/Transforms/BubbleDownMemorySpaceCasts.h
M mlir/include/mlir/Transforms/Passes.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Interfaces/CMakeLists.txt
A mlir/lib/Interfaces/MemOpInterfaces.cpp
A mlir/lib/Transforms/BubbleDownMemorySpaceCasts.cpp
M mlir/lib/Transforms/CMakeLists.txt
A mlir/test/Transforms/test-bubble-down-memory-space-casts.mlir
Log Message:
-----------
[mlir] Implement a memory-space cast bubbling-down transform (#159454)
This commit adds functionality to bubble down memory-space casts
operations, allowing consumer operations to use the original
memory-space rather than first casting to a different memory space.
Changes:
- Introduce `MemorySpaceCastOpInterface` to handle memory-space cast
operations
- Create a `MemorySpaceCastConsumerOpInterface` pass that identifies and
bubbles down eligible casts
- Add implementation for memref and vector operations to handle
memory-space cast propagation
- Add `bubbleDownCasts` method to relevant operations to support the
fusion
In particular, in the current implementation only memory-space casts
into the default memory-space can be bubbled-down.
Example:
```mlir
func.func @op_with_cast_sequence(%arg0: memref<4x4xf32, 1>, %arg1: index, %arg2: f32) -> memref<16xf32> {
%memspacecast = memref.memory_space_cast %arg0 : memref<4x4xf32, 1> to memref<4x4xf32>
%c0 = arith.constant 0 : index
%c4 = arith.constant 4 : index
%expanded = memref.expand_shape %memspacecast [[0], [1, 2]] output_shape [4, 2, 2] : memref<4x4xf32> into memref<4x2x2xf32>
%collapsed = memref.collapse_shape %expanded [[0, 1, 2]] : memref<4x2x2xf32> into memref<16xf32>
%loaded = memref.load %collapsed[%c0] : memref<16xf32>
%added = arith.addf %loaded, %arg2 : f32
memref.store %added, %collapsed[%c0] : memref<16xf32>
%atomic_result = memref.atomic_rmw addf %arg2, %collapsed[%c4] : (f32, memref<16xf32>) -> f32
return %collapsed : memref<16xf32>
}
// mlir-opt --bubble-down-memory-space-casts
func.func @op_with_cast_sequence(%arg0: memref<4x4xf32, 1>, %arg1: index, %arg2: f32) -> memref<16xf32> {
%c4 = arith.constant 4 : index
%c0 = arith.constant 0 : index
%expand_shape = memref.expand_shape %arg0 [[0], [1, 2]] output_shape [4, 2, 2] : memref<4x4xf32, 1> into memref<4x2x2xf32, 1>
%collapse_shape = memref.collapse_shape %expand_shape [[0, 1, 2]] : memref<4x2x2xf32, 1> into memref<16xf32, 1>
%memspacecast = memref.memory_space_cast %collapse_shape : memref<16xf32, 1> to memref<16xf32>
%0 = memref.load %collapse_shape[%c0] : memref<16xf32, 1>
%1 = arith.addf %0, %arg2 : f32
memref.store %1, %collapse_shape[%c0] : memref<16xf32, 1>
%2 = memref.atomic_rmw addf %arg2, %collapse_shape[%c4] : (f32, memref<16xf32, 1>) -> f32
return %memspacecast : memref<16xf32>
}
```
---------
Signed-off-by: Fabian Mora <fabian.mora-cordero at amd.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: d2ac21d328a4233567de079278b7f8af497101a1
https://github.com/llvm/llvm-project/commit/d2ac21d328a4233567de079278b7f8af497101a1
Author: Harald van Dijk <harald.vandijk at codeplay.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
M clang/include/clang/AST/RecursiveASTVisitor.h
Log Message:
-----------
[RecursiveASTVisitor] Assert we skip implicit instantiations. (#110899)
In DEF_TRAVERSE_TMPL_SPEC_DECL, we attempt to skip implicit
instantiations by detecting that D->getTemplateArgsAsWritten() returns
nullptr. Previously, this was not reliable. To ensure we do not regress,
add an assertion and a test.
Commit: b4f1e0e5b1735bc6bef32e93da1c9bbb428e2dd9
https://github.com/llvm/llvm-project/commit/b4f1e0e5b1735bc6bef32e93da1c9bbb428e2dd9
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/test/Lower/OpenMP/declare-mapper.f90
A offload/test/offloading/fortran/target-declare-mapper-parent-allocatable.f90
Log Message:
-----------
[Flang][OpenMP] Implicitly map nested allocatable components in derived types (#160116)
This PR adds support for nested derived types and their mappers to the
MapInfoFinalization pass.
- Generalize MapInfoFinalization to add child maps for arbitrarily
nested allocatables when a derived object is mapped via declare mapper.
- Traverse HLFIR designates rooted at the target block arg and build
full coordinate_of chains; append members with correct membersIndex.
This fixes #156461.
Commit: 0bfcc5c1d640a1c81ff010c3e6276edf2da10913
https://github.com/llvm/llvm-project/commit/0bfcc5c1d640a1c81ff010c3e6276edf2da10913
Author: Sebastian Proell <63345705+sebproell at users.noreply.github.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags-std.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags.cpp
Log Message:
-----------
[Clang] Add diagnostic for why std::is_abstract is false (#156199)
Explain why a type is not abstract. Handles arrays, refs, unions,
pointers, and functions. If the non-abstract type has abstract base
classes, point out that their pure virtual methods must have been
overridden.
Adds onto #141911
Commit: 9cd0279a76e09ce3233ce333e9d8057b5dd031b8
https://github.com/llvm/llvm-project/commit/9cd0279a76e09ce3233ce333e9d8057b5dd031b8
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libcxx/include/ext/hash_set
A libcxx/test/extensions/gnu/hash_multiset/copy.pass.cpp
Log Message:
-----------
[libc++] Fix __gnu_cxx::hash_multiset copy construction (#160466)
Commit: 03742c5dacef177a990f0fa3a3d11ba720fc0ac5
https://github.com/llvm/llvm-project/commit/03742c5dacef177a990f0fa3a3d11ba720fc0ac5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/test/CodeGen/X86/avx2-builtins.c
Log Message:
-----------
[X86] Add missing _mm_broadcastsi128_si256 constexpr test coverage (#160523)
Commit: 32c6e162462bbca3beb2259b90cc922a7419ba2c
https://github.com/llvm/llvm-project/commit/32c6e162462bbca3beb2259b90cc922a7419ba2c
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Verifier.h
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/IR/Verifier.cpp
A llvm/test/Linker/Inputs/errno-tbaa-cxx-metadata.ll
A llvm/test/Linker/Inputs/errno-tbaa-metadata.ll
A llvm/test/Linker/link-errno-tbaa-metadata.ll
A llvm/test/Verifier/errno-tbaa-metadata-1.ll
A llvm/test/Verifier/errno-tbaa-metadata-2.ll
Log Message:
-----------
[IR] Introduce `llvm.errno.tbaa` metadata for errno alias disambiguation
Add a new named module-level frontend-annotated metadata that
specifies the TBAA node for an integer access, for which, C/C++
`errno` accesses are guaranteed to use (under strict aliasing).
This should allow LLVM to prove the involved memory location/
accesses may not alias `errno`; thus, to perform optimizations
around errno-writing libcalls (store-to-load forwarding amongst
others).
Previous discussion: https://discourse.llvm.org/t/rfc-modelling-errno-memory-effects/82972.
Commit: 6e6a3d83245e3fbd5f51a6457b5ee492cb84db2b
https://github.com/llvm/llvm-project/commit/6e6a3d83245e3fbd5f51a6457b5ee492cb84db2b
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
A llvm/test/tools/llvm-remarkutil/Inputs/filter.yaml
M llvm/test/tools/llvm-remarkutil/broken-bitstream-remark-magic.test
M llvm/test/tools/llvm-remarkutil/broken-bitstream-remark.test
M llvm/test/tools/llvm-remarkutil/broken-yaml-remark.test
M llvm/test/tools/llvm-remarkutil/empty-file.test
A llvm/test/tools/llvm-remarkutil/filter.test
M llvm/tools/llvm-remarkutil/CMakeLists.txt
M llvm/tools/llvm-remarkutil/RemarkCounter.cpp
M llvm/tools/llvm-remarkutil/RemarkCounter.h
A llvm/tools/llvm-remarkutil/RemarkFilter.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.h
Log Message:
-----------
[llvm-remarkutil] Introduce filter command (#159784)
Add a filter command to llvm-remarkutil. This can be used to extract
remarks for a certain function, pass, type, etc. from a large remarks
file to a new remarks file. This uses the same filter arguments as the
count command.
Depends on #156715. Thanks to this change, we don't need to buffer all
remarks before reserializing them, so we should be able to process
arbitrarily large files.
Pull Request: https://github.com/llvm/llvm-project/pull/159784
Commit: fc525bf4229e6e651ad36bade0d82e95d4eeee0d
https://github.com/llvm/llvm-project/commit/fc525bf4229e6e651ad36bade0d82e95d4eeee0d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in ModuleImport.cpp (NFC)
Commit: e98f34eb08b2bf7aed787e7f8a7cea9111f044c8
https://github.com/llvm/llvm-project/commit/e98f34eb08b2bf7aed787e7f8a7cea9111f044c8
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/test/Shell/SymbolFile/NativePDB/break-by-function.cpp
M lldb/test/Shell/SymbolFile/NativePDB/break-by-line.cpp
M lldb/test/Shell/SymbolFile/NativePDB/disassembly.cpp
M lldb/test/Shell/SymbolFile/NativePDB/find-functions.cpp
M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
M lldb/test/Shell/SymbolFile/NativePDB/stack_unwinding01.cpp
M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
M lldb/test/Shell/SymbolFile/PDB/variables.test
Log Message:
-----------
[LLDB][NativePDB] Create functions with mangled name (#149701)
Before, functions created using the NativePDB plugin would not know
about their mangled name. This showed when printing a stacktrace. There,
only the function name was shown. For
https://github.com/llvm/llvm-project/issues/143149, the mangled function
name is required to separate different parts.
This PR adds that name if available.
The Clang AST nodes also take in a mangled name, which was previously
unset. I don't think this unblocks anything further, because Clang can
mangle the function anyway.
Commit: 397efd4df9a33ed65f13e657910c2eed53f6b454
https://github.com/llvm/llvm-project/commit/397efd4df9a33ed65f13e657910c2eed53f6b454
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[NFC][AMDGPU] Refactor common declarations (#160406)
Move common declarations from switch cases to function entry.
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: 40aac77b7bdddf78391ce229f7e327fbec88b42f
https://github.com/llvm/llvm-project/commit/40aac77b7bdddf78391ce229f7e327fbec88b42f
Author: Bart Chrzaszcz <bartchr at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir] Fix bazel after 077a796. (#160533)
Commit: 88c988ed4ccdd43f25293b48cbfd9b30e0c79b6a
https://github.com/llvm/llvm-project/commit/88c988ed4ccdd43f25293b48cbfd9b30e0c79b6a
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
Log Message:
-----------
[PowerPC] Implement VSX Vector Integer Arithmetic Instructions (#158363)
New instructions added:
* xvadduwm - VSX Vector Add UnsignedWord Modulo
* xvadduhm - VSXVectorAddUnsigned HalfwordModulo
* xvsubuwm - VSXVectorSubtract UnsignedWord Modulo
* xvsubuhm - VSX Vector SubtractUnsigned HalfwordModulo
* xvmuluwm - VSX Vector MultiplyUnsigned WordModulo
* xvmuluhm - VSXVectorMultiply Unsigned Halfword Modulo
* xvmulhsw - VSX Vector MultiplyHigh SignedWord
* xvmulhsh - VSX Vector Multiply HighSigned Halfword
* xvmulhuw - VSX Vector Multiply HighUnsigned Word
* xvmulhuh - VSX Vector MultiplyHigh UnsignedHalfword
Commit: 9ff8f379f4ad3e8021abe03bbf09439c421d2bcc
https://github.com/llvm/llvm-project/commit/9ff8f379f4ad3e8021abe03bbf09439c421d2bcc
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/tools/llvm-remarkutil/BUILD.gn
Log Message:
-----------
[gn build] Port 6e6a3d83245e
Commit: 06a5834aa849d85892d1b2cb6d41bfa9f15d4cef
https://github.com/llvm/llvm-project/commit/06a5834aa849d85892d1b2cb6d41bfa9f15d4cef
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/YAMLTraits.h
M llvm/lib/Remarks/YAMLRemarkSerializer.cpp
M llvm/lib/Support/YAMLTraits.cpp
Log Message:
-----------
[Remarks] YAMLRemarkSerializer: StringRef-ize apis to avoid out-of-bounds read footguns (#160397)
In #159759, Tobias identified that because YAML IO `mapRequired`
expected a null-terminated `const char * Key`, we couldn't legally pass
a `StringRef` to it, as that might be length-terminated and not
null-terminated. In this patch, we move all of the YAML IO functions
that accept a `const char *` over to `StringRef`, avoiding that footgun
altogether.
Commit: 010f96aa9188df3a5bad585538dc83a5cb2bad87
https://github.com/llvm/llvm-project/commit/010f96aa9188df3a5bad585538dc83a5cb2bad87
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
Log Message:
-----------
[clang][bytecode] Use existing Descriptor local in InitElem op (#160535)
Instead of going the way through `Pointer::isUnknownSizeArray()`.
Commit: 8d8bd0aa00b972b4414af4905d360cd28ac20514
https://github.com/llvm/llvm-project/commit/8d8bd0aa00b972b4414af4905d360cd28ac20514
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M flang/include/flang/Optimizer/HLFIR/Passes.td
M flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt
A flang/lib/Optimizer/HLFIR/Transforms/ExpressionSimplification.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/HLFIR/expression-simplification.fir
Log Message:
-----------
[flang] Simplify the comparison of characters (#154593)
Because character comparison appends spaces to the shorter character,
calls to trim() that are used only in the comparison can be eliminated.
Example:
`trim(x) == trim(y)`
can be simplified to
`x == y`
This makes 527.cam4_r about 3% faster, measured on Neoverse V2.
This patch implements the optimization above in a new pass:
ExpressionSimplification. Although no other expression simplifications
are planned at the moment, they could be easily added to the new pass.
The ExpressionSimplification pass runs early in the HLFIR pipeline, to
make it easy to identify expressions before any transformations occur.
Commit: de80c36decc7f4f12e782bc0a859637de99be018
https://github.com/llvm/llvm-project/commit/de80c36decc7f4f12e782bc0a859637de99be018
Author: Andrey Timonin <timonina1909 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
Log Message:
-----------
[mlir][emitc] Adjust the emitc.class op description (NFC) (#152570)
Commit: 92e5060e4c2a5ddd422173204d33359009b2232c
https://github.com/llvm/llvm-project/commit/92e5060e4c2a5ddd422173204d33359009b2232c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[AST] Fix a warning
This patch fixes:
clang/lib/AST/ByteCode/InterpBuiltin.cpp:2603:15: error: unused
variable 'VT1' [-Werror,-Wunused-variable]
Commit: 2195fe7e018db3d9a6c2e392a2bf8591859b872f
https://github.com/llvm/llvm-project/commit/2195fe7e018db3d9a6c2e392a2bf8591859b872f
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/test/CodeGenHIP/builtins-make-buffer-rsrc.hip
M clang/test/CodeGenOpenCL/builtins-amdgcn-make-buffer-rsrc.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.make.buffer.rsrc.ll
M llvm/test/CodeGen/AMDGPU/iglp-no-clobber.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
M llvm/test/CodeGen/AMDGPU/make-buffer-rsrc-lds-fails.ll
M llvm/test/CodeGen/AMDGPU/ptr-buffer-alias-scheduling.ll
M llvm/test/Transforms/Attributor/AMDGPU/tag-invariant-loads.ll
M llvm/test/Transforms/FunctionAttrs/make-buffer-rsrc.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
M llvm/test/Transforms/LICM/AMDGPU/buffer-rsrc-ptrs.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/buffer-fat-pointer.ll
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[AMDGPU] Add the support for 45-bit buffer resource (#159702)
On new targets like `gfx1250`, the buffer resource (V#) now uses this
format:
```
base (57-bit): resource[56:0]
num_records (45-bit): resource[101:57]
reserved (6-bit): resource[107:102]
stride (14-bit): resource[121:108]
```
This PR changes the type of `num_records` from `i32` to `i64` in both
builtin and intrinsic, and also adds the support for lowering the new
format.
Fixes SWDEV-554034.
---------
Co-authored-by: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Commit: 1fda25772843bdb2d399734e386540203aa834d0
https://github.com/llvm/llvm-project/commit/1fda25772843bdb2d399734e386540203aa834d0
Author: Krishna Pandey <kpandey81930 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/log_bf16.cpp
A libc/src/math/log_bf16.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/log_bf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/log_bf16_test.cpp
Log Message:
-----------
[libc][math][c++23] Add log_bf16 math function (#157811)
This PR adds log_bf16 higher math function for BFloat16 type along with
the tests.
---------
Signed-off-by: Krishna Pandey <kpandey81930 at gmail.com>
Commit: 3be8294bf9bef8f046db89b0b590642387312d8c
https://github.com/llvm/llvm-project/commit/3be8294bf9bef8f046db89b0b590642387312d8c
Author: Bart Chrzaszcz <bartchr at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir] Fix bazel after 077a796 round 2. (#160542)
Commit: 934f802731887f5ed183d13f1b538414c518b004
https://github.com/llvm/llvm-project/commit/934f802731887f5ed183d13f1b538414c518b004
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
A llvm/test/CodeGen/AMDGPU/fma-mix.gfx11plus.ll
M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/mad-mix.ll
M llvm/test/CodeGen/AMDGPU/preserve-hi16.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] true16 isel pattern for fma_mix_f16/bf16 (#159648)
This patch includes:
1. fma_mix inst takes fp16 type as input, but place the operand in
vgpr32. Update selector to insert vgpr32 for true16 mode if necessary.
2. fma_mix inst returns fp16 type as output, but place the vdst in
vgpr32. Create a fma_mix_t16 pesudo inst for isel pattern, and lower it
to mix_lo/hi in the mc lowering pass.
These stop isel from emitting illegal `vgpr32 = COPY vgpr16` and improve
code quality
Commit: 3b5c6bfc6abbc8c11f386a68f66eceafc3bb786c
https://github.com/llvm/llvm-project/commit/3b5c6bfc6abbc8c11f386a68f66eceafc3bb786c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/AllocatorBase.h
Log Message:
-----------
[Support] Use std::move in AllocatorHolder's move constructor (NFC) (#160444)
std::move is more idiomatic and readable than the equivalent
static_cast.
Commit: 21ce61bcdebf561d0a7bbcfd12be32a0b51f4ba2
https://github.com/llvm/llvm-project/commit/21ce61bcdebf561d0a7bbcfd12be32a0b51f4ba2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/GenericUniformityImpl.h
Log Message:
-----------
[ADT] Use "static inline" to initialize EmptyDivergenceDesc; (NFC) (#160445)
In C++17, we can initialize a static member variable with "static
inline" as part of the class definition. With this, we can eliminate
the out-of-line static initializer involving boilerplate template
code.
Commit: d6160137af892693a22f0864a766e4beb96f93ff
https://github.com/llvm/llvm-project/commit/d6160137af892693a22f0864a766e4beb96f93ff
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/ilist_node.h
M llvm/include/llvm/ADT/simple_ilist.h
Log Message:
-----------
[ADT] Make ilist_select_iterator_type a type alias (NFC) (#160446)
Without this patch, we have:
template <bool use_iterator_bits, typename Opts, bool arg1, bool arg2>
struct ilist_select_iterator_type {
using type = ...;
}
This means that we must reference "type" with somewhat mouthful:
typename ilist_select_iterator_type<...>::type
This patch simplifies the reference by making
ilist_select_iterator_type a type alias.
Now, we always obtain "bool use_iterator_bit" from
OptionsT::has_iterator_bits, so this patch folds the logic into the
type alias.
Commit: 7196554c2a16b5323923ae90008ccc48e33c020d
https://github.com/llvm/llvm-project/commit/7196554c2a16b5323923ae90008ccc48e33c020d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/BinaryStreamRef.h
M llvm/include/llvm/Support/DebugCounter.h
M llvm/include/llvm/Support/FormatProviders.h
M llvm/include/llvm/Support/MD5.h
M llvm/include/llvm/Support/OnDiskHashTable.h
M llvm/include/llvm/Support/ScaledNumber.h
M llvm/lib/Support/OptimizedStructLayout.cpp
M llvm/lib/Support/ScaledNumber.cpp
M llvm/lib/Support/SmallPtrSet.cpp
M llvm/lib/Support/SourceMgr.cpp
M llvm/lib/Support/StringExtras.cpp
Log Message:
-----------
[Support] Use list-initialization for returning pairs (#160447)
In C++17 and later, "return {A, B};" guarantees copy elision for a
std::pair return type, ensuring the object is constructed directly in
the return slot. This patch updates those instances under Support/.
Commit: 8f7cfd4e9eaf319d21b56e4b51a72ac286c97fa8
https://github.com/llvm/llvm-project/commit/8f7cfd4e9eaf319d21b56e4b51a72ac286c97fa8
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/Verifier.h
M llvm/lib/IR/Verifier.cpp
Log Message:
-----------
[Verifier] Modify TBAAVerifier helpers signatures to accept a nullable (NFC)
sanitizer-aarch64-linux-bootstrap-ubsan buildbot was previously failing.
Resolves: https://lab.llvm.org/buildbot/#/builders/169/builds/15232.
Commit: 41387abd33bef7655807c5b720a34b05184cc040
https://github.com/llvm/llvm-project/commit/41387abd33bef7655807c5b720a34b05184cc040
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/Sema/SemaOpenACC.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/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
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/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
A clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-int.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
A clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
Log Message:
-----------
[CIR][OpenACC] Implement pointer/array recipe destructors (#160189)
After previous implementation, I discovered that we were both doing
arrays incorrectly for recipes, plus didn't get the pointer allocations
done correctly. This patch is the first of a few in a series that
attempts to make sure we get all pointers/arrays correct.
This patch is limited to just 'private' and destructors, which
simplifies the review significantly. Destructors are simply looped
through and called at each level.
The 'recipe-decl' is the 'least bounded' (that is, the type of the
expression, in the type of `int[5] i; #pragma acc parallel
private(i[1])`, the type of the `recipe-decl` is `int`. This allows
us to do init/destruction at the element level.
This patch also adds infrastructure for the rest of the series of
private (for the init section), as well as extensive testing for
'private', with a lot of 'TODO' locations.
Future patches will fill these in, but at the moment, there is an NYI
warning for bounds, so a number of tests are updated to handle that.
Commit: 4d4cb757f94470b95458fcbe3b88332b212feeee
https://github.com/llvm/llvm-project/commit/4d4cb757f94470b95458fcbe3b88332b212feeee
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/LLVMContext.h
M llvm/lib/IR/LLVMContext.cpp
M llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp
M llvm/test/Bitcode/operand-bundles-bc-analyzer.ll
Log Message:
-----------
[LLVMContext] Add OB_align assume bundle op ID. (#158078)
Assume operand bundles are emitted in a few more places now, including
used in various places in libc++. Add a dedicated ID for them.
PR: https://github.com/llvm/llvm-project/pull/158078
Commit: ef5e5ef6dd554e4fdc5c5c86e0969aa0455d2d8d
https://github.com/llvm/llvm-project/commit/ef5e5ef6dd554e4fdc5c5c86e0969aa0455d2d8d
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/test/lit.site.cfg.py.in
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[MLIR][Bazel] correctly fix bazel build after 59e74a0 (#160539)
https://github.com/llvm/llvm-project/pull/160508 wasn't the correct fix
- the fix just disabled the test because
https://github.com/llvm/llvm-project/blob/59e74a0749203998b3e5fd9bc6525de148db28ab/mlir/test/Examples/standalone/lit.local.cfg#L18
is now always `False` (`if not "0"` is always `False`). This PR is the
correct fix.
Commit: 8df194f6a933da6245053c4e89c6cabff1743319
https://github.com/llvm/llvm-project/commit/8df194f6a933da6245053c4e89c6cabff1743319
Author: Sina Mahdavi <sinamhdv_apple at icloud.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/Frontend/HeaderIncludeGen.cpp
A clang/test/Preprocessor/Inputs/print-header-json/module.modulemap
A clang/test/Preprocessor/Inputs/print-header-json/system/module.modulemap
M clang/test/Preprocessor/print-header-json.c
Log Message:
-----------
[Clang] Support includes translated to module imports in -header-include-filtering=direct-per-file (#156756)
This PR is a follow-up to
https://github.com/llvm/llvm-project/pull/137087 that extends the output
format generated by -header-include-filtering=direct-per-file to include
information about the source location where those include/imports
happended, as well as include information about the imported module when
an include is translated to a module import.
Commit: 3bdf05a05a8128931684556dea7edf4ebc1053d0
https://github.com/llvm/llvm-project/commit/3bdf05a05a8128931684556dea7edf4ebc1053d0
Author: Derek Schuff <dschuff at chromium.org>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
R llvm/test/CodeGen/WebAssembly/fake-use.ll
Log Message:
-----------
Revert "[WebAssembly] Remove FAKE_USEs before ExplicitLocals" (#160553)
Reverts llvm/llvm-project#160228
See
https://github.com/llvm/llvm-project/pull/160228#issuecomment-3329752471
Commit: 5fde3e884beb2b93cbd0455ccd9f22e9e30b1470
https://github.com/llvm/llvm-project/commit/5fde3e884beb2b93cbd0455ccd9f22e9e30b1470
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
ELF: EhFrameSection: Remove unused template parameters
Commit: 844150de8ab7b28e1de5e003335b6f39cc671b70
https://github.com/llvm/llvm-project/commit/844150de8ab7b28e1de5e003335b6f39cc671b70
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
Log Message:
-----------
[AMDGPU] Update comment about coop atomics ordering. NFC (#160463)
Commit: 1becadeebc76db49300a74666c846047d027733e
https://github.com/llvm/llvm-project/commit/1becadeebc76db49300a74666c846047d027733e
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
Log Message:
-----------
[AMDGPU] Update comments in memory legalizer. NFC (#160453)
Commit: f81cc8bddcbc3561dbf9baa9ba48ffdae2443f3b
https://github.com/llvm/llvm-project/commit/f81cc8bddcbc3561dbf9baa9ba48ffdae2443f3b
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[AMDGPU] Update gfx1250 documentation. NFC (#160457)
Commit: 2bf3748eeabf6e963adf2ab48b158438f4774bbc
https://github.com/llvm/llvm-project/commit/2bf3748eeabf6e963adf2ab48b158438f4774bbc
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/test/CodeGenHLSL/resources/NonUniformResourceIndex.hlsl
Log Message:
-----------
[HLSL] NonUniformResourceIndex implementation (#160430)
Adds HLSL function `NonUniformResourceIndex` to `hlsl_intrinsics.h.` The function calls a builtin `__builtin_hlsl_resource_nonuniformindex` which gets translated to LLVM intrinsic `llvm.{dx|spv}.resource_nonuniformindex`.
Closes #157923
Commit: e3aa00e517e58583f96ca62e2c654d9ce6dec060
https://github.com/llvm/llvm-project/commit/e3aa00e517e58583f96ca62e2c654d9ce6dec060
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Ptr/IR/PtrEnums.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrOps.td
M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/Ptr/PtrToLLVMIRTranslation.cpp
M mlir/test/Dialect/Ptr/invalid.mlir
M mlir/test/Dialect/Ptr/ops.mlir
M mlir/test/Target/LLVMIR/ptr.mlir
Log Message:
-----------
[mlir][ptr] Add `ptr.ptr_diff` operation (#157354)
Thi patch introduces the `ptr.ptr_diff` operation for computing pointer
differences. The semantics of the operation are given by:
```
The `ptr_diff` operation computes the difference between two pointers,
returning an integer or index value representing the number of bytes
between them.
The operation supports both scalar and shaped types with value semantics:
- When both operands are scalar: produces a single difference value
- When both are shaped: performs element-wise subtraction,
shapes must be the same
The operation also supports the following flags:
- `none`: No flags are set.
- `nuw`: No Unsigned Wrap, if the subtraction causes an unsigned overflow,
the result is a poison value.
- `nsw`: No Signed Wrap, if the subtraction causes a signed overflow, the
result is a poison value.
NOTE: The pointer difference is calculated using an integer type specified
by the data layout. The final result will be sign-extended or truncated to
fit the result type as necessary.
```
This patch also adds translation to LLVM IR hooks for the `ptr_diff` op.
This translation uses the `ptrtoaddr` builder to compute only index bits
difference.
Example:
```mlir
llvm.func @ptr_diff_vector_i32(%ptrs1: vector<8x!ptr.ptr<#llvm.address_space<0>>>, %ptrs2: vector<8x!ptr.ptr<#llvm.address_space<0>>>) -> vector<8xi32> {
%diffs = ptr.ptr_diff %ptrs1, %ptrs2 : vector<8x!ptr.ptr<#llvm.address_space<0>>> -> vector<8xi32>
llvm.return %diffs : vector<8xi32>
}
```
Translation to LLVM IR:
```llvm
define <8 x i32> @ptr_diff_vector_i32(<8 x ptr> %0, <8 x ptr> %1) {
%3 = ptrtoint <8 x ptr> %0 to <8 x i64>
%4 = ptrtoint <8 x ptr> %1 to <8 x i64>
%5 = sub <8 x i64> %3, %4
%6 = trunc <8 x i64> %5 to <8 x i32>
ret <8 x i32> %6
}
```
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: eb8589987267dc5315c09aa10265f8071b516074
https://github.com/llvm/llvm-project/commit/eb8589987267dc5315c09aa10265f8071b516074
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-masked_load.ll
Log Message:
-----------
[InstCombine] Fold selects into masked loads (#160522)
Selects can be folded into masked loads if the masks are identical.
Commit: 0acfdbd7e2b5c66d3611eee8164f8e4f7b6e42f8
https://github.com/llvm/llvm-project/commit/0acfdbd7e2b5c66d3611eee8164f8e4f7b6e42f8
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libcxx/utils/requirements.txt
M libcxx/utils/visualize-historical
Log Message:
-----------
[libc++] Improve historical benchmark visualization
- Use LOWESS instead of OLS trendlines, it tends to fit data better
- Plot using the commit date instead of the arbitrary revlist order
- Fix progress bar reporting when we prefetch Git commit data
- Allow adding a subtitle to charts, which is helpful to stay organized
- Ensure that series are always presented in the same (alphabetical) order
Commit: 38aa93d2571a482f73890e06c8cfca084cc58c9e
https://github.com/llvm/llvm-project/commit/38aa93d2571a482f73890e06c8cfca084cc58c9e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libcxx/utils/compare-benchmarks
Log Message:
-----------
[libc++] Allow naming series and adding a subtitle in compare-benchmarks
This is really helpful to stay organized when generating multiple
charts.
Commit: 106fea90117424c2def33d5ca0eb7b772af9783e
https://github.com/llvm/llvm-project/commit/106fea90117424c2def33d5ca0eb7b772af9783e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/spec.gen.py
Log Message:
-----------
[libc++] Pin down the C version to use for SPEC
Also, disable a warning which allows additional benchmarks to build
successfully.
Commit: 1b944e24d2aed0c8a0dbabedf8c51e7291f151a1
https://github.com/llvm/llvm-project/commit/1b944e24d2aed0c8a0dbabedf8c51e7291f151a1
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M flang/lib/Semantics/check-cuda.cpp
M flang/test/Semantics/cuf23.cuf
Log Message:
-----------
[flang][cuda] Allow print of managed and unified variables (#160571)
Commit: 51fa1196179ff96cd6b392549a37d00cc83cf580
https://github.com/llvm/llvm-project/commit/51fa1196179ff96cd6b392549a37d00cc83cf580
Author: Mark Danial <mark.danial at ibm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/lds-run-twice-absolute-md.ll
M llvm/test/CodeGen/AMDGPU/lds-run-twice.ll
M llvm/test/tools/llvm-ar/option-X.test
M llvm/test/tools/llvm-nm/option-X-AIX.test
M llvm/test/tools/llvm-ranlib/aix-X-option.test
M llvm/test/tools/llvm-strings/eof.test
M llvm/test/tools/llvm-strings/stdin.test
M llvm/test/tools/llvm-strings/whitespace.test
M llvm/test/tools/yaml2obj/empty-or-invalid-doc.yaml
M llvm/utils/lit/tests/shtest-readfile-external.py
M llvm/utils/lit/tests/shtest-ulimit-nondarwin.py
Log Message:
-----------
[AIX] Fix AIX failures due to switch to internal shell (#160566)
This PR fixes a bunch of failures on AIX that occurred due to the switch
to lit internal shell by default. The failures deal with the following:
1. unset not being supported by lit internal shell
2. A bug with echo -n on AIX when there are multiple pipes in the RUN
command
3. ulimit test case not supported on AIX due to the -v option
4. platform specific error message for missing file
Commit: ce170d28ad4e90111abe0e4c16d4f7e716ae2256
https://github.com/llvm/llvm-project/commit/ce170d28ad4e90111abe0e4c16d4f7e716ae2256
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Implement Unary real & imag on scalar expr (#159916)
This change implements Unary real & imag on scalar expr
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: 3c53adec68b3e7be3d69bc4e24168e530097fce0
https://github.com/llvm/llvm-project/commit/3c53adec68b3e7be3d69bc4e24168e530097fce0
Author: lntue <lntue at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libc/benchmarks/LibcMemoryBenchmark.cpp
M libc/benchmarks/LibcMemoryBenchmarkMain.cpp
M libc/benchmarks/LibcMemoryBenchmarkTest.cpp
M libc/src/__support/CPP/tuple.h
M libc/test/UnitTest/MemoryMatcher.cpp
M libc/test/integration/src/pthread/pthread_create_test.cpp
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/string/memory_utils/utils_test.cpp
Log Message:
-----------
[libc][NFC] Remove usage of the C keyword `I`. (#160567)
Commit: 89eeecd15c28d399dc533ba24f02cb317b81e3e4
https://github.com/llvm/llvm-project/commit/89eeecd15c28d399dc533ba24f02cb317b81e3e4
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
Log Message:
-----------
[PowerPC][NFC] Simplify vector unpacked instr classes (#160564)
Apply suggestion as per review comment in
https://github.com/llvm/llvm-project/pull/151004/files#r2240893226
Commit: f95aacaf0465925e508d019b47efcb635428d049
https://github.com/llvm/llvm-project/commit/f95aacaf0465925e508d019b47efcb635428d049
Author: Samira Bakon <bazuzi at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Copy records relative to the destination type for c… (#160557)
…opy/move assignments.
This mirrors the handling of copy/move constructors.
Also fix a couple capitalizations of variables in an adjacent and
related test.
Commit: 4b99547b74450fd54a552261e44850718bed2c9d
https://github.com/llvm/llvm-project/commit/4b99547b74450fd54a552261e44850718bed2c9d
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
Log Message:
-----------
[mlir][tosa] Use `LogicalResult` in validation functions (#160052)
This commit replaces functions that previously returned `bool` to
indicate validation success or failure with `LogicalResult`.
Commit: 14a126b37a2a0898ad09aa00da7b276d20cb2a86
https://github.com/llvm/llvm-project/commit/14a126b37a2a0898ad09aa00da7b276d20cb2a86
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/test/Dialect/Tosa/canonicalize.mlir
Log Message:
-----------
[mlir][tosa] Remove `log(exp(x))` and `exp(log(x))` folders (#156434)
Both of the folders would reduce to `x`. These folders were vulnerable
to overflow / underflow issues, resulting in a difference in numerical
behaviour when running or not running the folders. For now they have
been removed. We can consider restoring these as part of an optional and
separate "fast-math" style of transformation in the future.
Commit: 3cc56dd82a78964ab0b5edc9738abf90f259e36a
https://github.com/llvm/llvm-project/commit/3cc56dd82a78964ab0b5edc9738abf90f259e36a
Author: Marcel Jacobse <mjacobse at uni-bremen.de>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaChecking.cpp
M clang/test/Sema/warn-double-promotion.c
A clang/test/Sema/warn-double-promotion.cpp
Log Message:
-----------
[Clang] [Sema] Fix -Wdouble-promotion in C++ list-initialization (#159992)
Resolves https://github.com/llvm/llvm-project/issues/33409.
The information `IsListInit` is already passed to function
`CheckImplicitConversion` for another use-case which makes adding a
condition for the double-promotion case simple.
Also adds tests, both for the changed list-initialization case as well
as for normal explicit casts which already would have passed before this
PR. These negative tests are added directly next to the positive tests
in `warn-double-promotion.c` or for the C++-specific cases in a new .cpp
version of that file.
Commit: 792a7bbd99ba7fafabc8c03cf9f3c29e729858c0
https://github.com/llvm/llvm-project/commit/792a7bbd99ba7fafabc8c03cf9f3c29e729858c0
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
A llvm/test/Transforms/PGOProfile/profcheck-synthetic.ll
Log Message:
-----------
[profcheck] Option to inject distinct small weights (#159644)
There are cases where the easiest way to regression-test a profile change is to add `!prof` metadata, with small numbers as to simplify manual verification. To ensure coverage, this (the inserting) may become tedious. This patch makes `prof-inject` do that for us, if so opted in.
The list of weights used is a bunch of primes, used as a circular buffer.
Issue #147390
Commit: 59b4074037827290f97eeac512c3f8332cf23457
https://github.com/llvm/llvm-project/commit/59b4074037827290f97eeac512c3f8332cf23457
Author: Rahman Lavaee <rahmanl at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
M llvm/lib/CodeGen/BasicBlockSectionsProfileReader.cpp
A llvm/test/CodeGen/X86/basic-block-sections-cfg.ll
M llvm/test/CodeGen/X86/basic-block-sections-clusters-error.ll
Log Message:
-----------
[Propeller] Read the CFG profile from the propeller directive. (#160422)
The CFG allows us to do layout optimization in the compiler.
Furthermore, it allows further branch optimization.
Commit: 6e904e89cb97fa113c95f746942e04226a7d2207
https://github.com/llvm/llvm-project/commit/6e904e89cb97fa113c95f746942e04226a7d2207
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/utils/lit/tests/shtest-readfile.py
Log Message:
-----------
[lit] [test] Fix the shtest-readfile test on Python 3.13 on Windows (#160503)
Python 3.13 considers "/file/does/not/exist" to not be an absolute path
on Windows, so the test runner does os.path.join(cwd, filePath), which
can end up with an output path such as "D:/file/does/not/exist".
Accept a potential prefix before the missing path here.
This fixes running the lit tests on Windows with Python 3.13.
Commit: 12bc084b3276c891162a298bafdf153e1701da4a
https://github.com/llvm/llvm-project/commit/12bc084b3276c891162a298bafdf153e1701da4a
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/MC/MCObjectFileInfo.cpp
M llvm/test/CodeGen/X86/debug-loclists.ll
M llvm/test/DebugInfo/X86/convert-loclist.ll
M llvm/test/DebugInfo/X86/ranges_always_default.ll
M llvm/test/DebugInfo/X86/split-dwarf-v5-ranges.ll
Log Message:
-----------
[MC][COFF] Add missing sections for DWO (#157239)
Add DWO sections `.debug_loclists.dwo` and `.debug_rnglists.dwo` to the
COFF targets.
This enables building with `-DLLVM_USE_SPLIT_DWARF=ON` on the Cygwin
target, which previously failed due to compiler crashes.
Commit: 08c98baddf123d42b7f3267f28ad121f5b449cdb
https://github.com/llvm/llvm-project/commit/08c98baddf123d42b7f3267f28ad121f5b449cdb
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
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/compute-firstprivate-clause-templates.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-templates.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
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/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/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-int.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
Log Message:
-----------
[NFC][OpenACC] Reorder 'recipe' generation to be lexical (#160585)
It was noticed on a previous patch that I could have emitted recipes in
lexical order instead of reverse order, which would improve the
readability of a lot of tests. This patch implements that, and changes
all of the required test.
Commit: 738e927652c4b270fe60b65ad289077d8160d5c8
https://github.com/llvm/llvm-project/commit/738e927652c4b270fe60b65ad289077d8160d5c8
Author: Andrew <dota2drot at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-cov/Inputs/binary-formats.canonical.json
M llvm/test/tools/llvm-cov/mcdc-export-json.test
M llvm/tools/llvm-cov/CoverageExporterJson.cpp
Log Message:
-----------
Add executed MC/DC TestVectors to `llvm-cov export` (#159119)
It adds a new JSON array with the list of test vectors to the end of the mcdc_records.
I also bumped the json format version accordingly, which I believe wasn’t done properly in the past when new fields were added.
This PR adds tests and comment docs for
https://github.com/llvm/llvm-project/pull/105511
---------
Co-authored-by: Arpad Borsos <swatinem at swatinem.de>
Commit: 70b150c10c3877469abebfa2caa2fae41e165112
https://github.com/llvm/llvm-project/commit/70b150c10c3877469abebfa2caa2fae41e165112
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
R llvm/test/CodeGen/AMDGPU/gfx1250-scratch-scope-se.ll
Log Message:
-----------
[AMDGPU] Remove gfx1250-scratch-scope-se.ll. NFC (#160584)
The test is supposed to check SCOPE_SE upgrade which was
removed and also does not present in the test.
Commit: e9e166e54354330c474457711a8e7a7ca2efd731
https://github.com/llvm/llvm-project/commit/e9e166e54354330c474457711a8e7a7ca2efd731
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Disable tests for unavailable builtins (#158664)
The builtins `__fixunstfdi` and `__multc3` may be removed by the
preprocessor depending on configuration flags. When this happens, the
corresponding tests fail at link time due to missing definitions.
Disable these tests when the builtins are not available.
rdar://159705803
rdar://159705705
Commit: f963d17f898c801193da3dafb40b29c62b622b68
https://github.com/llvm/llvm-project/commit/f963d17f898c801193da3dafb40b29c62b622b68
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/examples/standalone/python/CMakeLists.txt
M mlir/examples/standalone/python/StandaloneExtensionNanobind.cpp
M mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp
M mlir/examples/standalone/test/CAPI/CMakeLists.txt
M mlir/examples/standalone/test/CAPI/standalone-capi-test.c
M mlir/examples/standalone/test/python/smoketest.py
M mlir/test/CMakeLists.txt
Log Message:
-----------
[MLIR][Standalone] use narrow registration instead of RegisterEverything (#160469)
This PR cleans up a long-standing TODO by avoiding
`MLIRPythonExtension.RegisterEverything` in the Standalone example and
registering the necessary dialects explicitly instead.
Commit: d235d62d65a8403f1a239720058646bcefcd3d74
https://github.com/llvm/llvm-project/commit/d235d62d65a8403f1a239720058646bcefcd3d74
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/test/Dialect/XeGPU/xegpu-unroll-patterns.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[MLIR][XeGPU] Add unroll pattern for load_gather and store_scatter with offsets (#159453)
This PR adds unrolling/blocking patterns for load_gather and
store_scatter ops with offsets.
Commit: 5d511b6736d0c70a99ea38bd800be0ffe65991e7
https://github.com/llvm/llvm-project/commit/5d511b6736d0c70a99ea38bd800be0ffe65991e7
Author: Julian Lettner <yln at users.noreply.github.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
A lldb/packages/Python/lldbsuite/test/cpu_feature.py
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/test/API/commands/register/register/register_command/TestRegisters.py
M lldb/test/API/macosx/sme-registers/TestSMERegistersDarwin.py
Log Message:
-----------
[lldb][test] Unify test infrastructure for checking CPU features (#153914)
This addresses limitations in our testing infrastructure for checking
CPU features. Before this
* `getCPUInfo()` was Linux-only, and the
* `@skipUnlessFeature` decorator was Darwin-only and did not consider
the remote (on device) testing use case.
Introduce `CPUFeature` class as an abstraction to hide the
platform-specific implementations to check for CPU features. Unify local
(on host) and remote (on device) test execution by always going through
`test.run_platform_command()` which uses LLDB's `platform shell <cmd>`
command.
Potential future cleanups: I think `@skipUnlessFeature` decorator could
be used in place of code like this:
```
if not self.isAArch64SME():
self.skipTest("SME must be present.")
if not self.isAArch64SME2():
self.skipTest("SME2 must be present.")
```
Commit: 37de695cb1de65dd16f589cdeae50008d1f91d4d
https://github.com/llvm/llvm-project/commit/37de695cb1de65dd16f589cdeae50008d1f91d4d
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/CUDA/cuda-code-gen.mlir
Log Message:
-----------
[flang][cuda] Make sure global device descriptor is allocated in managed memory (#160596)
When the descriptor of a global device variable is re-materialized to be
passed to a kernel, make sure it is allocated in managed memory
otherwise the kernel launch will fail.
Commit: ac3f148f60b147461050c62f9569e00b6678fd02
https://github.com/llvm/llvm-project/commit/ac3f148f60b147461050c62f9569e00b6678fd02
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Set extend kinds together with ExtOpTypes (NFC).
Set extend kinds together with ExtOpTypes. This will make it easier to
adjust the extend kind handling.
Commit: 2a5c6e1b990c002c6852047edb6affd4bbe9f8cb
https://github.com/llvm/llvm-project/commit/2a5c6e1b990c002c6852047edb6affd4bbe9f8cb
Author: Matthew Bastien <matthew_bastien at apple.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] bundle lldb-dap extension using esbuild (#160598)
The most recent version of the lldb-dap VS Code extension (0.2.17) fails
to activate because it's missing the `chokidar` dependency in the
`.vsix`. In order to prevent this from happening in the future, this PR
adds a `bundle-extension` step to extension packaging in order to bundle
the extension into a single `.js` file using esbuild. All dependencies
will be included in this bundle so that the `.vscodeignore` doesn't need
to be updated.
Commit: 18cffb8f469e9fd6df70084b121caaa18490a4af
https://github.com/llvm/llvm-project/commit/18cffb8f469e9fd6df70084b121caaa18490a4af
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] Bump the version to 0.2.18
Bump the version to 0.2.18 to address the missing chokidar dependency in
the .vsix.
Commit: 1c6e896c712d3f44947d3b26089f7ab55aa0d416
https://github.com/llvm/llvm-project/commit/1c6e896c712d3f44947d3b26089f7ab55aa0d416
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm][mustache] Add support for Triple Mustache (#159183)
We extend the logic in tokenize() to treat the `{{{}}}` delimiters
to treat it like other unescaped HTML. We do this by updating the
tokenizer to treat the new tokes the same way we do for the `{{&variable}}`
syntax, which avoid the need to change the parser.
We also update the llvm-test-mustache-spec tool to no longer mark Triple
Mustache as XFAIL.
Commit: 7c2e0dbddee5a5c790d432591efcdfbb7508d525
https://github.com/llvm/llvm-project/commit/7c2e0dbddee5a5c790d432591efcdfbb7508d525
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M flang/lib/Semantics/check-cuda.cpp
M flang/test/Semantics/cuf23.cuf
Log Message:
-----------
[flang][cuda] Avoid I/O error in block inside a kernel (#160599)
Make sure we get the program unit to check the device context. The scope
would be the block otherwise.
Commit: 7813da34e85e8dcef91a1f125abf65debbc9de3c
https://github.com/llvm/llvm-project/commit/7813da34e85e8dcef91a1f125abf65debbc9de3c
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M .github/workflows/pr-code-lint.yml
Log Message:
-----------
[GitHub] Bump clang-tidy version to 21th in CI (#160551)
Commit: 876296e9b7f0b1393cdaeb46901e18eb0b49ff93
https://github.com/llvm/llvm-project/commit/876296e9b7f0b1393cdaeb46901e18eb0b49ff93
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/utils/lit/tests/shtest-readfile-external.py
M llvm/utils/lit/tests/shtest-readfile.py
Log Message:
-----------
[lit] Allow retries for readfile tests (#160600)
This patch allows for two retry attempts for the readfile tests. This is
intended as a stop-gap until I have time to do proper investigation into
why exactly the tests are failing.
Commit: 6f58c16c494f7a287137d23728fd66d6f176ee9a
https://github.com/llvm/llvm-project/commit/6f58c16c494f7a287137d23728fd66d6f176ee9a
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgRelayoutOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
M mlir/test/lib/Dialect/Linalg/TestDataLayoutPropagation.cpp
Log Message:
-----------
[mlir][linalg] Use ub.poison in data layout propagation if a packed operand requires padding. (#159467)
In the past, it was hard to set padding values because we did not have
ub.poison. It is not always correct if we set zeros as padding values.
Now we can use `ub.poison` in this case. The revision adds the support
for setting padding value using `ub.poison` when padding is required in
the propagation. Otherwise, it creates an invalid pack op.
Additionally the revision adds a control option for allowing padding in
the pattern which is false by default. To correctly do this, a new
`requirePaddingValueStrict` method is added which assumes dynamic dims
would mean padding is required.
The revision also removes trailing white space in the lit test file.
Co-authored-by : Nirvedh Meshram <nirvedh at gmail.com>
---------
Signed-off-by: hanhanW <hanhan0912 at gmail.com>
Signed-off-by: Nirvedh Meshram <nirvedh at gmail.com>
Co-authored-by: Nirvedh Meshram <nirvedh at gmail.com>
Commit: c989283c27621843ce82b0d16aba34785650cb47
https://github.com/llvm/llvm-project/commit/c989283c27621843ce82b0d16aba34785650cb47
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGen/builtin-masked.c
M clang/test/Sema/builtin-masked.c
Log Message:
-----------
[Clang] Change masked load / store builtin interface to take scalar pointer (#156063)
Summary:
Right now these enformce alignment, which isn't convenient for the user
on platforms that support unaligned accesses. The options are to either
permit passing the alignment manually, or just assume it's unaligned
unless the user specifies it.
I've added https://github.com/llvm/llvm-project/pull/156057 which should
make the requiested alignment show up on the intrinsic if the user
passed `__builtin_assume_aligned`, however that's only with
optimizations. This shouldn't cause issues unless the backend
categorically decides to reject an unaligned access.
Commit: 83331cc9833e5ff20218733273ac7b273006192f
https://github.com/llvm/llvm-project/commit/83331cc9833e5ff20218733273ac7b273006192f
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/SemaCXX/cxx17-compat.cpp
M clang/test/SemaCXX/cxx2c-binding-pack-nontemplate.cpp
A clang/test/SemaCXX/cxx2c-decomposition.cpp
Log Message:
-----------
[Clang] Constexpr Structured Bindings : The easy parts (#160337)
This implements the easy parts of P2686R5.
Ie allowing constexpr structured binding of structs and arrays.
References to constexpr variables / support for tuple is left for a
future PR.
Until we implement the whole thing, the feature is not enabled as an
extension in older language modes.
Trying to use it as a tuple does produce errors but not meaningful ones.
We could add a better diagnostic if we fail to complete the
implementation before the end of the clang 22 cycle.
Commit: 0dc5d2e87de3f763493ad4227a600b8c9784de45
https://github.com/llvm/llvm-project/commit/0dc5d2e87de3f763493ad4227a600b8c9784de45
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-lastuse.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
Log Message:
-----------
[AMDGPU] Add gfx1250 memory lealizer tests run lines. NFC (#160586)
Commit: 9379922fbacc4b87fafec62c3cff892c15a7f37c
https://github.com/llvm/llvm-project/commit/9379922fbacc4b87fafec62c3cff892c15a7f37c
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/unittests/Support/MustacheTest.cpp
Log Message:
-----------
[llvm][mustache] Precommit test for StandaloneIndentation (#159184)
Commit: 74d49f202cf76e270b405b9108622e71c02b52b8
https://github.com/llvm/llvm-project/commit/74d49f202cf76e270b405b9108622e71c02b52b8
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/MC/MCSFrame.cpp
M llvm/test/MC/ELF/cfi-sframe-fre-cases.s
Log Message:
-----------
[SFrames] Implement .cfi_restore, remember_state, and restore_state (#159832)
As in the description. Very straightforward.
Commit: bef2658de05f17088b06c7fc84739fb3c05c5ce6
https://github.com/llvm/llvm-project/commit/bef2658de05f17088b06c7fc84739fb3c05c5ce6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/docs/Docker.rst
Log Message:
-----------
[llvm] Proofread Docker.rst (#160448)
Commit: 9a736e821b23937fd808e280b0df540036f0fe62
https://github.com/llvm/llvm-project/commit/9a736e821b23937fd808e280b0df540036f0fe62
Author: NohHyeon Kwon <96061253+swote-git at users.noreply.github.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M mlir/include/mlir/IR/Builders.h
Log Message:
-----------
[MLIR] Clarify `createOrFold()` doc as opportunistic eager folding (#160565)
This addresses user confusion about createOrFold behavior compared to
canonicalization passes, as discussed in #159844.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 370db9c62910195e664e82dde6f0adb3e255a4fd
https://github.com/llvm/llvm-project/commit/370db9c62910195e664e82dde6f0adb3e255a4fd
Author: Greg Clayton <gclayton at fb.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
A lldb/test/Shell/SymbolFile/DWARF/union-types-no-member-location.yaml
Log Message:
-----------
Fix a bug where an error was emitted for GCC union types. (#159401)
GCC doesn't add DW_AT_data_member_location attributes to the
DW_TAG_member children of DW_TAG_union_type types. An error was being
emitted incorrectly for these cases fr om the DWARFASTParserClang. This
fixes that issue and adds a test.
Commit: 475e0ee7fa446beb0e57ab508645418cd8a5d68e
https://github.com/llvm/llvm-project/commit/475e0ee7fa446beb0e57ab508645418cd8a5d68e
Author: Thurston Dang <thurston at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Log Message:
-----------
[msan][NFCI] Generalize handleAVX512VectorGenericMaskedFP() operands (#159966)
This generalizes handleAVX512VectorGenericMaskedFP() (introduced in
#158397), to potentially handle intrinsics that have A/WriteThru/Mask in
an operand order that is different to AVX512/AVX10 rcp and rsqrt. Any
operands other than A and WriteThru must be fully initialized.
For example, the generalized handler could be applied in follow-up work
to many of the AVX512 rndscale intrinsics:
```
<32 x half> @llvm.x86.avx512fp16.mask.rndscale.ph.512(<32 x half>, i32, <32 x half>, i32, i32)
<16 x float> @llvm.x86.avx512.mask.rndscale.ps.512(<16 x float>, i32, <16 x float>, i16, i32)
<8 x double> @llvm.x86.avx512.mask.rndscale.pd.512(<8 x double>, i32, <8 x double>, i8, i32)
A Imm WriteThru Mask Rounding
<8 x float> @llvm.x86.avx512.mask.rndscale.ps.256(<8 x float>, i32, <8 x float>, i8)
<4 x float> @llvm.x86.avx512.mask.rndscale.ps.128(<4 x float>, i32, <4 x float>, i8)
<4 x double> @llvm.x86.avx512.mask.rndscale.pd.256(<4 x double>, i32, <4 x double>, i8)
<2 x double> @llvm.x86.avx512.mask.rndscale.pd.128(<2 x double>, i32, <2 x double>, i8)
A Imm WriteThru Mask
```
Commit: add906ffe47b49b8fca28c8ac9d35ad47989028c
https://github.com/llvm/llvm-project/commit/add906ffe47b49b8fca28c8ac9d35ad47989028c
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/test/CodeGen/ARM/fadds.ll
M llvm/test/CodeGen/ARM/fmuls.ll
M llvm/test/CodeGen/ARM/fp_convert.ll
M llvm/test/CodeGen/ARM/fsubs.ll
M llvm/test/CodeGen/ARM/neon-spfp.ll
Log Message:
-----------
[ARM] Consider denormal mode in `ARMSubtarget` (#160456)
Factor out from #151275.
Add denormal mode to subtarget.
Commit: 804b46bb45d2c52c873f7b06c8f12cde6d6c0814
https://github.com/llvm/llvm-project/commit/804b46bb45d2c52c873f7b06c8f12cde6d6c0814
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/version
M libcxx/test/libcxx/diagnostics/string.nodiscard.verify.cpp
M libcxx/test/libcxx/diagnostics/string_view.nodiscard.verify.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/strings/basic.string/string.ops/string_substr/subview.pass.cpp
A libcxx/test/std/strings/string.view/string.view.ops/subview.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][string] P3044R2: sub-`string_view` from `string` (#147095)
Implements [P3044R2](https://wg21.link/P3044R2)
Note: `substr.pass.cpp` is refactored to accommodate the test of
`basic_string_view`'s `subview` which is an alias of `substr` without
changing the test cases.
Closes #148140
# References
- https://github.com/cplusplus/draft/pull/7975
- https://wg21.link/string.substr
- https://wg21.link/string.view.ops
---------
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Co-authored-by: Nikolas Klauser <nikolasklauser at berlin.de>
Commit: ba24b3ec6695b239366f82968fa78702f6f89da9
https://github.com/llvm/llvm-project/commit/ba24b3ec6695b239366f82968fa78702f6f89da9
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M compiler-rt/test/asan/TestCases/Posix/coverage-reset.cpp
Log Message:
-----------
[compiler-rt] Fix coverage-reset.cpp (#160620)
When relanding a previous patch I had accidentally left this patched to
tee output into a file rather than run FileCheck. This patch fixes that
so the test actually tests what it is supposed to.
Commit: a3d7c468bdc328f04da720088b2e542ef1f33ffc
https://github.com/llvm/llvm-project/commit/a3d7c468bdc328f04da720088b2e542ef1f33ffc
Author: Jade Marker <jade.marker153 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libunwind/src/UnwindRegistersRestore.S
Log Message:
-----------
[Mips] Fixed libunwind::Registers_mips_o32::jumpto to allow for load delay (#152942)
Fix #152922
MIPS III also has load delay, so
libunwind::Registers_mips_newabi::jumpto() is also fixed.
Commit: 151a80bbcea947a097870e8ce9034583936a357b
https://github.com/llvm/llvm-project/commit/151a80bbcea947a097870e8ce9034583936a357b
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.h
M llvm/test/CodeGen/AArch64/abdu-neg.ll
M llvm/test/CodeGen/AArch64/abdu.ll
Log Message:
-----------
[TargetLowering][ExpandABD] Prefer selects over usubo if we do the same for ucmp (#159889)
Same deal we use for determining ucmp vs scmp.
Using selects on platforms that like selects is better than using usubo.
Rename function to be more general fitting this new description.
Commit: ea721e2fa1cd2a35652082dae1d0987de531883d
https://github.com/llvm/llvm-project/commit/ea721e2fa1cd2a35652082dae1d0987de531883d
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/CalcSpillWeights.cpp
M llvm/lib/CodeGen/LiveRangeEdit.cpp
M llvm/lib/CodeGen/MachineLICM.cpp
M llvm/lib/CodeGen/RegAllocScore.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/TargetRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
Log Message:
-----------
[TII] Split isTrivialReMaterializable into two versions [nfc] (#160377)
This change builds on https://github.com/llvm/llvm-project/pull/160319
which tries to clarify which *callers* (not backends) assume that the
result is actually trivial.
This change itself should be NFC. Essentially, I'm just renaming the
existing isTrivialRematerializable to the non-trivial version and then
adding a new trivial version (with the same name as the prior function)
and simplifying a few callers which want that semantic.
This change does *not* enable non-trivial remat any more broadly than
was already done for our targets which were lying through the old APIs;
that will come separately. The goal here is simply to make the code
easier to follow in terms of what assumptions are being made where.
---------
Co-authored-by: Luke Lau <luke_lau at icloud.com>
Commit: 157b81a910efadf7fa08f6958ca7f7e2200c0ca8
https://github.com/llvm/llvm-project/commit/157b81a910efadf7fa08f6958ca7f7e2200c0ca8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
Log Message:
-----------
[ADT] clang-format SmallPtrSet.h (NFC)
I'm planning to modify this file.
Commit: a34048bfed8c4e6f43bc4dd09c4dbc189c3a29f5
https://github.com/llvm/llvm-project/commit/a34048bfed8c4e6f43bc4dd09c4dbc189c3a29f5
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/algorithms/sorting/partial_sort.bench.cpp
Log Message:
-----------
[libc++][NFC] Fix benchmark name missing a parenthesis
Commit: aa6a33ae6556690f58ccb7519f577c7fae2783ef
https://github.com/llvm/llvm-project/commit/aa6a33ae6556690f58ccb7519f577c7fae2783ef
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
R llvm/include/llvm/Transforms/Vectorize/EVLIndVarSimplify.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
R llvm/lib/Transforms/Vectorize/EVLIndVarSimplify.cpp
R llvm/test/Transforms/LoopVectorize/RISCV/evl-iv-simplify.ll
Log Message:
-----------
[LV] Remove EVLIndVarSimplify pass (#160454)
Initially this was needed to replace the fixed-step canonical IV with
the variable-step EVL IV, but this was eventually superseded by the loop
vectorizer doing this transform itself in #147222. The pass was then
removed from the RISC-V pipeline in #151483 and the loop vectorizer
stopped emitting the metadata used by the pass in #155760, so now
there's no users of it.
Commit: 47017af57d471a15af2ac4ec1235835d34f92d28
https://github.com/llvm/llvm-project/commit/47017af57d471a15af2ac4ec1235835d34f92d28
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port aa6a33ae6556
Commit: f9305c900ba23de7a9088ed00912cc6113eba506
https://github.com/llvm/llvm-project/commit/f9305c900ba23de7a9088ed00912cc6113eba506
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/verbose-trap.cpp
Log Message:
-----------
[clang][bytecode] Use in `Expr::tryEvaluateString` (#160118)
Fixes #157492
Commit: 3e639930d3ba3d6401992ab1d54dc625d5a299a5
https://github.com/llvm/llvm-project/commit/3e639930d3ba3d6401992ab1d54dc625d5a299a5
Author: Afanasyev Ivan <ivafanas at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/ModuloSchedule.cpp
M llvm/lib/CodeGen/TailDuplicator.cpp
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
Log Message:
-----------
[CodeGen] Extract copy-paste on PHI MachineInstr income removal. (#158634)
Commit: 440d6d0f7867dac1c19d2020b7b35b6201d83855
https://github.com/llvm/llvm-project/commit/440d6d0f7867dac1c19d2020b7b35b6201d83855
Author: Twice <twice at apache.org>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/include/mlir-c/Rewrite.h
M mlir/lib/Bindings/Python/Rewrite.cpp
M mlir/lib/CAPI/Transforms/Rewrite.cpp
M mlir/test/python/integration/dialects/pdl.py
Log Message:
-----------
[MLIR][Python] Add bindings for PDL constraint function registering (#160520)
This is a follow-up to #159926.
That PR (#159926) exposed native rewrite function registration in PDL
through the C API and Python, enabling use with
`pdl.apply_native_rewrite`.
In this PR, we add support for native constraint functions in PDL via
`pdl.apply_native_constraint`, further completing the PDL API.
Commit: efa907e899339f1c2d9b885202ec23ed612300ed
https://github.com/llvm/llvm-project/commit/efa907e899339f1c2d9b885202ec23ed612300ed
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/test/SemaHIP/amdgpu-builtin-in-lambda.hip
A clang/test/SemaHIP/amdgpu-gfx950-load-to-lds.hip
Log Message:
-----------
[Clang][AMDGPU] Defer amdgcn.*to_lds builtins size diagnostics (#160140)
Before, the diagnostic was emitted immediately, as soon as the error was
detected. This is problematic during the host compilation, since
the compiler performs semantic analysis of `__device__` functions with
the host's
target attributes.
A solution for this is to use `SemaRef.targetDiag` to defer the
diagnostic. The diagnostic will then be printed only if the function is
emitted.
The test included in this patch highlights a second problem: we cannot
compile a file having a call to `__builtin_amdgcn_load_to_lds` on a
`__device__` function since we typecheck the signature.
The issue is that, `__shared__ void*` on X86 doesn't translate to
`addrspace(3) void*`, so the compilation fails.
Fixes: SWDEV-555501
Commit: 2016af56525734a3ac80d7256434e49e561befc2
https://github.com/llvm/llvm-project/commit/2016af56525734a3ac80d7256434e49e561befc2
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/f128-fmuladd-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vscale-fixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-loop-backedge-elimination-epilogue.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/large-loop-rdx.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/small-loop-rdx.ll
M llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-conditional-branches.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
M llvm/test/Transforms/LoopVectorize/X86/pr54634.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-trunc-induction-steps.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
Log Message:
-----------
[VPlan] Create epilogue minimum iteration check in VPlan. (#157545)
Move creation of the minimum iteration check for the epilogue vector
loop to VPlan. This is a first step towards breaking up and moving
skeleton creation for epilogue vectorization to VPlan.
It moves most logic out of EpilogueVectorizerEpilogueLoop: the minimum
iteration check is created directly in VPlan, connecting the check
blocks from the main vector loop is done as post-processing. Next steps
are to move connecting and updating the branches from the check blocks
to VPlan, as well as updating the incoming values for phis.
Test changes are improvements due to folding of live-ins.
PR: https://github.com/llvm/llvm-project/pull/157545
Commit: ec179f2269bb2118216eeea8fa00f113b1ae75fa
https://github.com/llvm/llvm-project/commit/ec179f2269bb2118216eeea8fa00f113b1ae75fa
Author: Jhalak Patel <jhalakp at nvidia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][vector]: Extend convertIntegerAttr to handle float-to-integer conversion (#159627)
Fixes #159613
`vector.from_elements` crashes when processing float attributes with
integer result types (e.g., `llvm.mlir.constant(0.0 : f8E4M3FN) : i8`
from arith-to-llvm lowering):
```
Assertion `newType.getElementType() == curType.getElementType() && "expected the same element type"' failed.
```
## Implementation
- Rename `convertIntegerAttr` → `convertNumericAttr`
- Add float-to-integer conversion using `APFloat::convertToInteger()`
with exactness assertion
- Preserve existing integer-to-integer conversion behavior
Only implements conversions that pass LLVM verification. Other patterns
(int→float, float→float, bool→int) are rejected by LLVM verifier before
reaching this code, as documented in the attached verification failures.
Commit: bb1d15e84624784b2c3e652ac666e3be4272d8f2
https://github.com/llvm/llvm-project/commit/bb1d15e84624784b2c3e652ac666e3be4272d8f2
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__chrono/time_point.h
M libcxx/include/__cxx03/__chrono/time_point.h
R libcxx/test/std/time/time.duration/time.duration.alg/abs.compile.fail.cpp
M libcxx/test/std/time/time.duration/time.duration.alg/abs.pass.cpp
R libcxx/test/std/time/time.point/time.point.cast/ceil.compile.fail.cpp
M libcxx/test/std/time/time.point/time.point.cast/ceil.pass.cpp
R libcxx/test/std/time/time.point/time.point.cast/floor.compile.fail.cpp
M libcxx/test/std/time/time.point/time.point.cast/floor.pass.cpp
R libcxx/test/std/time/time.point/time.point.cast/round.compile.fail.cpp
M libcxx/test/std/time/time.point/time.point.cast/round.pass.cpp
M libcxx/test/std/time/time.point/time.point.cast/time_point_cast.pass.cpp
R libcxx/test/std/time/time.point/time.point.cast/toduration.compile.fail.cpp
Log Message:
-----------
[libc++] Refactor some .fail.cpp tests and fix time_point_cast not SFINAEing away (#159288)
All of the `.fail.cpp` tests are actually testing constraints, so we
should just test that the overloads SFINAE away correctly.
Commit: 8bcb614c165ad4bbb3f7f7a361af128e0c31c13b
https://github.com/llvm/llvm-project/commit/8bcb614c165ad4bbb3f7f7a361af128e0c31c13b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__cxx03/__math/traits.h
M libcxx/test/std/numerics/c.math/signbit.pass.cpp
Log Message:
-----------
[libc++][C++03] cherry-pick #106566 (#158250)
Commit: a769608339ad4fff68081ceb7f388da8b660cfa1
https://github.com/llvm/llvm-project/commit/a769608339ad4fff68081ceb7f388da8b660cfa1
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__string/char_traits.h
M libcxx/test/benchmarks/containers/string.bench.cpp
M libcxx/test/std/strings/basic.string/string.ops/string_find/string_size.pass.cpp
Log Message:
-----------
[libc++] Fold __search_substring into _Traits::find in case the second string has length 1 (#160076)
Apple M4:
```
Benchmark Baseline Candidate Difference % Difference
----------------------------------------------------------- ---------- ----------- ------------ --------------
BM_string_literal/1024 16.99 16.79 -0.21 -1.21
BM_string_literal/128 3.44 3.34 -0.10 -2.88
BM_string_literal/16 1.80 1.69 -0.11 -5.93
BM_string_literal/2048 38.44 38.38 -0.07 -0.17
BM_string_literal/256 5.77 5.65 -0.12 -2.02
BM_string_literal/32 2.03 1.92 -0.11 -5.44
BM_string_literal/4096 73.92 73.74 -0.18 -0.25
BM_string_literal/512 9.49 9.41 -0.08 -0.84
BM_string_literal/64 2.59 2.45 -0.14 -5.38
BM_string_literal/8 1.79 1.69 -0.11 -5.90
BM_string_literal/8192 132.09 131.81 -0.28 -0.21
```
Commit: 5f44fa87989324384eb96ead4c7e6581cec292e3
https://github.com/llvm/llvm-project/commit/5f44fa87989324384eb96ead4c7e6581cec292e3
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef][VP] Clarify 'ff' mnemonic in vp.load.ff: 'first-fault' (#160649)
The LangRef for llvm.vp.load.ff.* stated that 'ff' stands for
'fault-first or fault-only-first.' This patch corrects this to
'first-fault or fault-only-first.' to match established terminology.
- ARM SVE uses "first-fault" [1]
- RISC-V V uses "fault-only-first" [2]
[1] https://arxiv.org/abs/1803.06185
[2] https://github.com/riscvarchive/riscv-v-spec/blob/master/v-spec.adoc
Commit: d7921de8027eec19a9d272bf445944973e6758b1
https://github.com/llvm/llvm-project/commit/d7921de8027eec19a9d272bf445944973e6758b1
Author: owenca <owenpiano at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Format/Format.cpp
M clang/unittests/Format/ConfigParseTest.cpp
Log Message:
-----------
[clang-format] Correctly handle backward compatibility of C headers (#159908)
This in effect reverts 05fb8408de23c3ccb6125b6886742177755bd757 and
7e1a88b9d1431e263258e3ff0f729c1fdce342d3, the latter of which
erroneously changed the behavior of formatting `ObjC` header files when
both the default and `ObjC` styles were absent. Now the previous
behavior of treating that as an error is restored.
Fixes #158704
Commit: 2f5d5a3f748391f85cfa33702a247d42549f7b9d
https://github.com/llvm/llvm-project/commit/2f5d5a3f748391f85cfa33702a247d42549f7b9d
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/AssumptionCache.h
M llvm/lib/Analysis/AssumptionCache.cpp
M llvm/lib/Transforms/Scalar/DropUnnecessaryAssumes.cpp
M llvm/test/Transforms/DropUnnecessaryAssumes/basic.ll
Log Message:
-----------
[DropUnnecessaryAssumes] Add support for operand bundles (#160311)
This extends the DropUnnecessaryAssumes pass to also handle operand
bundle assumes. For this purpose, export the affected value analysis for
operand bundles from AssumptionCache.
If the bundle only affects ephemeral values, drop it. If all bundles on
an assume are dropped, drop the whole assume.
Commit: 70a26da63992142ba2221f1034048ea883cdcb3d
https://github.com/llvm/llvm-project/commit/70a26da63992142ba2221f1034048ea883cdcb3d
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
A llvm/test/Transforms/LoopVectorize/cse-casts.ll
Log Message:
-----------
[VPlan] Set correct flags when creating and cloning VPWidenCastRecipe.
Make sure that we set the correct wrap flags when creating new
VPWidenCastRecipes for truncs and preserve the flags from the recipe
directly when cloning, to make sure they are not dropped.
Fixes https://github.com/llvm/llvm-project/issues/160396
Commit: 020b9286413c151d33e2d72c29abc8b56c7080d3
https://github.com/llvm/llvm-project/commit/020b9286413c151d33e2d72c29abc8b56c7080d3
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/include/mlir/IR/Remarks.h
M mlir/include/mlir/Remark/RemarkStreamer.h
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Remarks.cpp
M mlir/lib/Remark/RemarkStreamer.cpp
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
A mlir/test/Pass/remark-final.mlir
M mlir/test/lib/Pass/TestRemarksPass.cpp
M mlir/unittests/IR/RemarkTest.cpp
Log Message:
-----------
[MLIR] Implement remark emitting policies in MLIR (#160526)
This update introduces two new remark emitting policies:
1. `RemarkEmittingPolicyAll`, which emits all remarks,
2. `RemarkEmittingPolicyFinal`, which only emits final remarks after
processing.
The `RemarkEngine` is modified to support these policies, allowing for
more flexible remark handling based on user configuration.
PR also adds flag to `mlir-opt`
```
--remark-policy=<value> - Specify the policy for remark output.
=all - Print all remarks
=final - Print final remarks
```
Commit: 81b90418e2db4ce7aa58f45b0fa84d3029789b4f
https://github.com/llvm/llvm-project/commit/81b90418e2db4ce7aa58f45b0fa84d3029789b4f
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
Log Message:
-----------
[AArch64] Remove AArch64TargetLowering::shouldExpandPartialReductionIntrinsic (NFC) (#159546)
The AArch64 implementation now matches the base implementation.
Commit: 7b2b3756954d60a0da9712d4b1c6ad72b0f7219c
https://github.com/llvm/llvm-project/commit/7b2b3756954d60a0da9712d4b1c6ad72b0f7219c
Author: woruyu <1214539920 at qq.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/test/MC/X86/encoder-fail.s
Log Message:
-----------
[X86][MC][AsmParser] Reject H-byte regs with VEX/EVEX-encoded 8-bit RR (NDD) (#160039)
### Summary
This PR resolves https://github.com/llvm/llvm-project/issues/158585.
Commit: 072cf57a6ab9894ad0f2e177a74eb2bf621b6cb5
https://github.com/llvm/llvm-project/commit/072cf57a6ab9894ad0f2e177a74eb2bf621b6cb5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/ptr-replace-alloca.ll
Log Message:
-----------
InstCombine: Check GEP operand is available (#160438)
Logic copied from the select case.
Fixes #160302
Commit: 90db6292653e9aba81134b1a04f89c74c5ed1e28
https://github.com/llvm/llvm-project/commit/90db6292653e9aba81134b1a04f89c74c5ed1e28
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__cxx03/__math/traits.h
M libcxx/test/std/numerics/c.math/isnormal.pass.cpp
Log Message:
-----------
[libc++][C++03] cherry-pick #104773 (#158244)
Commit: 1034bb57aed54bca75be3b02cb8e348ca9728ff8
https://github.com/llvm/llvm-project/commit/1034bb57aed54bca75be3b02cb8e348ca9728ff8
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h
M llvm/test/CodeGen/AArch64/extract-vector-cmp.ll
A llvm/test/CodeGen/AArch64/movi64_sve.ll
Log Message:
-----------
[AArch64] Use SVE to materialise some 128-bit vector constants (#159101)
There is no easy way to materialise some fixed-width vector constants
with 64-bit elements. This is because NEON's movi instruction is
restricted to setting all bits in a byte to the same value, i.e. 0xFF
can be encoded as an immediate but not 0x1F. However, if SVE is
available we can use the dup instruction to cover more cases.
Rather than lower the immediate directly using the dup instruction, I've
instead used the generic SPLAT_VECTOR node in combination with an
EXTRACT_SUBVECTOR. This is because we already have SVE splat_vector
patterns that can match directly to dup.
Commit: ed30414b0a2a751bab3cf717bad98db6f699c29b
https://github.com/llvm/llvm-project/commit/ed30414b0a2a751bab3cf717bad98db6f699c29b
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/MachineStripDebug.cpp
M llvm/test/CodeGen/AMDGPU/hard-clauses.mir
Log Message:
-----------
[MachineStripDebug] Remove debug instructions from inside bundles (#160297)
Some passes, like AMDGPU's SIInsertHardClauses, wrap sequences of
instructions into bundles, and these bundles may end up with debug
instructions in the middle. Assuming that this is allowed, this patch
fixes MachineStripDebug to be able to remove these instructions from
inside a bundle.
Commit: c8d983c7b339ba6ac61711ab527ca280ef6ede4a
https://github.com/llvm/llvm-project/commit/c8d983c7b339ba6ac61711ab527ca280ef6ede4a
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/and-not-combine.ll
A llvm/test/CodeGen/LoongArch/lsx/and-not-combine.ll
Log Message:
-----------
[LoongArch][NFC] Add tests for combining `and(add(not))` (#159055)
Commit: 02d8fb5789f64ed9cff3f42b005105a51c6c7550
https://github.com/llvm/llvm-project/commit/02d8fb5789f64ed9cff3f42b005105a51c6c7550
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/unittests/Host/posix/HostTest.cpp
Log Message:
-----------
[lldb][test] check if CoreDumping info is supported (#160333)
CoreDumping in /proc/<pid>/status was added in kernel 4.15, this causes the
test to fail in older kernel versions. see
https://man7.org/linux/man-pages/man5/proc_pid_status.5.html
Commit: 1d46071bfe93175b4083483dea6023eb186aca2d
https://github.com/llvm/llvm-project/commit/1d46071bfe93175b4083483dea6023eb186aca2d
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/extract-binop.ll
A llvm/test/CodeGen/LoongArch/lsx/extract-binop.ll
Log Message:
-----------
[LoongArch][NFC] Add tests for element extraction from binary add operation (#159725)
Commit: c5ded52d5f3603182b41be64f1f8ac3bbdaa3daa
https://github.com/llvm/llvm-project/commit/c5ded52d5f3603182b41be64f1f8ac3bbdaa3daa
Author: Xing Guo <higuoxing+github at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/Sema/attr-format.c
M clang/test/Sema/format-strings-scanf.c
M clang/test/Sema/format-strings.c
Log Message:
-----------
[clang][Sema] Accept gnu format attributes (#160255)
This patch teaches clang accepts gnu_printf, gnu_scanf, gnu_strftime and
gnu_strfmon. These attributes are aliases for printf, scanf, strftime and
strfmon.
Ref: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html
Fixes: #16219
---------
Co-authored-by: Sirraide <aeternalmail at gmail.com>
Commit: cfb4f29b1cd271c2c1d77c1cc086d7b6613f0bd9
https://github.com/llvm/llvm-project/commit/cfb4f29b1cd271c2c1d77c1cc086d7b6613f0bd9
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/Tosa/ops.mlir
Log Message:
-----------
[mlir][tosa] Relax constraint on matmul verifier requiring equal operand types (#155799)
Removes the verifier constraint allowing support for matmul with
different operand types such as fp8e5m2xfp8e4m3. Support for specific
operand types strictly adhering to the TOSA specification will still be
caught in the validation pass.
Commit: dfc88549b0c2da7ea9d9c3cba9a08811e3e56f8a
https://github.com/llvm/llvm-project/commit/dfc88549b0c2da7ea9d9c3cba9a08811e3e56f8a
Author: Qi Zhao <zhaoqi01 at loongson.cn>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/adda.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/adda.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit tests for `[x]vadda.{b/h/w/d}`
Commit: e94a0b300addcf4a0ead62bbadf811f3209a8a49
https://github.com/llvm/llvm-project/commit/e94a0b300addcf4a0ead62bbadf811f3209a8a49
Author: Giuseppe Rossini <giuseppe.rossini at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Analysis/CostModel/AMDGPU/fadd.ll
M llvm/test/Analysis/CostModel/AMDGPU/fma.ll
M llvm/test/Analysis/CostModel/AMDGPU/fmul.ll
M llvm/test/Analysis/CostModel/AMDGPU/fsub.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
A llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
Log Message:
-----------
[AMDGPU] Fix vector legalization for bf16 valu ops (#158439)
Add v4,v8,v16,v32 legalizations for the following operations:
- `FADD`
- `FMUL`
- `FMA`
- `FCANONICALIZE`
Commit: 28a8dfb484dae13d1ef464ea603c9bc94e5fa0aa
https://github.com/llvm/llvm-project/commit/28a8dfb484dae13d1ef464ea603c9bc94e5fa0aa
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
M llvm/test/CodeGen/X86/masked_store_trunc_usat.ll
M llvm/test/CodeGen/X86/vector-trunc-usat.ll
Log Message:
-----------
[X86] Add missing prefixes to trunc-sat tests (#160662)
Since #159321 we now get actual warnings when we're missing coverage
Commit: ed07b3043d6a88ad90175eac1043ca23adcddd9f
https://github.com/llvm/llvm-project/commit/ed07b3043d6a88ad90175eac1043ca23adcddd9f
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/test/Shell/SymbolFile/DWARF/union-types-no-member-location.yaml
Log Message:
-----------
[lldb][test] Make hex prefix optional in DWARF union types test
Fixes #159401
On Windows there is no hex prefix, I suspect because somewhere we
print a pointer. I'd prefer to fix that itself but can't get to
a Windows machine at the moment. It's not important to the purpose
of the test anyway.
Commit: 833d5f0cd8bec8de84cdbefc49c4ef4566a5b356
https://github.com/llvm/llvm-project/commit/833d5f0cd8bec8de84cdbefc49c4ef4566a5b356
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/comp.h
M libcxx/include/__functional/is_transparent.h
M libcxx/include/__functional/operations.h
M libcxx/include/__functional/ranges_operations.h
M libcxx/include/__tree
A libcxx/include/__type_traits/is_generic_transparent_comparator.h
A libcxx/include/__type_traits/make_transparent.h
M libcxx/include/map
M libcxx/include/module.modulemap.in
M libcxx/include/string
M libcxx/test/benchmarks/containers/associative/map.bench.cpp
M libcxx/test/benchmarks/containers/associative/unordered_map.bench.cpp
Log Message:
-----------
[libc++] Avoid constructing additional objects when using map::at (#157866)
This patch adds additional overloads to `map::at` in case its known that
the argument is transparently comparable to the key type. This avoids
actually constructing the key type in some cases, potentially removing
allocations.
```
--------------------------------------------------------
Benchmark old new
--------------------------------------------------------
BM_map_find_string_literal 12.8 ns 2.68 ns
```
Commit: 2c3453afd2d28d1a4d802af071c15b8620896ed3
https://github.com/llvm/llvm-project/commit/2c3453afd2d28d1a4d802af071c15b8620896ed3
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
A llvm/test/Transforms/LoopInterchange/bail-out-all-deps.ll
M llvm/test/Transforms/LoopInterchange/confused-dependence.ll
M llvm/test/Transforms/LoopInterchange/legality-for-scalar-deps.ll
M llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
M llvm/test/Transforms/LoopInterchange/unique-dep-matrix.ll
Log Message:
-----------
[LoopInterchange] Bail out when finding a dependency with all `*` elements (#149049)
If a direction vector with all `*` elements, like `[* * *]`, is present,
it indicates that none of the loop pairs are legal to interchange. In
such cases, continuing the analysis is meaningless.
This patch introduces a check to detect such direction vectors and exits
early when one is found. This slightly reduces compile time.
Commit: 0a80631142db9eb2c357dee304d51c1ef1acc590
https://github.com/llvm/llvm-project/commit/0a80631142db9eb2c357dee304d51c1ef1acc590
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
A llvm/test/MC/AMDGPU/wavesize-feature-unsupported-target.s
M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
A llvm/test/MC/Disassembler/AMDGPU/gfx1250_wave64_feature.s
A llvm/test/MC/Disassembler/AMDGPU/gfx9_wave32_feature.txt
Log Message:
-----------
AMDGPU: Ensure both wavesize features are not set (#159234)
Make sure we cannot be in a mode with both wavesizes. This
prevents assertions in a future change. This should probably
just be an error, but we do not have a good way to report
errors from the MCSubtargetInfo constructor.
Commit: 65b41f03b674872d95efda60877d5628c3b4ce9a
https://github.com/llvm/llvm-project/commit/65b41f03b674872d95efda60877d5628c3b4ce9a
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 833d5f0cd8be
Commit: bafcc3e3b3353718b47e77618f0bb5fad7d1aa15
https://github.com/llvm/llvm-project/commit/bafcc3e3b3353718b47e77618f0bb5fad7d1aa15
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/test/API/functionalities/gdb_remote_client/TestMemoryRegionDirtyPages.py
Log Message:
-----------
[lldb][test] Refactor and expand TestMemoryRegionDirtyPages.py (#156035)
This started as me being annoyed that I got loads of this when
inspecting memory regions on Mac:
Modified memory (dirty) page list provided, 0 entries.
So I thought I should test the existing behaviour, which led me to
refactor the existing test to run the same checks on all regions.
In the process I realised that the output is not wrong. There is a
difference between knowing that no pages are dirty and not knowing
anything about dirty pages. We print that there are 0 entries so the
user knows that difference.
The test case now checks "memory region" output as well as API use.
There were also some checks only run on certain regions, like page size,
which now run for all of them.
Commit: 961b3724775eee93da1fe3d4ed9de9f8341751f9
https://github.com/llvm/llvm-project/commit/961b3724775eee93da1fe3d4ed9de9f8341751f9
Author: Jinjie Huang <huangjinjie at bytedance.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M bolt/test/X86/dwarf5-dwoid-no-dwoname.s
Log Message:
-----------
[BOLT] Fix dwarf5-dwoid-no-dwoname.s (#160676)
Fix the test in dwarf5-dwoid-no-dwoname.s, add %cflags in the test to
control the triple.
[detail](https://github.com/llvm/llvm-project/pull/154749#issuecomment-3333043864)
Commit: 50de925bcbd9175792c1f3c7786c94c0897ab876
https://github.com/llvm/llvm-project/commit/50de925bcbd9175792c1f3c7786c94c0897ab876
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
Log Message:
-----------
[LoongArch] Pre-commit tests for [x]vldi instructions with special constant splats (#159228)
Commit: a7f5abbe735faef7f13a1346167274fb8afb0b18
https://github.com/llvm/llvm-project/commit/a7f5abbe735faef7f13a1346167274fb8afb0b18
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/Transforms/InstSimplify/fminmax-folds.ll
Log Message:
-----------
[NFC][InstSimplify] Refactor fminmax-folds.ll test (#160504)
Refactor all the tests in `fminmax-folds.ll` so that they are grouped by
optimization, rather than by intrinsic.
Instead of calling 1 intrinsic per function, each function now tests all
6 variants of the intrinsic. Results are stored to named pointers to
maintain readability in this more compact form. This makes it much
easier to compare the outputs from each intrinsic, rather than having
them scattered in different functions in different parts of the file. It
is also much more compact, so despite adding >50% more tests, the file
is ~500 lines shorter.
The tests added include:
* Adding `maximumnum` and `minimumnum` everywhere (currently not
optimized, but added as a baseline for future optimizations in #139581).
* Adding separate tests for SNaN and QNaN (as a baseline for correctness
improvements in #139581 )
* Adding tests for scalable vectors
* Increasing the variety of types used in various tests by using more
f16, f64, and vector types in tests.
The only coverage removed is for tests with undef (only poison is now
tested for).
Overall, this refactor should increase coverage, improve readability
with more comments and clear section headers, and make the tests much
more compact and easier to review in #139581 by providing a clear
baseline for each intrinsic's current behaviour.
Commit: b96884fcad72da76d1cee5a75f26164201a2352c
https://github.com/llvm/llvm-project/commit/b96884fcad72da76d1cee5a75f26164201a2352c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/include/mlir/IR/Remarks.h
M mlir/include/mlir/Remark/RemarkStreamer.h
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Remarks.cpp
M mlir/lib/Remark/RemarkStreamer.cpp
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
R mlir/test/Pass/remark-final.mlir
M mlir/test/lib/Pass/TestRemarksPass.cpp
M mlir/unittests/IR/RemarkTest.cpp
Log Message:
-----------
Revert "[MLIR] Implement remark emitting policies in MLIR" (#160681)
Reverts llvm/llvm-project#160526
This fails with Sanitizers.
Commit: ce63093e2b44f1e7e938db98ee7030fb541ddef3
https://github.com/llvm/llvm-project/commit/ce63093e2b44f1e7e938db98ee7030fb541ddef3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-constant-ops.ll
Log Message:
-----------
[LV] Add partial reduction tests multiplying extend with constants.
Commit: 2d6d56bae167e2e3d0a73a3593d1c735b211df36
https://github.com/llvm/llvm-project/commit/2d6d56bae167e2e3d0a73a3593d1c735b211df36
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/MC/AMDGPU/wave_any.s
Log Message:
-----------
AMDGPU: Convert wave_any test to use update_mc_test_checks
Commit: c1f8dbb11cff9e017e3d65c22162e11d04a61dfa
https://github.com/llvm/llvm-project/commit/c1f8dbb11cff9e017e3d65c22162e11d04a61dfa
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/epilogue-vectorization-fix-scalar-resume-values.ll
Log Message:
-----------
[LV] Add coverage for fixing-up scalar resume values (#160492)
Increase coverage of the routine fixScalarResumeValuesFromBypass in the
case where the original scalar resume value is zero.
Co-authored-by: Florian Hahn <flo at fhahn.com>
Commit: c80d49590871c2060bbea758e09382bc5f9561c6
https://github.com/llvm/llvm-project/commit/c80d49590871c2060bbea758e09382bc5f9561c6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
A llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-divrem.mir
Log Message:
-----------
GlobalISel: Adjust insert point when expanding G_[SU]DIVREM
(#160683)
The insert point management is messy here. We probably should
have an insert point guard, and not have ths dest operand utilities
modify the insert point.
Fixes #159716
Commit: 4769e52bb63d88942db8b27245c085e06921a4ee
https://github.com/llvm/llvm-project/commit/4769e52bb63d88942db8b27245c085e06921a4ee
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/epilogue-vectorization-fix-scalar-resume-values.ll
Log Message:
-----------
[LV] Fixup a test after c1f8dbb (#160688)
Follow up on c1f8dbb ([LV] Add coverage for fixing-up scalar resume
values) to regenerate a test with UTC.
Commit: 9652dc931be6598c441c7dc8f50c1fcb967c2410
https://github.com/llvm/llvm-project/commit/9652dc931be6598c441c7dc8f50c1fcb967c2410
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/fpr-gpr-copy-rv64.ll
Log Message:
-----------
[RISCV][test] Regenerate fpr-gpr-copy-rv64.ll
It was missing RV64I lines for `fadd_f32`.
Commit: fb67737c49ad098f5dcd4a2f9b67bdd1befb75b7
https://github.com/llvm/llvm-project/commit/fb67737c49ad098f5dcd4a2f9b67bdd1befb75b7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/assume-align.ll
Log Message:
-----------
[InstCombine] Add test with "align"(ptr %p, i32 1) assumption.
Commit: 508748dd9eb522bb2c02dd86ba9bb3ea13f71874
https://github.com/llvm/llvm-project/commit/508748dd9eb522bb2c02dd86ba9bb3ea13f71874
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Fix OpenMP and OpenACC CursorKinds name format (#160295)
Missing `CursorKind`s that were added in #143264 follow the name format
of Index.h instead of those in cindex.py. Adapt the names accordingly.
Commit: fae54a05bc100d84c2547dc5b7be277a77b0e9a4
https://github.com/llvm/llvm-project/commit/fae54a05bc100d84c2547dc5b7be277a77b0e9a4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
A clang/test/Driver/Inputs/basic_gpu_tree/bin/keep
A clang/test/Driver/Inputs/basic_gpu_tree/include/amdgcn-amd-amdhsa/.keep
A clang/test/Driver/Inputs/basic_gpu_tree/include/nvptx64-nvidia-cuda/.keep
A clang/test/Driver/Inputs/basic_gpu_tree/lib/amdgcn-amd-amdhsa/.keep
A clang/test/Driver/Inputs/basic_gpu_tree/lib/nvptx64-nvidia-cuda/.keep
M clang/test/Driver/gpu-libc-headers.c
Log Message:
-----------
[Clang][NFC] Move GPU include directory to proper place (#160608)
Summary:
This should be handled in the toolchain, not in the middle of clang.
Commit: b7e20c741451bb846e25c87a782d746c2382597a
https://github.com/llvm/llvm-project/commit/b7e20c741451bb846e25c87a782d746c2382597a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
[libc] Make all targets respect LLVM_PER_TARGET_RUNTIME_DIR (#160597)
Summary:
The libcxx and compiler-rt already install their headers according
to the triple if this option is enabled. We should do this by default so
these don't get mixed up when people potentially combine multiple
toolchains.
Commit: d73ffe57f983c8ef9490e420d972ae3373b3f175
https://github.com/llvm/llvm-project/commit/d73ffe57f983c8ef9490e420d972ae3373b3f175
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/resolve-names.cpp
Log Message:
-----------
[flang][OpenMP] Introduce variant argument, customize OmpArgument par… (#160372)
…sing
The DECLARE_VARIANT directive takes two names separated by a colon as an
argument: base-name:variant-name. Define OmpBaseVariantNames to
represent this, since no existing argument alternative matches it.
However, there is an issue. The syntax "name1:name2" can be the argument
to DECLARE_VARIANT (if both names are OmpObjects), but it can also be a
reduction-specifier if "name2" is a type. This conflict can only be
resolved once we know what the names are, which is after name resolution
has visited them. The problem is that name resolution has side-effects
that may be (practically) impossible to undo (e.g. creating new symbols,
emitting diagnostic messages).
To avoid this problem this PR makes the parsing of OmpArgument
directive- sensitive: when the directive is DECLARE_VARIANT, don't
attempt to parse a reduction-specifier, consider OmpBaseVariantNames
instead. Otherwise ignore OmpBaseVariantNames in favor of
reduction-specifier.
Commit: fde15cb3eeb68461c66f6b5b928c7093393496a0
https://github.com/llvm/llvm-project/commit/fde15cb3eeb68461c66f6b5b928c7093393496a0
Author: hev <wangrui at loongson.cn>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/bitreverse.ll
M llvm/test/CodeGen/LoongArch/lasx/fpowi.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-frecipe.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-frsqrte.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-max-invalid-imm.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-min-invalid-imm.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-pickve2gr-d-invalid-imm.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-pickve2gr-d.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-pickve2gr-invalid-imm.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-pickve2gr.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-repl-ins-gr2vr-d.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-repl-ins-gr2vr.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-replgr2vr-d.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-replgr2vr.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-set.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-setallnez.ll
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-setanyeqz.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/extractelement.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/insert-extract-element.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/insert-extract-pair-elements.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/insertelement.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvrepl128vei.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf4i.ll
M llvm/test/CodeGen/LoongArch/lasx/shuffle-as-permute-and-shuffle.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-add.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-and.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-or.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-smax.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-smin.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-umax.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-umin.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-reduce-xor.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-rotate.ll
M llvm/test/CodeGen/LoongArch/lasx/xvmskcond.ll
M llvm/test/CodeGen/LoongArch/lsx/bitreverse.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-fcmp.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-frecipe.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-frsqrte.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-max-invalid-imm.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-min-invalid-imm.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-pickve2gr-d-invalid-imm.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-pickve2gr-d.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-pickve2gr-invalid-imm.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-pickve2gr.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-repl-ins-gr2vr-d.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-repl-ins-gr2vr.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-replgr2vr-d.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-replgr2vr.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-set.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-setallnez.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-setanyeqz.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/extractelement.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/insertelement.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vreplvei.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf4i.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-add.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-and.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-or.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-smax.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-smin.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-umax.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-umin.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-reduce-xor.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-sext.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-any-ext.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-byte-rotate.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-byte-shift.ll
M llvm/test/CodeGen/LoongArch/lsx/vec-trunc.ll
M llvm/test/CodeGen/LoongArch/lsx/vmskcond.ll
M llvm/test/CodeGen/LoongArch/lsx/widen-shuffle-mask.ll
Log Message:
-----------
[LoongArch] Enable more vector tests for 32-bit target (#160656)
Commit: 48a0bb71053bf4dd7884cae998ed341df02ecef3
https://github.com/llvm/llvm-project/commit/48a0bb71053bf4dd7884cae998ed341df02ecef3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/masked_store_trunc.ll
Log Message:
-----------
[X86] masked_store_trunc.ll - add missing prefixes (#160685)
Since #159321 we now get actual warnings when we're missing coverage
Commit: 0956febc4c1d7c66eae0064ce02dbb98880021dc
https://github.com/llvm/llvm-project/commit/0956febc4c1d7c66eae0064ce02dbb98880021dc
Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
A llvm/test/Transforms/Inline/dilocation-loop-metadata-update.ll
Log Message:
-----------
[DebugInfo] Handle followup loop metadata in updateLoopMetadataDebugLocations (#157557)
Inliner/IROutliner/CodeExtractor all uses the
updateLoopMetadataDebugLocations helper in order to modify debug
location related to loop metadata. However, the helper has only
been updating DILocation nodes found as operands to the first level
of the MD_loop metadata. There could however be more DILocations
as part of the various kinds of followup metadata. A typical example
would be llvm.loop metadata like this
!6 = distinct !{!6, !7, !8, !9, !10, !11}
!7 = !DILocation(line: 6, column: 3, scope: !3)
!8 = !DILocation(line: 7, column: 22, scope: !3)
!11 = !{!"llvm.loop.distribute.followup_all", !7, !8, ..., !14}
!14 = !{!"llvm.loop.vectorize.followup_all", !7, !8, ...}
Instead of just updating !7 and !8 in !6, this patch make sure that
we now recursively update the DILocations in !11 and !14 as well.
Fixes #141568
Commit: 7be2951750afa48ea00c743cc31d3046adeb21c5
https://github.com/llvm/llvm-project/commit/7be2951750afa48ea00c743cc31d3046adeb21c5
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/unittests/Analysis/Presburger/MatrixTest.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in MatrixTest.cpp (NFC)
Commit: 66bd8456fccf677bb1cab1d8ba3095006eb73709
https://github.com/llvm/llvm-project/commit/66bd8456fccf677bb1cab1d8ba3095006eb73709
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/private-memory-atomics.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/sad.ll
Log Message:
-----------
[AMDGPU][TargetLowering] Allow forming overflow op if it is legal (#156266)
Because usubo and uaddo are legal in AMDGPU in 32 bits, we want to use
it whenever possible.
Commit: 17c93d6e082c3cb3e3780c53e4d51ed9dc1fa5b5
https://github.com/llvm/llvm-project/commit/17c93d6e082c3cb3e3780c53e4d51ed9dc1fa5b5
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Support/TextEncoding.cpp
Log Message:
-----------
Improvements to TextEncodingConverter (#142476)
This patch addresses the follow-up comments on PR
https://github.com/llvm/llvm-project/pull/138893
Commit: 2a82e71835f7b2258c42af9ad0ec67b6d007045c
https://github.com/llvm/llvm-project/commit/2a82e71835f7b2258c42af9ad0ec67b6d007045c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__cxx03/locale
M libcxx/include/__locale_dir/time.h
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
Log Message:
-----------
[libc++] Remove __time_get_storage::{__analyze,init} from the ABI (#158469)
These functions have never been used outside the dylib, so there is no
point in exporting them.
Commit: c533017bcb576baff4016722d6498c1756e2bc0f
https://github.com/llvm/llvm-project/commit/c533017bcb576baff4016722d6498c1756e2bc0f
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
A llvm/test/CodeGen/AArch64/arm64-cvt-simd-intrinsics.ll
M llvm/test/CodeGen/AArch64/arm64-vcvt.ll
Log Message:
-----------
[AArch64][GlobalISel] Add codegen for simd fpcvt intrinsics (#157680)
This patch is a first in a series of patches that add codegen support
for fcvt instructions that keep the result in 32-bit or 64-bit SIMD&FP
registers. For a long time, LLVM primarily generated fpcvt instructions,
which store the result in GPRs, resulting in extra moves when the value
was used by NEON instructions that operate on SIMD&FP registers.
Although patterns existed for generating the SIMD variants, they relied
on single-element vector types (such as v1i32 or v1i64) to decide
whether the SIMD variant should be selected. This was not useful,
because many NEON intrinsics and other LLVM IR operations use scalar
types (i32/i64) even though they expect the result to be stored in
SIMD&FP registers.
This patch is part of a series that addresses this and also adds support
for generating these instructions in GlobalISel. To fix this in
SelectionDAG, bitcasts of the result to a floating-point type serve as a
hint that the SIMD variant of the conversion should be used, rather than
relying on single-element vector types. These bitcasts are not currently
generated by LLVM, but the goal is to add explicit bitcasts to the
inputs and outputs of NEON intrinsics operating on integers in follow-up
patches.
For GlobalISel, the register bank selection algorithm is used to
determine which variant to generate
Commit: a05b232076edc3b05fc58d68451a716a0ddc8868
https://github.com/llvm/llvm-project/commit/a05b232076edc3b05fc58d68451a716a0ddc8868
Author: Justin Cady <desk at justincady.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/source/API/CMakeLists.txt
Log Message:
-----------
[lldb] Avoid copying header just to overwrite it (#160555)
The build script copies lldb-defines.h into the staging area but it gets
overwritten by version-header-fix.py. This flow assumes that the
lldb-defines.h from the source was writable originally (thus the copy
maintains that permission). This is problematic for systems that
integrate LLVM source as read only.
This change skips the initial copy of lldb-defines.h, which prevents
lldb build failures when the source is not writable.
Commit: 0c1087b377b49dafaa7d82942db11c2fd3fd4c11
https://github.com/llvm/llvm-project/commit/0c1087b377b49dafaa7d82942db11c2fd3fd4c11
Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86InstrGISel.td
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/X86/isel-llvm.set.rounding.ll
A llvm/test/CodeGen/X86/isel-set-invalid-rounding.ll
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
M llvm/test/TableGen/RegClassByHwMode.td
Log Message:
-----------
[X86][GlobalISel] Added support for llvm.set.rounding (#156591)
- This implementation is adapted from **SDAG
X86TargetLowering::LowerSET_ROUNDING**.
Commit: b05101b86472826ec77d0c9b71a431917a8f2493
https://github.com/llvm/llvm-project/commit/b05101b86472826ec77d0c9b71a431917a8f2493
Author: Owen Anderson <resistor at mac.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/include/llvm/CodeGenTypes/MachineValueType.h
A llvm/test/TableGen/CPtrWildcard.td
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
M llvm/utils/TableGen/Common/DAGISelMatcher.cpp
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
Log Message:
-----------
[TableGen, CodeGen, CHERI] Add support for the cPTR wildcard value type. (#158426)
cPTR is a wildcard CHERI capability value type, used analogously to iPTR. This allows TableGen patterns to abstract over CHERI capability widths.
Co-authored-by: Jessica Clarke <jrtc27 at jrtc27.com>
Commit: 373a2f1f222608d1f274c42281f4ffeed47a17a1
https://github.com/llvm/llvm-project/commit/373a2f1f222608d1f274c42281f4ffeed47a17a1
Author: Dor Arad <45083160+undor at users.noreply.github.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
Log Message:
-----------
[mlir][scf] ExecuteRegionOp bufferization to consider no_inline attr (#160697)
Fix a bug where ExecuteRegionOp bufferization dropped the "no_inline"
attribute.
Co-authored-by: Dor Arad <dor.arad at mobileye.com>
Commit: 09bdbfd9d1a7b10b3b91c86672ca2994dc997c82
https://github.com/llvm/llvm-project/commit/09bdbfd9d1a7b10b3b91c86672ca2994dc997c82
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/test/CodeGen/X86/usub_inc_iv.ll
Log Message:
-----------
[CodeGenPrepare] Bail out of usubo creation if sub's parent is not the same as the comparison (#160358)
We match uadd's behavior here.
Codegen comparison: https://godbolt.org/z/x8j4EhGno
Commit: f3f5d8bea836e01a2bc12edf5980c3a51de2fd7a
https://github.com/llvm/llvm-project/commit/f3f5d8bea836e01a2bc12edf5980c3a51de2fd7a
Author: Radovan Božić <radovan.bozic at htecgroup.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.def
Log Message:
-----------
[NFC][clang] Quote literal builtin attribute markers in Builtins.def docs (#160080)
Clarify the documentation in Builtins.def by quoting literal attribute
markers (e.g. 'n', 'r', 'U', 'N') to distinguish them from placeholders
such as N in C<N,...>. This avoids confusion and makes the attribute
docs clearer.
Commit: f9c2565117106467c3c8b1975e67c9750aee34e3
https://github.com/llvm/llvm-project/commit/f9c2565117106467c3c8b1975e67c9750aee34e3
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
A llvm/test/Transforms/PGOProfile/chr-lifetimes.ll
Log Message:
-----------
Reapply "[ControlHeightReduction] Drop lifetime annotations where necessary" (#160640)
Reapplies #159686
This reverts commit 4f33d7b7a9f39d733b7572f9afbf178bca8da127.
The original landing of this patch had an issue where it would try and
hoist allocas into the entry block that were in the entry block. This
would end up actually moving them lower in the block potentially after
users, resulting in invalid IR.
This update fixes this by ensuring that we are only hoisting static
allocas that have been sunk into a split basic block. A regression test
has been added.
Integration tested using a three stage build of clang with IRPGO
enabled.
Commit: 4d4df2ba477fa4bce9db017f28a80a27ee5ab8ca
https://github.com/llvm/llvm-project/commit/4d4df2ba477fa4bce9db017f28a80a27ee5ab8ca
Author: David Green <david.green at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/dp-3source.ll
R llvm/test/CodeGen/AArch64/madd-lohi.ll
Log Message:
-----------
[AArch64][GlobalISel] Add test coverage for dp-3source.ll. NFC
madd-lohi.ll is removed as the test is available elsewhere.
Commit: 2657c79cb974d1fb55500bf6c0cbb18e4265621e
https://github.com/llvm/llvm-project/commit/2657c79cb974d1fb55500bf6c0cbb18e4265621e
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/SVEInstrFormats.td
Log Message:
-----------
[AArch64][llvm] (NFC) Refactor `sve_intx_dot` class and delete `sve2p1_two_way_dot_vv` (#160103)
`sve_intx_dot` and `sve2p1_two_way_dot_vv` are both very similar,
encoding for `SDOT` instructions. Refactor the `sve_intx_dot` class so
it is more flexible, and delete the `sve2p1_two_way_dot_vv` class.
Making this change now, to accommodate future SDOT instructions.
Commit: 832a342328cfb62f434d3d506a7bf30df5e2589d
https://github.com/llvm/llvm-project/commit/832a342328cfb62f434d3d506a7bf30df5e2589d
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/cdefined.f90
Log Message:
-----------
[flang] CDEFINED globals should have external linkage (#160167)
In Fortran::lower::defineGlobal() don't change the linkage and don't
generate initializer for CDEFINED globals.
Commit: 9aa5d5a9f72cd3bbf5a7b6ee52d86b59fbaf9589
https://github.com/llvm/llvm-project/commit/9aa5d5a9f72cd3bbf5a7b6ee52d86b59fbaf9589
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[MLIR] Add sincos intrinsic to LLVM dialect (#160561)
Adds llvm.intr.sincos operation using LLVM_TwoResultIntrOp in the mold of the frexp intrinsic.
Commit: 3bfcbfc327ad5ca8bcec086a6d837f105d58e801
https://github.com/llvm/llvm-project/commit/3bfcbfc327ad5ca8bcec086a6d837f105d58e801
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Parser/OpenMP/declare-variant.f90
M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
M flang/test/Semantics/OpenMP/declare-variant.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in DECLARE_VARIANT (#160371)
Commit: 56a1cbbd1c54b325a336965f2631bd83e525dcf6
https://github.com/llvm/llvm-project/commit/56a1cbbd1c54b325a336965f2631bd83e525dcf6
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
Log Message:
-----------
[LAA] Fix non-NFC parts of 1aded51 (#160701)
1aded51 ([LAA] Prepare to handle diff type sizes (NFC)) was supposed to
be a non-functional patch, but introduced functional changes as
known-non-negative and known-non-positive is not equivalent to
!known-non-zero. Fix this.
Commit: d127d00c19578ae7c227b94a70e39d626bf125cf
https://github.com/llvm/llvm-project/commit/d127d00c19578ae7c227b94a70e39d626bf125cf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/AllocatorBase.h
Log Message:
-----------
[Support] Include <utility> in AllocatorBase.h
This should fix the build breakage reported in:
https://green.lab.llvm.org/job/llvm.org/job/clang-stage2-Rthinlto/1200/
Commit: ec27c2d340c08f98ffc893e01a60045b7377ebff
https://github.com/llvm/llvm-project/commit/ec27c2d340c08f98ffc893e01a60045b7377ebff
Author: cmtice <cmtice at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/docs/Contributing.rst
Log Message:
-----------
[libc++] Add link to premerge tesing dashboard to docs. (#160342)
This adds a link to the dashboard that shows premerge testing queue and
run times for libc++ testing, to the Contributing.rst document.
Commit: 25c0da8b0d004b7b32061691dbac81e854d1f6dd
https://github.com/llvm/llvm-project/commit/25c0da8b0d004b7b32061691dbac81e854d1f6dd
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/test/Transforms/InstCombine/NVPTX/nvvm-intrins.ll
M llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2i-d2i.ll
M llvm/test/Transforms/InstSimplify/const-fold-nvvm-f2ll-d2ll.ll
Log Message:
-----------
[NVPTX] Fix NaN + overflow semantics of f2ll/d2i (#159530)
Fix the NaN-handling semantics of various NVVM intrinsics converting
from fp types to integer types.
Previously in ConstantFolding, NaN inputs would be constant-folded to 0.
However, v9.0 of the PTX spec states that:
In float-to-integer conversions, depending upon conversion types, NaN
input results in following value:
* Zero if source is not `.f64` and destination is not `.s64`, .`u64`.
* Otherwise `1 << (BitWidth(dst) - 1)` corresponding to the value of
`(MAXINT >> 1) + 1` for unsigned type or `MININT` for signed type.
Also, support for constant-folding +/-Inf and values which
overflow/underflow the integer output type has been added (they clamp to
min/max int).
Because of this NaN-handling semantic difference, we also need to
disable transforming several intrinsics to FPToSI/FPToUI, as the LLVM
intstruction will return poison, but the intrinsics have defined
behaviour for these edge-cases like NaN/Inf/overflow.
Commit: 7d35226173fad2f5d6a2b082583843ebcb8cea53
https://github.com/llvm/llvm-project/commit/7d35226173fad2f5d6a2b082583843ebcb8cea53
Author: Thurston Dang <thurston at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M compiler-rt/lib/msan/msan_linux.cpp
Log Message:
-----------
[msan] Change personality CHECK to Printf() + Die() (#160626)
This ports https://github.com/llvm/llvm-project/pull/142821 from TSan.
Although MSan doesn't segfault the way TSan did, the failure message was
nonetheless cryptic. The improved error message will prepare MSan for
the upcoming AppArmorpocalypse.
Commit: d995c413c6001360da153a6a04fd6e6cf5185364
https://github.com/llvm/llvm-project/commit/d995c413c6001360da153a6a04fd6e6cf5185364
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/test/python/dialects/python_test.py
Log Message:
-----------
[MLIR][Python] fix python_test.py to not use `is` for type hint (#160718)
`is` causes the asserts to fail when the return hint is interpreted as
`OpResult | OpResultList | test.SameVariadicResultSizeOpVFV`
Commit: ca9fbb5553907714b9192b0803d0ed7ddade2194
https://github.com/llvm/llvm-project/commit/ca9fbb5553907714b9192b0803d0ed7ddade2194
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVObject.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVScope.h
M llvm/lib/DebugInfo/LogicalView/Core/LVScope.cpp
M llvm/test/tools/llvm-debuginfo-analyzer/COFF/01-coff-print-basic-details.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/01-dwarf-compare-logical-elements.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/01-dwarf-print-basic-details.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/pr-57040-incorrect-function-compare.test
M llvm/test/tools/llvm-debuginfo-analyzer/WebAssembly/01-wasm-compare-logical-elements.test
M llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
Log Message:
-----------
[llvm-debuginfo-analyzer] Remove `LVScope::Children` container (#144750)
Remove the `LVScope::Children` container and use `llvm::concat()`
instead to return a view over the types, symbols, and sub-scopes
contained in a given `LVScope`.
Fixes #69160.
Commit: 78428cec39b37a2a284336ec139894280a6b75e8
https://github.com/llvm/llvm-project/commit/78428cec39b37a2a284336ec139894280a6b75e8
Author: Aadesh Premkumar <aadesh.premkumar at multicorewareinc.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llround.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/lround.ll
Log Message:
-----------
[SPIRV] Addition of @llvm.lround.* and @llvm.llround.* intrinsic (#129240)
--Added legalizer for @llvm.lround.* and @llvm.llround.* inrinsic
--Added Instruction Selector for @llvm.lround.* and @llvm.llround.*
intrinsic
--Added tests for @llvm.lround.* and @llvm.llround.* intrinsic
Commit: e2585583ae8401ab809cbdaee5abb330bc26087d
https://github.com/llvm/llvm-project/commit/e2585583ae8401ab809cbdaee5abb330bc26087d
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Parser/OpenMP/linear-clause.f90
M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
A flang/test/Semantics/OpenMP/declare-simd.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in DECLARE_SIMD (#160390)
Commit: b5c01029eddea97b86af80c75d8ad60be67bd546
https://github.com/llvm/llvm-project/commit/b5c01029eddea97b86af80c75d8ad60be67bd546
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/unittests/Analysis/Presburger/BarvinokTest.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for modernize-loop-convert in BarvinokTest.cpp (NFC)
Commit: f2c268f9370e0021ae373d919ba2283eb851527f
https://github.com/llvm/llvm-project/commit/f2c268f9370e0021ae373d919ba2283eb851527f
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Analysis/LifetimeSafety.cpp
M llvm/include/llvm/ADT/ImmutableSet.h
M llvm/unittests/ADT/ImmutableSetTest.cpp
Log Message:
-----------
[ImmutableSet] Optimize add/remove operations to avoid redundant tree modifications (#159845)
Optimize ImmutableSet operations to avoid unnecessary tree modifications
when adding existing elements or removing non-existent elements.
- Modified `ImutAVLFactory::add_internal()` to return the original tree
when both key and value are the same, avoiding unnecessary node creation
- Updated `ImutAVLFactory::remove_internal()` and `add_internal()` to
return the original tree when no changes are made.
Note that `balanceTree` always end up creating at least one node even
when no rebalancing is done. So we also need to avoid unnecessary calls
to it.
Commit: 5953233edeb8af419b67116cefbeee8b15940cb9
https://github.com/llvm/llvm-project/commit/5953233edeb8af419b67116cefbeee8b15940cb9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/FunctionExtras.h
Log Message:
-----------
[ADT] Simplify IsSizeLessThanThreshold (NFC) (#160642)
IsSizeLessThanThreshold is used only in AdjustedParamTBase, just a few
lines below the declaration. This patch simplifies
IsSizeLessThanThreshold by substituting U with T, stripping away the
template, and switching to "static constexpr bool.
Commit: fddb8fe5f2be4f31c643ee6ff6f017b01465b21d
https://github.com/llvm/llvm-project/commit/fddb8fe5f2be4f31c643ee6ff6f017b01465b21d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
Log Message:
-----------
[ADT] Simplify SmallPtrSetIterator with std::reverse_iterator (NFC) (#160643)
SmallPtrSetIterator has two tasks:
- iterate the buckets in the requested direction
- skip the empty and tombstone buckets
These tasks are intertwined in the current implementation. This patch
separates them.
A new private iterator type, BucketItTy, now handles the iteration
direction. This is an alias for a raw pointer for forward iteration
and std::reverse_iterator<pointer> for reverse iteration.
The user-facing iterator now focuses solely on advancing BucketItTy
while skipping invalid (empty or tombstone) buckets. AdvanceIfNotValid
now works transparently for both directions. operator++ on BucketItTy
does the right thing whether it's a raw pointer or a
std::reverse_iterator.
This simplification removes RetreatIfNotValid and the
reverse-iteration logic in operator*() and operator++().
Commit: 0fd341c20b890b05f9588b7da61731561d3ef72a
https://github.com/llvm/llvm-project/commit/0fd341c20b890b05f9588b7da61731561d3ef72a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Alignment.h
M llvm/unittests/Support/AlignmentTest.cpp
Log Message:
-----------
[Support] Clean up Align (#160644)
This patch cleans up the constructors and operator= of Align.
- "constexpr Align(LogValue CA)" is a really strange "public:"
constructor. It can only be constructed with a private struct
LogValue, which wraps the log2 of an alignment. Since nobody uses
it outside the class anyway, this patch moves the constructor to
"private:" while switching to a tag-based parameter list. In turn,
this patch removes LogValue.
- The block of comment being deleted is no longer applicable, so this
patch marks operator= constexpr. To test operator= in a unit test,
this patch makes value() constexpr also. Refer to the unit test to
see how operator= and value() are put together.
Commit: 78238dc9f8888a6c5ec42ceea24ae2bde801fb18
https://github.com/llvm/llvm-project/commit/78238dc9f8888a6c5ec42ceea24ae2bde801fb18
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Support/ARMWinEH.cpp
M llvm/lib/Support/BinaryStreamReader.cpp
M llvm/lib/Support/BinaryStreamWriter.cpp
M llvm/lib/Support/YAMLParser.cpp
Log Message:
-----------
[Support] Use list-initialization for returning pairs (#160645)
In C++17 and later, "return {A, B};" guarantees copy elision for a
std::pair return type, ensuring the object is constructed directly in
the return slot. This patch updates those instances under Support/.
Commit: 81309d54db450bd94ca0dba5959d4a123bf6ba76
https://github.com/llvm/llvm-project/commit/81309d54db450bd94ca0dba5959d4a123bf6ba76
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/docs/ExtendingLLVM.rst
Log Message:
-----------
[llvm] Proofread ExtendingLLVM.rst (#160646)
Commit: e2cab7c031c46a4465bd7380db64a8c87ec2b5e5
https://github.com/llvm/llvm-project/commit/e2cab7c031c46a4465bd7380db64a8c87ec2b5e5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/cmake/caches/PGO.cmake
Log Message:
-----------
Reapply "[Clang][CMake] Use IRPGO instead of FE PGO for Cmake Caches" (#160711)
This reverts commit 18f7e03dd60d84b5da3403f10177323df01b6f92.
Reapplies #160133.
This was reverted originally because it was causing compilation crashes
in ControlHeightReduction. It was reverted again because fix in
CntrolHeightReduction was causing more problems. Everything should be in
working order now, so relanding.
Commit: fc9369a70ecc9c260f3eb1af9cbc3ded24e9d4fb
https://github.com/llvm/llvm-project/commit/fc9369a70ecc9c260f3eb1af9cbc3ded24e9d4fb
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Analysis/LifetimeSafety.cpp
Log Message:
-----------
[LifetimeSafety] Disable canonicalization in immutable collections (#159850)
Disable canonicalization in immutable collections for lifetime analysis.
Modified the `LifetimeFactory` struct in `LifetimeSafety.cpp` to
explicitly initialize the immutable collection factories with
`canonicalize=false`. This prevents the factories from canonicalizing
their data structures, which can improve performance by avoiding
unnecessary comparisons and digest computations.
Commit: 538325f23e16b6d1195ae11904ea1731d41654c9
https://github.com/llvm/llvm-project/commit/538325f23e16b6d1195ae11904ea1731d41654c9
Author: Aleksandar Spasojevic <aleksandar.spasojevic at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
M llvm/test/MC/AMDGPU/gfx12_asm_sopk_alias.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
Log Message:
-----------
[AMDGPU] Add GFX12 wave register names with WAVE_ prefix (#144352)
Rename canonical register names with WAVE_ prefix for GFX12
Maintain backward compatibility through aliases
Commit: c1b211034b854737245409b435726cd169349a4b
https://github.com/llvm/llvm-project/commit/c1b211034b854737245409b435726cd169349a4b
Author: Georgios Pinitas <georgios.pinitas at arm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
M mlir/lib/Dialect/GPU/Transforms/ParallelLoopMapper.cpp
M mlir/test/Dialect/GPU/mapping.mlir
Log Message:
-----------
[mlir][gpu] Add innermost-first policy when mapping loops to GPU IDs (#160634)
Commit: 68a253da6498abe20b0e61e9dce488943aaf2c28
https://github.com/llvm/llvm-project/commit/68a253da6498abe20b0e61e9dce488943aaf2c28
Author: Ivan Tadeu Ferreira Antunes Filho <antunesi at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
Log Message:
-----------
[lldb][RISCV] Use uint64_t for emulating ADDI (#160550)
In RISC-V, the same instruction is used for both signed and unsigned
additions.
Signed integer overflow is undefined behavior in C++, but signed integer
overflow is defined behavior when using ADDI in RISC-V.
As we are emulating the RISC-V behavior we should be using uint.
This fix the failure with ubsan introduced by #159842:
lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp:807:40:
runtime error: signed integer overflow: -9223372036854775808 + -16
cannot be represented in type 'int64_t' (aka 'long')
Commit: df420ee2ba3ce58b07f7ae70b32ebd649dcb0a5a
https://github.com/llvm/llvm-project/commit/df420ee2ba3ce58b07f7ae70b32ebd649dcb0a5a
Author: Dan Brown <61992655+danbrown-amd at users.noreply.github.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/isnan-overloads.hlsl
A clang/test/CodeGenHLSL/builtins/isnan.hlsl
A clang/test/SemaHLSL/BuiltIns/isnan-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/DirectX/isnan.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/isnan.ll
Log Message:
-----------
Implements isnan() HLSL intrinsic for DXIL and SPIR-V targets. (#157733)
Addresses #99132.
Commit: a0c75a9009e0699ac98e9d0ca3edc913a77d606a
https://github.com/llvm/llvm-project/commit/a0c75a9009e0699ac98e9d0ca3edc913a77d606a
Author: sstwcw <su3e8a96kzlver at posteo.net>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Align within the level with Cpp11BracedListStyle disabled (#159140)
When the style is
`{AlignConsecutiveDeclarations: true, Cpp11BracedListStyle: false}`, the
program would sometimes align the lambda body with the outside. Like
this.
```C++
const volatile auto result{ []() {
const auto something = 1;
return 2;
} };
```
This patch stops it. Now the output looks like this.
```C++
const volatile auto result{ []() {
const auto something = 1;
return 2;
} };
```
Fixes #53699.
The problem was with how the `AlignTokenSequence` function tracked
levels. The stack was pushed once when a token was more nested than the
previous one. It was popped once when a token was less nested than the
previous one. With the option `Cpp11BracedListStyle` disabled, the `[`
token was deeper than the previous token by 2 levels. Both its
indentation level and nesting level were more than that of the previous
one. But the stack was only pushed once. The following tokens popped the
2 levels separately. The function treated the body of the lambda
expression as on the same level as the outside.
The problem is fixed this way. The function `AlignTokens` which calls
the function `AlignTokenSequence` already uses a simpler and more robust
way to track levels. It remembers the outermost level it should align.
It compares the token's level with the outermost level. It does not need
a stack. So it is immune to the problem. This patch makes the function
`AlignTokenSequence` take as a parameter the indices of the tokens
matched by the function `AlignTokens`. This way it does not have to
contain the logic again.
Now the function `AlignTokenSequence` only aligns tokens already matched
by the function `AlignTokens`. It is easy to see that the assertion on
line 453 holds. The workaround on line 354 is not needed any more. The
test on line 20310 added at the same time as the assertion ensures that
the assertion hold.
The stack in the function `AlignTokenSequence` is kept for now. It is
still used to figure out when things inside a level should move along
with the outer level. Since the stack has the problem, the developer
plans to move the logic into token annotator. It already uses a stack.
Commit: e47a42e5b597b155207da24a348baaba52014a92
https://github.com/llvm/llvm-project/commit/e47a42e5b597b155207da24a348baaba52014a92
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/CUDA/cuda-code-gen.mlir
Log Message:
-----------
[flang][cuda] Do not use managed memory inside gpu module (#160730)
Do not issue call to _FortranACUFAllocDescriptor inside gpu module.
Commit: 6eff26094a2c277d9f324545b8b26a02213ed5de
https://github.com/llvm/llvm-project/commit/6eff26094a2c277d9f324545b8b26a02213ed5de
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/test/Transforms/InstCombine/insert-extract-shuffle.ll
Log Message:
-----------
[InstCombine] Skip replaceExtractElements for ConstantData (#160575)
Closes https://github.com/llvm/llvm-project/issues/160507.
Note: Replacing other users except for `ExtElt` is a bit strange to me.
I tried to only replace `ExtElt` with a new extractelement, but it
caused regressions on `widen_extract2/3`.
Commit: 0f1a952399b874246b48f787431efbd5364cb74d
https://github.com/llvm/llvm-project/commit/0f1a952399b874246b48f787431efbd5364cb74d
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/CommandProcessorCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/CommandProcessorCheck.h
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
R clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.cpp
R clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/command-processor.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/command-processor.c
R clang-tools-extra/test/clang-tidy/checkers/cert/env33-c.c
Log Message:
-----------
[clang-tidy] Rename `cert-env33-c` to `bugprone-command-processor` (#160275)
Moves `cert-env33-c` check into `bugprone` module and gives it a clearer
name: `bugprone-command-processor`
This is part of the cleanup described in
https://github.com/llvm/llvm-project/issues/157287.
Closes https://github.com/llvm/llvm-project/issues/157288
Commit: d45a1359183a2e3f3f5b58a426a5f4899c893778
https://github.com/llvm/llvm-project/commit/d45a1359183a2e3f3f5b58a426a5f4899c893778
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume-align.ll
Log Message:
-----------
[InstCombine] Remove redundant align 1 assumptions. (#160695)
It seems like we have a bunch of align 1 assumptions in practice and
unless I am missing something they should not add any value.
See https://github.com/dtcxzyw/llvm-opt-benchmark/pull/2861/files
PR: https://github.com/llvm/llvm-project/pull/160695
Commit: 777eea0732d646ee12e781d814047f9a7164b4af
https://github.com/llvm/llvm-project/commit/777eea0732d646ee12e781d814047f9a7164b4af
Author: Abhinav Gaba <abhinav.gaba at intel.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/Basic/OpenMPKinds.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
Log Message:
-----------
[NFC][Clang][OpenMP] Add helper functions/utils for finding/comparing attach base-ptrs. (#155625)
These have been pulled out of the codegen PR #153683, to reduce the size
of that PR.
Commit: 62450ba905fecc0821f3a08db81f756c8b1f7b7c
https://github.com/llvm/llvm-project/commit/62450ba905fecc0821f3a08db81f756c8b1f7b7c
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/spec.gen.py
M libcxx/utils/parse-spec-results
Log Message:
-----------
[libc++] Improve handling of runtime errors inside SPEC benchmarks
Previously, we would report a successful run if the benchmark exited
with an error, and we would produce a timing for the benchmark. After
this patch, we consider an error in the benchmark to be a failed LIT
test and we don't produce any benchmark data for it.
Commit: 35c14c4cc32f97bd82d5bab458cf53b941b4f2dc
https://github.com/llvm/llvm-project/commit/35c14c4cc32f97bd82d5bab458cf53b941b4f2dc
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Implement AtomicExpr for ComplexType (#160563)
This change implements AtomicExpr for ComplexType
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: a5569b4bd7f8d2696f962e4edaa5179895228e42
https://github.com/llvm/llvm-project/commit/a5569b4bd7f8d2696f962e4edaa5179895228e42
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M flang/lib/Frontend/FrontendActions.cpp
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/include/llvm/Support/PGOOptions.h
M llvm/include/llvm/Transforms/Instrumentation/DataFlowSanitizer.h
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Support/PGOOptions.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
[llvm] Add `vfs::FileSystem` to `PassBuilder` (#160188)
Some LLVM passes need access to the filesystem to read configuration
files and similar. In some places, this is achieved by grabbing the VFS
from `PGOOptions`, but some passes don't have access to these and resort
to just calling `vfs::getRealFileSystem()`. This PR allows setting the
VFS directly on `PassBuilder` that's able to pass it down to all passes
that need it.
Commit: 50a7eb6fc2977d3a5c2d71d91a799d4275f5a595
https://github.com/llvm/llvm-project/commit/50a7eb6fc2977d3a5c2d71d91a799d4275f5a595
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
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
Log Message:
-----------
[MLIR][XeGPU] Add support for vector.multi_reduction in wg to sg pass [1/N] (#157554)
This PR adds pattern for lowering vector.multi_reduction from workgroup
to subgroup IR. It currently only supports sg local reductions
Commit: f07cedbdc6887b02f5ae4188b92ab85e510d964b
https://github.com/llvm/llvm-project/commit/f07cedbdc6887b02f5ae4188b92ab85e510d964b
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/combine-wide.ll
Log Message:
-----------
[NVPTX] Reland `mad.wide` combine under (default off) CLI option (#160214)
Users reported regressions to important matmul kernels as a result of
#155024. Although #155024 was a revert, this PR should allow them to
recover some of the lost performance.
Commit: c924e7a8672fb1098c695d652697946cd69343b6
https://github.com/llvm/llvm-project/commit/c924e7a8672fb1098c695d652697946cd69343b6
Author: David Peixotto <peix at meta.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/git/github-automation.py
Log Message:
-----------
[workflows] Update commit access request PR links (#146169)
This PR updates the links used to show the PR contribution stats of the
user requesting commit access to the LLVM project. Previously we would
only show the PRs that were currently opened by the user because the
`/pulls/<username>` endpoint automatically applies the `is:open` filter.
The contribution guidelines suggest that the user should have at least 3
merged PRs to be considered for commit access so this seems like a
relevant data point to add.
We now show all PRs that a user has created (not just the open ones) and
a separate link for the PRs that are merged.
Commit: 9e7b21afaaf1b165ac7a9f4bc4afd67a7d1b4687
https://github.com/llvm/llvm-project/commit/9e7b21afaaf1b165ac7a9f4bc4afd67a7d1b4687
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrInfo.cpp
Log Message:
-----------
[llvm] Fix X86InstrInfo.cpp build after #160188
Commit: 80d3a8015513e2a64c47e173addda6ce816bf85c
https://github.com/llvm/llvm-project/commit/80d3a8015513e2a64c47e173addda6ce816bf85c
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86FrameLowering.cpp
Log Message:
-----------
[NFC][x86] Cleanup X86FrameLowering::emitSPUpdate (#156948)
I was trying to understand the cases where `emitSPUpdate` may use a
`push` to adjust the stack pointer and realized that the code was more
complex than it needed to be.
* `Chunk` is redundant as it is set to `MaxSPChunk` and never modified.
* The only time we use the `push` optimization is if `Offset` is equal
to `SlotSize` (as `SlotSize` is never as large as `MaxSPChunk`, so will
never equal if `std::min` returned that value).
* If we use the `push` optimization, then we've finished adjusting the
stack and can return early instead of continuing the loop.
Commit: 30402c7dea57d35ead80387c061cda6977ba98ef
https://github.com/llvm/llvm-project/commit/30402c7dea57d35ead80387c061cda6977ba98ef
Author: Dave Bartolomeo <dave_bartolomeo at apple.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/include/clang/Analysis/PathDiagnostic.h
M clang/include/clang/Basic/Sarif.h
M clang/lib/Analysis/PathDiagnostic.cpp
M clang/lib/Basic/Sarif.cpp
M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
A clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.h
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-diagnostic-test.c.sarif
A clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-file-diagnostics.c.sarif
A clang/test/Analysis/diagnostics/sarif-multi-file-diagnostics.c
M clang/test/Analysis/lit.local.cfg
Log Message:
-----------
[analyzer] Emit IssueHash in SARIF (#159445)
This change adds two new properties to each `result` object in the SARIF
log:
`partialFingerprints`: Contains the "issue hash" that the analyzer
already generates for each result, which can help identify a result
across runs even if surrounding code changes.
`hostedViewUri`: If running with `-analyzer-format=sarif-html`, this
property will now be emitted with the `file:` URL of the generated HTML
report for that result.
Along the way, I discovered an existing bug where the HTML diagnostic
consumer does not record the path to the generated report if another
compilation already created that report. This caused both the SARIF and
Plist consumers to be missing the link to the file in all but one of the
compilations in case of a warning in a header file. I added a new test
to ensure that the generated SARIF for each compilation contains the
property.
Finally, I made a few changes to the `normalize_sarif` processing in the
tests. I switched to `sed` to allow substitutions. The normalization now
removes directory components from `file:` URLs, replaces the `length`
property of the source file with a constant `-1`, and puts placeholders
in the values of the `version` properties rather than just deleting
them. The URL transformation in particular lets us verify that the right
filename is generated for each HTML report.
Fixes #158159
rdar://160410408
Commit: 96a7c9b9858ac4eb366e443b00784488c190688c
https://github.com/llvm/llvm-project/commit/96a7c9b9858ac4eb366e443b00784488c190688c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__vector/vector_bool.h
A libcxx/test/benchmarks/containers/sequence/vector_bool.bench.cpp
Log Message:
-----------
[libc++] Simplify vector<bool> fill constructors (#160521)
#119632 introduced a code size and performance regression. This was
verified by running the included benchmark against trunk and trunk with
#119632 reverted. Instead of actually reverting that patch, we can
inline `__construct_at_end` into the few places it's used instead,
simplifying the implementation further (by not handling special cases we
never actually encounter).
```
Benchmark Baseline Candidate Difference % Difference
------------------------ ---------- ----------- ------------ --------------
BM_vector_bool_size_ctor 29.91 8.56 -21.35 -71.37
```
Commit: cc95c5680e9fd1a3697822407a9857caeca32dba
https://github.com/llvm/llvm-project/commit/cc95c5680e9fd1a3697822407a9857caeca32dba
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/__memory/compressed_pair.h
Log Message:
-----------
[libc++] Remove alignment attributes from _LIBCPP_COMPRESSED_PAIR (#158595)
These attributes aren't required anymore, since the potential
overalignemnt of the objects is handled by the surrounding anonymous
struct.
Commit: 62660e59d9365a2c77724c7cf05986eef7c2354a
https://github.com/llvm/llvm-project/commit/62660e59d9365a2c77724c7cf05986eef7c2354a
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cert/BUILD.gn
Log Message:
-----------
[gn build] Port 0f1a952399b8
Commit: c3cbd27d005b86ea5c5a375c21b86e6c2110e198
https://github.com/llvm/llvm-project/commit/c3cbd27d005b86ea5c5a375c21b86e6c2110e198
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll
A llvm/test/CodeGen/AMDGPU/s_uaddo_usubo_pseudo.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
Log Message:
-----------
[AMDGPU] Calc IsVALU correctly during UADDO/USUBO selection (#159814)
Fix two bugs. The first bug hid the second bug.
1. Calculate IsVALU correctly during UADDO/USUBO selection. IsVALU
should be false if the carryout users are UADDO_CARRY/USUBO_CARRY.
However instruction selection visits uses before defs, so the
UADDO_CARRY/USUBO_CARRY nodes are normally (probably always) already
converted to S_ADD_CO_PSEUDO/S_SUB_CO_PSEUDO. Fix to check for these
machine opcodes.
2. Without this fix, UADDO/USUBO selection will always select the VALU
instructions V_ADD_CO__U32_e64/V_SUB_CO_U32_e64.
S_UADDO_PSEUDO/S_USUBO_PSEUDO were never selected in the CodeGen/AMDGPU
tests. Thus, S_UADDO_PSEUDO/S_USUBO_PSEUDO cases were never hit in
EmitInstrWithCustomInserter. The code generation for
S_UADDO_PSEUDO/S_USUBO_PSEUDO had a bug where it could not handle code
generation for 32-bit $scc_out.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 321a7c3caf7c5c6a208501e1406fcab14f8b54f9
https://github.com/llvm/llvm-project/commit/321a7c3caf7c5c6a208501e1406fcab14f8b54f9
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
Log Message:
-----------
[alpha.webkit.NoUnretainedMemberChecker] Only check @property when @implementation is seen (#159947)
A @interface declaration with a raw pointer @property does not
necessarily mean it synthesizes ivar of that type. To determine whether
such a synthesis happens or not, we must wait for @implementation to
appear. So this PR makes the checker only validate @property then.
Commit: 57330c8514c78e7032975961badf5fa59091f059
https://github.com/llvm/llvm-project/commit/57330c8514c78e7032975961badf5fa59091f059
Author: Aaron Puchert <aaron.puchert at sap.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/throw-keyword-missing.cpp
Log Message:
-----------
Don't look into base class aliases in bugprone-throw-keyword-missing (#160725)
The check confusingly fires on non-exception classes if any base class
has an alias in an exception class. In our case, the exception had an
alias for an allocator interface, so every allocator inheriting from
that interface was treated as an exception type. (But only when the
header for the exception was included.)
The reason behind this is the odd (but documented) behavior of
isDerivedFrom and similar matchers: it does not only iterate through the
bases as written, but through all relevant nodes to check them for being
a base. This makes the matcher also finds aliases of the base classes.
Only going through the bases as written can be done with `hasAnyBase`.
However, that doesn't cover the class itself, and we have to check it
separately. Since we're no longer looking through aliases via the
matcher, and because we're apparently interested in the canonical type,
we check that (see the test with "typedef std::exception ERROR_BASE;").
Commit: 39ed57c0888dd9b76d63757357a8d5a742850ab6
https://github.com/llvm/llvm-project/commit/39ed57c0888dd9b76d63757357a8d5a742850ab6
Author: Abhinav Gaba <abhinav.gaba at intel.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
Log Message:
-----------
[NFC][Clang][OpenMP] Address minor review feedback from #155625. (#160746)
Commit: 1685a6a602c529d3615e2c2d98b7ef060f192eb7
https://github.com/llvm/llvm-project/commit/1685a6a602c529d3615e2c2d98b7ef060f192eb7
Author: itrofimow <i.trofimow at yandex.ru>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M bolt/lib/Core/GDBIndex.cpp
M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-gdb-generated-gdb11.test
M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-lld-generated.test
M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb11.test
M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb9.test
M bolt/test/X86/dwarf5-gdb-index-types-lld-generated.test
Log Message:
-----------
[BOLT] Fix incorrect CU-indicies in gdb-index (#151927)
After we sort the CUVector, we have to update CU-indices in address map
and constant pool
Commit: 1b0553c9fa8d61010a43b1a2dcb649d1aab7d8ae
https://github.com/llvm/llvm-project/commit/1b0553c9fa8d61010a43b1a2dcb649d1aab7d8ae
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/bitset
Log Message:
-----------
[libc++] Use _BitInt and __builtin_popcountg in bitset::count() (#160679)
This has multiple benefits:
1) The compiler has to do way less work to figure out things fold into a
simple `popcount`, improving compile times quite a bit
2) The compiler inlines better, since the compile doesn't have to do
complicated optimizations to get to the same point. Looking at the
pipeline, it seems that without this, LLVM has to go all the way to GVN
to get to the same code as there is after the first InstCombine pass
with this change.
Currently this applies only to `bitset`s with at most 64 bits, but that
is by far the most common case.
Commit: ca61a9d96027a34750149b856ffba746999b4e16
https://github.com/llvm/llvm-project/commit/ca61a9d96027a34750149b856ffba746999b4e16
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
Log Message:
-----------
[mlir][xegpu] Support offset arguments in LoadNd, StoreNd and PrefetchNd subgroup distribution. (#160417)
Currently offsets are given as operands of `CreateNd` op. Sg
distribution does not support offsets arguments at the consumer.
This PR adds support for offsets given at the consumer (like LoadNd).
With this change, it is required to specify the offsets at consumer op
(LoadNd, StoreNd, PrefetchNd) of the tile or otherwise distribution will
fail.
This also removes the need for UpdateNdOffset op. PR removes the support
for UpdateNdOffset .
Commit: 04258fe3b15c9ecf78848c9b1470e1048844989e
https://github.com/llvm/llvm-project/commit/04258fe3b15c9ecf78848c9b1470e1048844989e
Author: Dmitry Chigarev <dmitry.chigarev at intel.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
A mlir/test/Dialect/XeGPU/xegpu-unroll-patterns-no-desc-offsets.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[mlir][XeGPU][XeGPUUnroll] Support new syntax with offsets moved to load_nd/store_nd/prefetch_nd (#160323)
Adds support for new syntax in XeGPUUnroll for:
1. `create_nd_desc` without offsets
2. `load_nd` with offsets
3. `store_nd` with offsets
4. `prefetch_nd` with offsets
`create_nd_desc with offsets` + `load_nd with offsets` won't be lowered
correctly. In this case the IR would still have two unrealized
conversions that will fail later in the pipeline.
The offsets computation for the unrolled tile is now moved from
descriptors to load/store/prefetch operations. The resulted IR now has
one single descriptor that is being iterated in load/store/prefetch ops.
<details><summary>old/new behavior examples</summary>
```mlir
// before unroll pass:
gpu.func @load_nd(%src: memref<256x318xf32>) -> vector<24x32xf32> {
%tdesc = xegpu.create_nd_tdesc %src : memref<256x318xf32> -> !xegpu.tensor_desc<24x32xf32, #xegpu.layout<inst_data = [8, 16]>>
%ld = xegpu.load_nd %tdesc[8, 16]: !xegpu.tensor_desc<24x32xf32, #xegpu.layout<inst_data = [8, 16]>> -> vector<24x32xf32>
gpu.return %ld : vector<24x32xf32>
}
// after unroll pass (offsets in create_nd_desc):
gpu.func @create_nd_tdesc2(%arg0: memref<256x318xf32>) -> vector<24x32xf32> {
%cst = arith.constant dense<0.000000e+00> : vector<24x32xf32>
%c24 = arith.constant 24 : index
%c32 = arith.constant 32 : index
%c8 = arith.constant 8 : index
%c16 = arith.constant 16 : index
// create 6 descriptors for each tile
%0 = xegpu.create_nd_tdesc %arg0[%c8, %c16] : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
%1 = xegpu.create_nd_tdesc %arg0[%c8, %c32] : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
%2 = xegpu.create_nd_tdesc %arg0[%c16, %c16] : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
%3 = xegpu.create_nd_tdesc %arg0[%c16, %c32] : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
%4 = xegpu.create_nd_tdesc %arg0[%c24, %c16] : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
%5 = xegpu.create_nd_tdesc %arg0[%c24, %c32] : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
%6 = xegpu.load_nd %0 : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%7 = xegpu.load_nd %1 : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%8 = xegpu.load_nd %2 : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%9 = xegpu.load_nd %3 : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%10 = xegpu.load_nd %4 : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%11 = xegpu.load_nd %5 : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
...
}
// after unroll pass (offsets in load_nd):
gpu.func @load_nd(%arg0: memref<256x318xf32>) -> vector<24x32xf32> {
%cst = arith.constant dense<0.000000e+00> : vector<24x32xf32>
%c24 = arith.constant 24 : index
%c32 = arith.constant 32 : index
%c16 = arith.constant 16 : index
%c8 = arith.constant 8 : index
// create only one descriptor with proper tile shape
%0 = xegpu.create_nd_tdesc %arg0 : memref<256x318xf32> -> !xegpu.tensor_desc<8x16xf32>
// compute tile offsets at the operation (using only one descriptor)
%1 = xegpu.load_nd %0[%c8, %c16] : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%2 = xegpu.load_nd %0[%c8, %c32] : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%3 = xegpu.load_nd %0[%c16, %c16] : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%4 = xegpu.load_nd %0[%c16, %c32] : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%5 = xegpu.load_nd %0[%c24, %c16] : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
%6 = xegpu.load_nd %0[%c24, %c32] : !xegpu.tensor_desc<8x16xf32> -> vector<8x16xf32>
...
}
```
</details>
---------
Signed-off-by: dchigarev <dmitry.chigarev at intel.com>
Commit: 3e7e60ae5ce80b00602506e007b02e7195373f35
https://github.com/llvm/llvm-project/commit/3e7e60ae5ce80b00602506e007b02e7195373f35
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/test/Lower/OpenMP/declare-mapper.f90
R offload/test/offloading/fortran/target-declare-mapper-parent-allocatable.f90
Log Message:
-----------
Revert "[Flang][OpenMP] Implicitly map nested allocatable components in derived types" (#160759)
Reverts llvm/llvm-project#160116
Commit: 223cfa8018595ff2a809b4e10701bfea884af709
https://github.com/llvm/llvm-project/commit/223cfa8018595ff2a809b4e10701bfea884af709
Author: Chad Smith <cssmith at meta.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/source/Plugins/Platform/Android/AdbClient.cpp
M lldb/source/Plugins/Platform/Android/AdbClient.h
M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
M lldb/source/Plugins/Platform/Android/PlatformAndroid.h
M lldb/source/Plugins/Platform/Android/PlatformAndroidRemoteGDBServer.cpp
M lldb/unittests/Platform/Android/AdbClientTest.cpp
M lldb/unittests/Platform/Android/PlatformAndroidTest.cpp
Log Message:
-----------
[lldb] refactor PlatformAndroid and make threadsafe (attempt 2) (#159676)
Reattempt at https://github.com/llvm/llvm-project/pull/145382 (cc
@labath). This time setenv() was replaced with set_env()
(https://github.com/llvm/llvm-project/pull/145382#issuecomment-3187227704).
---------
Co-authored-by: Chad Smith <cssmith at meta.com>
Commit: 90a6884f2d088547f7b2650d2151a316b9694f59
https://github.com/llvm/llvm-project/commit/90a6884f2d088547f7b2650d2151a316b9694f59
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/CommandLine.h
M llvm/lib/Support/CommandLine.cpp
M llvm/unittests/Support/CommandLineTest.cpp
Log Message:
-----------
Enable parsing of optional strings (#154364)
Previously a "opt<std::optional<std::string>>>" would fail to
parse/would attempt to parse option value as argument.
Commit: 93cac97d7d4e5259cb544caab54e9902d3d84dbe
https://github.com/llvm/llvm-project/commit/93cac97d7d4e5259cb544caab54e9902d3d84dbe
Author: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Headers/avx512vlfp16intrin.h
M clang/test/CodeGen/X86/avx512vlfp16-builtins.c
Log Message:
-----------
[Headers][X86] Allow AVX512fp16 initialization intrinsics to be used in constexpr (#159929)
Fixes https://github.com/llvm/llvm-project/issues/156866
---------
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: 302be34a3f387f26e576734e125d174245a987f1
https://github.com/llvm/llvm-project/commit/302be34a3f387f26e576734e125d174245a987f1
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
A llvm/test/ThinLTO/X86/memprof-funcassigncloning2.ll
A llvm/test/Transforms/MemProfContextDisambiguation/funcassigncloning2.ll
M llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll
Log Message:
-----------
[MemProf] Make sure call clones without callsite node clones get updated (#159861)
Because we may prune differing amounts of call context for different
allocation contexts during matching (we only keep enough call context to
distinguish cold from noncold paths), we can end up with different
numbers of callsite node clones for different callsites in the same
function. Any callsites that don't have node clones for all function
clones should have their copies in those other function clones updated
the same way as the version in the original function, which might be
calling a clone of the callsite.
Commit: 885cb59315f974b261945686177cfa23833793bd
https://github.com/llvm/llvm-project/commit/885cb59315f974b261945686177cfa23833793bd
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M compiler-rt/lib/scudo/standalone/primary64.h
Log Message:
-----------
[scudo] Release to OS if a large amount of memory is deallocated. (#160621)
Before this change, if large amounts of memory are deallocated within a
release interval, the release is put off until the release interval
occurs. Unfortunately, for larger class sizes, this could mean that a
lot of this memory accumulates and is never released since no more
deallocations occur in that size class.
To fix this, if `RegionPushedBytesDelta` grows larger than a group size,
immediately do a release.
This work was originally done by ChiaHungDuan.
Commit: bb284a69688c0b3454dd77342d24719364b79a2b
https://github.com/llvm/llvm-project/commit/bb284a69688c0b3454dd77342d24719364b79a2b
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
M llvm/lib/Target/PowerPC/PPCInstrP10.td
Log Message:
-----------
[NFC][PowerPC] Fix err in instruction class name for stxvp (#160764)
Commit: 7b28fcd2b182ba2c9d2d71c386be92fc0ee3cc9d
https://github.com/llvm/llvm-project/commit/7b28fcd2b182ba2c9d2d71c386be92fc0ee3cc9d
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaTemplateDeduction.cpp
Log Message:
-----------
[clang] simplify constant template parameter type deduction for partial ordering (#160433)
This simplifies things a little bit. This is mostly NFCish, except the
reference type deduction workaround now applies in partial ordering as
well, but we don't have any test cases and any reason to suspect this is
significant.
Commit: 0d6af2db6cd9c964ff300e5b5246c070a57d45e2
https://github.com/llvm/llvm-project/commit/0d6af2db6cd9c964ff300e5b5246c070a57d45e2
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lld/COFF/Writer.cpp
M lld/test/COFF/strtab.s
Log Message:
-----------
[LLD] [COFF] Fix symbol names for import thunks (#160694)
9cc9efc483339ece1d52923569bb755db42b69f3 changed LLD to use a
StringTableBuilder for optimizing the string table, used for long
section and symbol names.
That commit had a bug, where the symbol table entry for an import thunk
with a long symbol name wouldn't get fetched from the
StringTableBuilder, if the base symbol name (without the "__imp_"
prefix) wasn't over 8 chars.
This should fix issues with Go, which errors out on reading the
executables with a broken symbol table, as noted in
https://github.com/mstorsjo/llvm-mingw/issues/518 and
https://github.com/golang/go/issues/75219.
Commit: 5923004f8121a6ce24db9fbfddecfe8ce659691c
https://github.com/llvm/llvm-project/commit/5923004f8121a6ce24db9fbfddecfe8ce659691c
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT] Don't check address past end of function for data/code marker annotation (#159210)
We want to annotate function with data and code markers
whose addresses fall within the range of the function, so
setting `CheckPastEnd` to false.
Commit: 185ae5cdc695248b58ae017508cc764c19bee5b7
https://github.com/llvm/llvm-project/commit/185ae5cdc695248b58ae017508cc764c19bee5b7
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/test/Shell/SymbolFile/NativePDB/break-by-function.cpp
M lldb/test/Shell/SymbolFile/NativePDB/break-by-line.cpp
M lldb/test/Shell/SymbolFile/NativePDB/disassembly.cpp
M lldb/test/Shell/SymbolFile/NativePDB/find-functions.cpp
M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
M lldb/test/Shell/SymbolFile/NativePDB/stack_unwinding01.cpp
M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
M lldb/test/Shell/SymbolFile/PDB/variables.test
Log Message:
-----------
Revert "[LLDB][NativePDB] Create functions with mangled name (#149701)"
This reverts commit e98f34eb08b2bf7aed787e7f8a7cea9111f044c8.
This broke demangling of Itanium symbols on i386.
Commit: 9e6fa3954006dd496440e4355c2ae75ea43cb80e
https://github.com/llvm/llvm-project/commit/9e6fa3954006dd496440e4355c2ae75ea43cb80e
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Passes/Instrumentation.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
A bolt/test/AArch64/instrumentation_sequence.s
Log Message:
-----------
[BOLT][AArch64][instr] Consider targeting ARM64 CPUs without LSE support (#158738)
`stadd` is only available in recent arm64 CPUs that have LSE support
(like Cortex-A73 and Cortex-A75) and is not available on old arm64 CPUs
(like Cortex-A53 and Cortex-A55). Devices could have a mixture of these
two kinds of CPUs, for which we need to provide an option for BOLT to
generate instrumentation sequence that emulates what `stadd` would do.
The implementation puts counter increment into an injected helper function
so we don't need to update CFG in the function that is being instrumented
and instrumentation induced binary size increase will be smaller.
Commit: 1e302e942cdbb2db902530144d0c3891f811168b
https://github.com/llvm/llvm-project/commit/1e302e942cdbb2db902530144d0c3891f811168b
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryFunction.cpp
M bolt/test/AArch64/constant-island-alignment.s
Log Message:
-----------
[BOLT] Add heuristics to determine constant island's alignment (#159486)
Constant island embedded in text section doesn't have its alignment
information from input binary and we currently set its alignment as
8 bytes. Constant island might be given a much larger alignment due
to performance or other reasons, so this change adds some heuristics
to determine its alignment based on its size, original address from
input binary and its owning section's alignment.
Commit: a85d3a53d306d6624f20b528cf783de778392347
https://github.com/llvm/llvm-project/commit/a85d3a53d306d6624f20b528cf783de778392347
Author: Chad Smith <cssmith at meta.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/unittests/Platform/Android/AdbClientTest.cpp
Log Message:
-----------
[lldb] Turn off AdbClientTest on windows to fix build breakage (#160771)
https://github.com/llvm/llvm-project/pull/159676 was recently landed.
After it was landed, additional tests were ran, where I saw an assertion
error on windows only. I am not able to test on windows, and the test is
a new test to mock an adb server. The mock server fails to start on
windows, so I am disabling to fix the breakage on main. This is not an
issue with the main code, only a test issue.
Relevant error output:
```
Step 8 (test-check-lldb-unit) failure: Test just built components: check-lldb-unit completed (failure)
******************** TEST 'lldb-unit :: Platform/Android/./AdbClientTests.exe/7/20' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:C:\buildbot\as-builder-10\lldb-x86-64\build\tools\lldb\unittests\Platform\Android\.\AdbClientTests.exe-lldb-unit-30696-7-20.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=20 GTEST_SHARD_INDEX=7 C:\buildbot\as-builder-10\lldb-x86-64\build\tools\lldb\unittests\Platform\Android\.\AdbClientTests.exe
--
Note: This is test shard 8 of 20.
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from AdbClientTest
[ RUN ] AdbClientTest.RealTcpConnection
Assertion failed: error.Fail(), file C:\buildbot\as-builder-10\lldb-x86-64\llvm-project\lldb\source\Host\common\TCPSocket.cpp, line 254
```
Commit: 4193a90b4263ff8c9599b921882cfbd7052b8571
https://github.com/llvm/llvm-project/commit/4193a90b4263ff8c9599b921882cfbd7052b8571
Author: Greg Clayton <gclayton at fb.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
A lldb/test/Shell/ObjectFile/ELF/elf-no-shdrs-pt-notes.yaml
Log Message:
-----------
Modify ObjectFileELF so it can load notes from PT_NOTE segments. (#160652)
The ObjectFileELF parser was not able to load ELF notes from PT_NOTE
program headers. This patch fixes ObjectFileELF::GetUUID() to check the
program header and parse the notes in any PT_NOTE segments. This will
allow memory ELF files to extract the UUID from an in memory image that
has no section headers. Added a test that creates an ELF file, strips
all section headers, and then makes sure that LLDB can see the UUID
value.
Commit: bd4f97792addc30e9f6aabc143e1ab2b9c7abff7
https://github.com/llvm/llvm-project/commit/bd4f97792addc30e9f6aabc143e1ab2b9c7abff7
Author: Alex Duran <alejandro.duran at intel.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/tools/offload-arch/CMakeLists.txt
A clang/tools/offload-arch/LevelZeroArch.cpp
M clang/tools/offload-arch/OffloadArch.cpp
Log Message:
-----------
[clang][tools] Add LevelZero support to offload-arch (#160570)
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 73bcac28d0bfbfd8c997385f25637b85c8f0f818
https://github.com/llvm/llvm-project/commit/73bcac28d0bfbfd8c997385f25637b85c8f0f818
Author: Akshay Deodhar <adeodhar at nvidia.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-objdump/MachO/function-starts.test
Log Message:
-----------
[llvm-objdump][MachO] Update check in flaky test that depends on directory path (#150674)
Earlier, function-starts.test failed when directory path contained
'_main', because objdump prints out the entire directory path, and there
is an implicit-check-not for '_main'.
There's three ways in which [function starts are printed by
llvm-objdump](https://llvm.org/docs/CommandGuide/llvm-objdump.html#cmdoption-llvm-objdump-function-starts):
With the "addr" mode, there will be no "_main"\
With "names", it'll be printed as "_main\n"\
With "both", it'll be printed as "<addr> _main\n".
The existing check for function-starts=addrs checks that the pattern for
"names" or "both" does not get printed. This MR changes the RUN lines to
take stdin input, so that no directory path is printed, and stray _main
strings in the directory path will not make the test fail.
Commit: e5b2a06546eb20662156b8a59b77aca086301486
https://github.com/llvm/llvm-project/commit/e5b2a06546eb20662156b8a59b77aca086301486
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
A llvm/test/CodeGen/WebAssembly/fake-use.ll
Log Message:
-----------
[WebAssembly] Remove FAKE_USEs before ExplicitLocals (#160768)
`FAKE_USE`s are essentially no-ops, so they have to be removed before
running ExplicitLocals so that `drop`s will be correctly inserted to
drop those values used by the `FAKE_USE`s.
---
This is reapplication of #160228, which broke Wasm waterfall. This PR
additionally prevents `FAKE_USE`s uses from being stackified.
Previously, a 'def' whose first use was a `FAKE_USE` was able to be
stackified as `TEE`:
- Before
```
Reg = INST ... // Def
FAKE_USE ..., Reg, ... // Insert
INST ..., Reg, ...
INST ..., Reg, ...
```
- After RegStackify
```
DefReg = INST ... // Def
TeeReg, Reg = TEE ... DefReg
FAKE_USE ..., TeeReg, ... // Insert
INST ..., Reg, ...
INST ..., Reg, ...
```
And this assumes `DefReg` and `TeeReg` are stackified.
But this PR removes `FAKE_USE`s in the beginning of ExplicitLocals. And
later in ExplicitLocals we have a routine to unstackify registers that
have no uses left:
https://github.com/llvm/llvm-project/blob/7b28fcd2b182ba2c9d2d71c386be92fc0ee3cc9d/llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp#L257-L269
(This was added in #149626. Then it didn't seem it would trigger the
same assertions for `TEE`s because it was fixing the bug where a
terminator was removed in CFGSort (#149097).
Details here:
https://github.com/llvm/llvm-project/pull/149432#issuecomment-3091444141)
- After `FAKE_USE` removal and unstackification
```
DefReg = INST ...
TeeReg, Reg = TEE ... DefReg
INST ..., Reg, ...
INST ..., Reg, ...
```
And now `TeeReg` is unstackified. This triggered the assertion here,
that `TeeReg` should be stackified:
https://github.com/llvm/llvm-project/blob/7b28fcd2b182ba2c9d2d71c386be92fc0ee3cc9d/llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp#L316
This prevents `FAKE_USE`s' uses from being stackified altogether,
including `TEE` transformation. Even when it is not a `TEE`
transformation and just a single use stackification, it does not trigger
the assertion but there's no point stackifying it given that it will be
deleted.
---
Fixes https://github.com/emscripten-core/emscripten/issues/25301.
Commit: d6072986cd40a3c009d2963a2b33501e047c7dc4
https://github.com/llvm/llvm-project/commit/d6072986cd40a3c009d2963a2b33501e047c7dc4
Author: Alireza Torabian <alireza.torabian at huawei.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
A llvm/test/Transforms/LoopFusion/da_separate_loops.ll
M llvm/test/Transforms/LoopFusion/simple.ll
Log Message:
-----------
[LoopFusion] Detecting legal dependencies for fusion using DA info (#146383)
Loop fusion pass will use the information provided by the recent
DA patch to fuse additional legal loops, including those with
forward loop-carried dependencies.
Commit: d77d3a78472410128f6d0b9f71bd36fb26b72feb
https://github.com/llvm/llvm-project/commit/d77d3a78472410128f6d0b9f71bd36fb26b72feb
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Shard/Transforms/ShardingPropagation.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for modernize-use-emplace in ShardingPropagation.cpp (NFC)
Commit: 57947ace14ebfadba46a99aa80589e021c757037
https://github.com/llvm/llvm-project/commit/57947ace14ebfadba46a99aa80589e021c757037
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/insertelement-with-copyable-args.ll
Log Message:
-----------
[SLP]Correctly set the insert point for insertlements with copyable arguments
Need to find the last insertelement instruction in the list for the
copyable arguments, otherwise wrong def-use chain may be built
Fixes #160671
Commit: b86aaacf28b358b187071bc87075f1faa2d65c4e
https://github.com/llvm/llvm-project/commit/b86aaacf28b358b187071bc87075f1faa2d65c4e
Author: Andrew Lazarev <alazarev at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/comp.h
M libcxx/include/__functional/is_transparent.h
M libcxx/include/__functional/operations.h
M libcxx/include/__functional/ranges_operations.h
M libcxx/include/__tree
R libcxx/include/__type_traits/is_generic_transparent_comparator.h
R libcxx/include/__type_traits/make_transparent.h
M libcxx/include/map
M libcxx/include/module.modulemap.in
M libcxx/include/string
M libcxx/test/benchmarks/containers/associative/map.bench.cpp
M libcxx/test/benchmarks/containers/associative/unordered_map.bench.cpp
Log Message:
-----------
Revert "[libc++] Avoid constructing additional objects when using map::at" (#160738)
Reverts llvm/llvm-project#157866
It breaks a lot of sanitizer buildbots
Commit: 70eb6cc662c9771afb47be4d553667c4b3c4e437
https://github.com/llvm/llvm-project/commit/70eb6cc662c9771afb47be4d553667c4b3c4e437
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port b86aaacf28b3
Commit: 078a4e93dabf2b7e474e538c5dd4f1b5cb7b76e8
https://github.com/llvm/llvm-project/commit/078a4e93dabf2b7e474e538c5dd4f1b5cb7b76e8
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
Log Message:
-----------
[clang] Load `-fbasic-block-sections=list=` through the VFS (#160785)
This PR loads the path from `-fbasic-block-sections=list=<path>` through
the VFS rather than going straight to the real file system. This matches
the behavior of other input files of the compiler.
Commit: d8a296523af503327c86252daaf6a57898e503c1
https://github.com/llvm/llvm-project/commit/d8a296523af503327c86252daaf6a57898e503c1
Author: Francisco Geiman Thiesen <franciscogthiesen at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/BitVector.h
M llvm/unittests/ADT/BitVectorTest.cpp
Log Message:
-----------
[ADT] Adding bidirectional iterator functionality + unit tests (#160726)
This feature is needed for #160415 , kuhar suggested that I split that
PR into 2 so that the ADT work is checking in first.
---------
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: 3008367910fccb2d5d9ebf71769c7b8a49db4534
https://github.com/llvm/llvm-project/commit/3008367910fccb2d5d9ebf71769c7b8a49db4534
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/tools/offload-arch/LevelZeroArch.cpp
Log Message:
-----------
[offload-arch] Fix warnings
This patch fixes:
clang/tools/offload-arch/LevelZeroArch.cpp:94:1: error: extra ';'
outside of a function is incompatible with C++98
[-Werror,-Wc++98-compat-extra-semi]
clang/tools/offload-arch/LevelZeroArch.cpp:95:1: error: extra ';'
outside of a function is incompatible with C++98
[-Werror,-Wc++98-compat-extra-semi]
clang/tools/offload-arch/LevelZeroArch.cpp:96:1: error: extra ';'
outside of a function is incompatible with C++98
[-Werror,-Wc++98-compat-extra-semi]
clang/tools/offload-arch/LevelZeroArch.cpp:173:55: error: missing
field 'type' initializer [-Werror,-Wmissing-field-initializers]
Commit: 0e17fcf93b6c4a53e23c3ba8ee8961ff3b1a7fba
https://github.com/llvm/llvm-project/commit/0e17fcf93b6c4a53e23c3ba8ee8961ff3b1a7fba
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
A clang/include/clang/Analysis/Analyses/LifetimeAnnotations.h
M clang/include/clang/Analysis/Analyses/LifetimeSafety.h
M clang/lib/Analysis/CMakeLists.txt
A clang/lib/Analysis/LifetimeAnnotations.cpp
M clang/lib/Analysis/LifetimeSafety.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/CheckExprLifetime.h
M clang/lib/Sema/SemaAPINotes.cpp
M clang/test/Analysis/LifetimeSafety/benchmark.py
M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
M clang/unittests/Analysis/LifetimeSafetyTest.cpp
Log Message:
-----------
[LifetimeSafety] Implement support for lifetimebound attribute (#158489)
Add support for `lifetimebound` attributes in the lifetime safety
analysis to track loans from function parameters to return values.
Implemented support for `lifetimebound` attributes on function
parameters
This change replaces the single `AssignOriginFact` with two separate
operations: `OriginFlowFact` and `KillOriginFact`. The key difference is
in semantics:
* Old `AssignOriginFact`: Replaced the destination origin's loans
entirely with the source origin's loans.
* New `OriginFlowFact`: Can now optionally merge the source origin's
loans to the destination's existing loans.
* New `KillOriginFact`: Clears all loans from an origin.
For function calls with `lifetimebound` parameters, we kill the the
return value' origin first then use `OriginFlowFact` to accumulate loans
from multiple parameters into the return value's origin - enabling
tracking multiple lifetimebound arguments.
- Added a new `LifetimeAnnotations.h/cpp` to provide helper functions
for inspecting and inferring lifetime annotations
- Moved several functions from `CheckExprLifetime.cpp` to the new file
to make them reusable
The `lifetimebound` attribute is a key mechanism for expressing lifetime
dependencies between function parameters and return values. This change
enables the lifetime safety analysis to properly track these
dependencies, allowing it to detect more potential dangling reference
issues.
Commit: 0963cc262708034e41c3ecf412c4597fbec284c5
https://github.com/llvm/llvm-project/commit/0963cc262708034e41c3ecf412c4597fbec284c5
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
Log Message:
-----------
[clang][DebugInfo][NFC] Simplify CollectRecordLambdaFields (#160690)
This patch creates a helper to retrieve the name from a lambda capture
and only calls `createFieldType` once.
This will simplify reviewing some upcoming changes in this function.
Commit: 4a194064dc9e1fddabf7ed9f3b364d07cf6c9613
https://github.com/llvm/llvm-project/commit/4a194064dc9e1fddabf7ed9f3b364d07cf6c9613
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn
Log Message:
-----------
[gn build] Port 0e17fcf93b6c
Commit: 85aeb6ab777862be0b79976a34c13ff2954ca238
https://github.com/llvm/llvm-project/commit/85aeb6ab777862be0b79976a34c13ff2954ca238
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-parentheses.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
Log Message:
-----------
[clang-tidy] add readability-redundant-parentheses (#159911)
This check wants to detect a common happened case that forgetting to
remove parenthese during modifying code.
---------
Co-authored-by: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Co-authored-by: Baranov Victor <bar.victor.2002 at gmail.com>
Commit: ba3415bc524667e12990ac86b6897f3840b20a76
https://github.com/llvm/llvm-project/commit/ba3415bc524667e12990ac86b6897f3840b20a76
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Log Message:
-----------
[gn build] Port 85aeb6ab7778
Commit: bad92c9c1c054a24742a3fc85045d21e5fd8703d
https://github.com/llvm/llvm-project/commit/bad92c9c1c054a24742a3fc85045d21e5fd8703d
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M lld/test/wasm/mutable-global-exports.s
M lld/wasm/Writer.cpp
Log Message:
-----------
[lld][WebAssembly] Fix check for exporting mutable globals (#160787)
We were not actually checking whether the global in question was
actually mutable before reporting the error.
Commit: 8a9aa183ac593d72c4713a0a9117774e7e50a3e7
https://github.com/llvm/llvm-project/commit/8a9aa183ac593d72c4713a0a9117774e7e50a3e7
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGen/builtin-masked.c
M clang/test/Sema/builtin-masked.c
A clang/test/Sema/builtin-masked.cpp
A clang/test/SemaObjC/builtin-masked.m
Log Message:
-----------
[Clang][FIX] Fix type qualifiers on vector builtins (#160185)
Summary:
These were not stripping qualifiers when using them to infer the types,
leading to errors when mixiing const and non-const.
Commit: 663414817b2669cee9d828c909822d3b4b9f5bbb
https://github.com/llvm/llvm-project/commit/663414817b2669cee9d828c909822d3b4b9f5bbb
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/test/CodeGen/SPIRV/hlsl-resources/StorageImageNonUniformIdx.ll
Log Message:
-----------
[SPIRV][NFC] Update issue number in XFAIL test for non-uniform resource index (#160381)
Commit: be23cdc858b860fbcc17c1f260d8a127a24d90b6
https://github.com/llvm/llvm-project/commit/be23cdc858b860fbcc17c1f260d8a127a24d90b6
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/CalcSpillWeights.h
M llvm/include/llvm/CodeGen/LiveRangeEdit.h
M llvm/lib/CodeGen/CalcSpillWeights.cpp
M llvm/lib/CodeGen/LiveRangeEdit.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/load-local-i16.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/remat-sop.mir
M llvm/test/CodeGen/AMDGPU/subreg-split-live-in-error.mir
M llvm/test/CodeGen/AMDGPU/swdev380865.ll
M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
M llvm/test/CodeGen/RISCV/rvv/remat.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmsub-constrained-sdnode.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-vector-reduce-mve-codegen.ll
Log Message:
-----------
[RegAlloc] Account for use availability when applying rematerializable weight discount (#159180)
This aims to fix the issue that caused https://reviews.llvm.org/D106408
to be reverted.
CalcSpillWeights will reduce the weight of an interval by half if it's
considered rematerializable, so it will be evicted before others.
It does this by checking TII.isTriviallyReMaterializable. However
rematerialization may still fail if any of the defining MI's uses aren't
available at the locations it needs to be rematerialized.
LiveRangeEdit::canRematerializeAt calls allUsesAvailableAt to check this
but CalcSpillWeights doesn't, so the two diverge.
This fixes it by also checking allUsesAvailableAt in CalcSpillWeights.
In practice this has zero change AArch64/X86-64/RISC-V as measured on
llvm-test-suite, but prevents weights from being perturbed in an
upcoming patch which enables more rematerialization by re-attempting
https://reviews.llvm.org/D106408
Commit: f6ded0be897e2878612dd903f7e8bb85448269e5
https://github.com/llvm/llvm-project/commit/f6ded0be897e2878612dd903f7e8bb85448269e5
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/examples/standalone/python/CMakeLists.txt
M mlir/python/CMakeLists.txt
Log Message:
-----------
[MLIR][Python] don't generate type stubs when cross-compiling (#160793)
Stubgen doesn't work when cross-compiling (stubgen will run in the host
interpreter and then fail to find the extension module for the host
arch). So disable it when `CMAKE_CROSSCOMPILING=ON`.
Commit: 55906e0abb685d52a5a134c83ad230229e76de3b
https://github.com/llvm/llvm-project/commit/55906e0abb685d52a5a134c83ad230229e76de3b
Author: Peter Rong <peterrong96 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
A llvm/test/tools/llvm-dwarfdump/verify_stmt_seq.yaml
Log Message:
-----------
[DWARFVerifier] Verify that DW_AT_LLVM_stmt_sequence is set correctly (#152807)
Sometimes DW_AT_LLVM_stmt_sequence won't point to the correct offset.
This feature helps us debug when/where it went wrong.
Added a new test and manually tempered with the value to show the
intended verification result.
---------
Signed-off-by: Peter Rong <PeterRong at meta.com>
Commit: 1867ca7afeea5eded105f868720b832ac2a4e204
https://github.com/llvm/llvm-project/commit/1867ca7afeea5eded105f868720b832ac2a4e204
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/Mustache.cpp
Log Message:
-----------
[llvm] Add benchmarks for Mustache (#160164)
The mustache library still has many issues with performance. While not
critical, template rendering is fairly simple, and should be fast. This
is hard to reason about without a benchmark. Since there is no standard
benchmark suite for Mustache, we can construct some benchmarks that will
stress our implementation.
This commit adds a new benchmark suite (MustacheBench) that tests
several
key performance areas:
- Parsing (Complex): Measures the one-time parse cost of a large
template.
- Parsing (Small): Measures the parse cost of a small template with deep
keys.
- Data Traversal: Stresses hot, cached data traversal using a
5k-iteration loop inside the template.
- Context Stack: Tests the render cost of deeply nested sections
(50 levels).
- Array Iteration: Benchmarks section iteration over a 100,000-item
array.
- Partial Rendering: Tests partial tag performance inside a large loop.
- String Escaping: Measures HTML-escaping a large string.
- String Unescaped (Triple): Baseline for {{{...}}} syntax.
- String Unescaped (Ampersand): Baseline for {{& ...}} syntax.
- Output Buffer: Tests rendering a single 1MB string.
Initial results show that Partial rendering is by far the slowest
operation. The cost per-item is ~3x higher than simple iteration,
because partial templates are being re-parsed on every call instead of
being cached. It also shows that the logic for HTML escaping is very
expensive likely due to the character by character parsing done to
escapes.
Commit: cc0fecf619301c68a7c885b4e2f2215144abab5a
https://github.com/llvm/llvm-project/commit/cc0fecf619301c68a7c885b4e2f2215144abab5a
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
A mlir/test/Target/LLVMIR/global_float_array.mlir
Log Message:
-----------
[MLIR][MLIRToLLVM] Fix zero fp value to array translation (#160713)
The translator should not generate zeroinitilizer on fp all zero values,
since it may affect signedness of zeroes
Fixes #160437
Commit: 2810a489d233baa68f405ed9c4a83675509df098
https://github.com/llvm/llvm-project/commit/2810a489d233baa68f405ed9c4a83675509df098
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M libcxx/utils/compare-benchmarks
M libcxx/utils/visualize-historical
Log Message:
-----------
[libc++] Use pandas.DataFrame in compare-benchmarks
This opens the door to performing more advanced computations on the
data we're comparing.
Commit: 7ad70d2793ec9baba1f343d82c8457b744c74164
https://github.com/llvm/llvm-project/commit/7ad70d2793ec9baba1f343d82c8457b744c74164
Author: Thurston Dang <thurston at google.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
Log Message:
-----------
[msan] Handle AVX512/AVX10 vrndscale (#160624)
Uses the updated handleAVX512VectorGenericMaskedFP() from
https://github.com/llvm/llvm-project/pull/159966
Commit: 9440f40cfbe7a62aed9e5726901a2ef935a60d54
https://github.com/llvm/llvm-project/commit/9440f40cfbe7a62aed9e5726901a2ef935a60d54
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/test/CodeGen/LoongArch/lasx/and-not-combine.ll
M llvm/test/CodeGen/LoongArch/lsx/and-not-combine.ll
Log Message:
-----------
[LoongArch] Support vector types for hasAndNot to enable more DAG combines (#159056)
After this commit, DAGCombiner will have more opportunities to optimize
vector types `and+...+not` to `andn`.
Many combines in DAGCombiner will be enabled, but only shows changes
after combining `and(add(not))` to `and(not(sub))` in the tests of this
commit.
Commit: 8553bd2b29ad2b17a9a884f14da6c43b606ec776
https://github.com/llvm/llvm-project/commit/8553bd2b29ad2b17a9a884f14da6c43b606ec776
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/lasx/extract-binop.ll
M llvm/test/CodeGen/LoongArch/lsx/extract-binop.ll
Log Message:
-----------
[LoongArch] Override shouldScalarizeBinop to enable `extract(binop)->binop(extract)` combination (#159726)
Commit: 7275c178bd989bd431ae8aaff57d62d6fba1cc4f
https://github.com/llvm/llvm-project/commit/7275c178bd989bd431ae8aaff57d62d6fba1cc4f
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/struct-return-replicate.ll
Log Message:
-----------
[VPlan] Fix packed replication of struct types (#160274)
I ran into this crash when #158690 caused a loop with a struct call to
be vectorized.
If we have a replicate recipe in a branch-on-mask predicated region
that's used by a widened recipe in another block then it will be packed
together with the other lanes via a VPPredInstPHIRecipe.
If we're replicating a call with a struct return type then we currently
crash. The code that handles structs in packScalarIntoVectorizedValue
seemed to be untested at least on test/Transforms/LoopVectorize.
There's two places that need to be fixed. The poison value that the
scalar is packed into needs to use toVectorizedTy to correctly handle
structs (not to be confused with toVectorTy!)
The other is that VPPredInstPHIRecipe expects its operand to be an
InsertElementInstr when stringing together the different lanes. For
structs this will be an InsertVlaueInstr, and the value for the previous
lane will be at the back of a chain of InsertValueInstrs.
Commit: b4b89a688c290f8c5a5f4f9427d4781e9b1a4ce8
https://github.com/llvm/llvm-project/commit/b4b89a688c290f8c5a5f4f9427d4781e9b1a4ce8
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/GenericSSAContext.h
Log Message:
-----------
[Unifomity] Fix type of ValueRefNull (NFC)
ValueRefNull has no current users.
Commit: c4a134f59108c8a5e41d9f2539b0ee96f5cbccec
https://github.com/llvm/llvm-project/commit/c4a134f59108c8a5e41d9f2539b0ee96f5cbccec
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/inline-strcmp-debugloc.ll
Log Message:
-----------
[profcheck] Add unknown branch weights for inlined strcmp/strncmp (#160455)
The strcmp/strncmp inliner creates new conditional branches but was
failing to add profile metadata. This caused the ProfileVerifierPass to
fail when profcheck is enabled.
This patch fixes the issue by explicitly adding unknown branch weights
to these branches.
Issue #147390
Commit: 1e01c029961c0dd3dd70b68e029581dc6ef9c17b
https://github.com/llvm/llvm-project/commit/1e01c029961c0dd3dd70b68e029581dc6ef9c17b
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
M llvm/test/CodeGen/X86/fadd-combines.ll
Log Message:
-----------
[DAGCombiner] Remove `NoSignedZerosFPMath` uses in `visitFADD` (#160635)
Remove these global flags and use node level flags instead.
Commit: b928695c2fb8968764f0ae04f8a1ee62ffc9c94d
https://github.com/llvm/llvm-project/commit/b928695c2fb8968764f0ae04f8a1ee62ffc9c94d
Author: co63oc <co63 at 163.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerLoop.cpp
M compiler-rt/lib/fuzzer/FuzzerMutate.cpp
M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
Log Message:
-----------
[compiler-rt] fix typos (#160799)
fix typos
Commit: 6679e43937a87db3ce59a02f0cfc86951a4881e4
https://github.com/llvm/llvm-project/commit/6679e43937a87db3ce59a02f0cfc86951a4881e4
Author: Koakuma <koachan at protonmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/CodeGen/Targets/Sparc.cpp
M clang/test/CodeGen/sparcv9-abi.c
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/test/CodeGen/SPARC/64abi.ll
Log Message:
-----------
[clang][SPARC] Pass 16-aligned structs with the correct alignment in CC (#155829)
Pad argument registers to preserve overaligned structs in LLVM IR.
Additionally, since i128 values will be lowered as split i64 pairs in
the backend, correctly set the alignment of such arguments as 16 bytes.
This should make clang compliant with the ABI specification and fix
https://github.com/llvm/llvm-project/issues/144709.
Commit: 114b3b8b04fe5aae4143e30078637015a9e077ce
https://github.com/llvm/llvm-project/commit/114b3b8b04fe5aae4143e30078637015a9e077ce
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-09-25 (Thu, 25 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsExpandPseudo.cpp
M llvm/test/CodeGen/Mips/atomic-min-max.ll
Log Message:
-----------
[Mips] Fix atomic min/max generate mips4 instructions when compiling for mips2 (#159717)
Modify instr movn/movz to mixture of beq, move, and sc.
Because atomic-min-max.ll test broken on the expensive builder, I revert
https://github.com/llvm/llvm-project/pull/149983 and resubmit this PR.
The broken reason:
In i16/i8 function expandAtomicBinOpSubword, we use two successor
after loop2MBB, one does not specify the second parameter, the other
use BranchProbability::getOne() that means 100% probability. This is
contradictory. And the second successor is also specified incorrectly.
The changess:
* llvm/lib/Target/Mips/MipsExpandPseudo.cpp:
Change loop2MBB`s second successor to correct one and delete the
second parameter BranchProbability::getOne().
* llvm/test/CodeGen/Mips/atomic-min-max.ll:
Add -verify-machineinstrs option in RUN command;
Modify i16 test and i8 test according to the changes.
Fix #145411.
Commit: de59bc42ed84e062360eb3a9e591a195bfb1104f
https://github.com/llvm/llvm-project/commit/de59bc42ed84e062360eb3a9e591a195bfb1104f
Author: Josh Hutton <55123932+JoshHuttonCode at users.noreply.github.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
Log Message:
-----------
[AMDGPU] Avoid constraining RC based on folded into operand (NFC) (#160743)
The RC of the folded operand does not need to be constrained based on
the RC of the current operand we are folding into.
The purpose of this PR is to facilitate this PR:
https://github.com/llvm/llvm-project/pull/151033
Commit: a274ffe2597ca53d828d08d44af0f44d3b823507
https://github.com/llvm/llvm-project/commit/a274ffe2597ca53d828d08d44af0f44d3b823507
Author: Pete Chou <petechou at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
A llvm/test/CodeGen/AMDGPU/postra-machine-sink-livein-subrange.mir
Log Message:
-----------
[MachineSink] Remove subrange of live-ins from super register as well. (#159145)
Post-RA machine sinking could sink a copy of sub-register into
a successor. However, the sub-register might not be removed from the
live-in bitmask of its super register in successor and then a later
pass, e.g, if-converter, may add an implicit use of the register from
live-in resulting in an use of an undefined register. This change makes
sure subrange of live-ins from super register could be removed as well.
Commit: fe2dc19a8bb11675dd3c1b01adb1c711dc82086d
https://github.com/llvm/llvm-project/commit/fe2dc19a8bb11675dd3c1b01adb1c711dc82086d
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fix-xvshuf.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvrepl128vei.ll
Log Message:
-----------
[LoongArch] Refine 256-bit vector_shuffle legalization for LASX (#160254)
Commit: 77a3d431ff95a69736da42ec2b12e26b9e1e4bcc
https://github.com/llvm/llvm-project/commit/77a3d431ff95a69736da42ec2b12e26b9e1e4bcc
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
A clang/test/DebugInfo/CXX/lambda-capture-packs.cpp
Log Message:
-----------
[clang][DebugInfo][test] Add tests for lambda capture packs (#160705)
We didn't have coverage for this yet. And I'm planning on making some
chnges in this area. These tests will be useful for that.
Commit: beed796ea02a54ec44a30db092e3f5d045390434
https://github.com/llvm/llvm-project/commit/beed796ea02a54ec44a30db092e3f5d045390434
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fix-xvshuf.ll
M llvm/test/CodeGen/LoongArch/lasx/shuffle-as-permute-and-shuffle.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-rotate.ll
Log Message:
-----------
[LoongArch] Custom legalize vector_shuffle to xvpermi.d when possible (#160429)
Commit: 8cd917bc80eb9882cdc38d49ed82d855820d7e6c
https://github.com/llvm/llvm-project/commit/8cd917bc80eb9882cdc38d49ed82d855820d7e6c
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/waitcnt-vmcnt-loop.mir
Log Message:
-----------
[AMDGPU] Skip debug uses in SIInsertWaitcnts::shouldFlushVmCnt (#160818)
Commit: 3257dc35fe9ed872788e90c948cb4bb593b8fa05
https://github.com/llvm/llvm-project/commit/3257dc35fe9ed872788e90c948cb4bb593b8fa05
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/test/CodeGen/ARM/fnegs.ll
M llvm/test/CodeGen/ARM/fnmscs.ll
Log Message:
-----------
[ARM] Remove `UnsafeFPMath` uses in code generation part (#160801)
Factor out from #151275
Remove all UnsafeFPMath uses but ABI tags related part.
Commit: 368d59986e769511437781fdd45cd5f787f35980
https://github.com/llvm/llvm-project/commit/368d59986e769511437781fdd45cd5f787f35980
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M lldb/test/Shell/ObjectFile/ELF/elf-no-shdrs-pt-notes.yaml
Log Message:
-----------
[lldb][test] Fix elf-no-shdrs-pt-notes.yaml on Windows (#160827)
Windows paths have different slashes, but I don't think we care about
the exact paths there anyway so I've just checked for the final
filename.
Fixes #160652
Commit: 2cacf7117ba0fb7c134413a1a51302f8d6649052
https://github.com/llvm/llvm-project/commit/2cacf7117ba0fb7c134413a1a51302f8d6649052
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
[ARM] Improve comment on the 'J' inline asm modifier. (#160712)
An inline asm constraint "Jr", in AArch32, means that if the input value
is a compile-time constant in the range -4095 to +4095, then it can be
inserted into the assembly language as an immediate operand, and
otherwise it will be placed in a register.
The comment in the Arm backend said "It is not clear what this
constraint is intended for". I believe the answer is that that range of
immediate values are the ones you can use in a LDR or STR instruction.
So it's suitable for cases like this:
asm("str %0,[%1,%2]" : : "r"(data), "r"(base), "Jr"(offset) : "memory");
in the same way that the "Ir" constraint is suitable for the immediate
in a data-processing instruction such as ADD or EOR.
Commit: 9de1bc0336540ad643249ec216d9c02f9b3b3786
https://github.com/llvm/llvm-project/commit/9de1bc0336540ad643249ec216d9c02f9b3b3786
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelDAGToDAG.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
M llvm/test/CodeGen/LoongArch/lasx/fdiv-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/lasx/fsqrt-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/lasx/fsqrt.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fdiv.ll
M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
M llvm/test/CodeGen/LoongArch/lsx/fdiv-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/lsx/fsqrt-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/lsx/fsqrt.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fdiv.ll
M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
Log Message:
-----------
[LoongArch] Generate [x]vldi instructions with special constant splats (#159258)
Commit: 8c122e5d3bcbdd82c34a406c6d3029060306521a
https://github.com/llvm/llvm-project/commit/8c122e5d3bcbdd82c34a406c6d3029060306521a
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/cpu_feature.py
Log Message:
-----------
[lldb][test] Make Linux cpuinfo check more robust (#160675)
We were looking for any mention of the feature name in cpuinfo, which
could have hit anything including features with common prefixes like
sme, sme2, smefa64.
Luckily this was not a problem but I'm changing this to find the
features line and split the features into a list. Then we are only
looking for exact matches.
Here's the information for one core as an example:
```
processor : 7
BogoMIPS : 200.00
Features : fp asimd evtstrm crc32 atomics fphp asimdhp cpuid <...>
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd0f
CPU revision : 0
```
(and to avoid any doubt, this is from a CPU simulated in Arm's FVP, it's
not real)
Note that the layout of the label, colon, values is sometimes aligned
but not always. So I trim whitespace a few times to normalise that.
This repeats once for each core so we only need to find one features
line.
Commit: 9b270fcb376ccdef333ae717f37d04d90defd115
https://github.com/llvm/llvm-project/commit/9b270fcb376ccdef333ae717f37d04d90defd115
Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Set default rounding mode round to nearest for llvm.set.rounding (#160823)
- Fix
https://github.com/llvm/llvm-project/pull/156591#issuecomment-3335218842
- As per https://cdrdv2.intel.com/v1/dl/getContent/671200 default
rounding mode is **round to nearest**.
Commit: aa08b1a9963f33ded658d3ee655429e1121b5212
https://github.com/llvm/llvm-project/commit/aa08b1a9963f33ded658d3ee655429e1121b5212
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/test/Analysis/CostModel/RISCV/vp-intrinsics.ll
Log Message:
-----------
[TTI][RISCV] Add cost modelling for intrinsic vp.load.ff (#160470)
Split out from #151300 to isolate TargetTransformInfo cost modelling for
fault-only-first loads from VPlan implementation details. This change
adds costing support for vp.load.ff independently of the VPlan work.
For now, model a vp.load.ff as cost-equivalent to a vp.load.
Commit: 656707086e5f6fccd2eb57f5aaf987c328c0f4f1
https://github.com/llvm/llvm-project/commit/656707086e5f6fccd2eb57f5aaf987c328c0f4f1
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Fix test ifdefs and XFAILs (#160687)
This fixes the ifdefs added in
e9e166e54354330c474457711a8e7a7ca2efd731; we need to include int_lib.h
first before we can expect these defines to be set.
Also remove the XFAILs for aarch64 windows. As this test now became a
no-op on platforms that lack CRT_HAS_128BIT or CRT_HAS_F128 (aarch64
windows lacks the latter), it no longer fails.
Commit: d357e965af90cbcfcd717e9d82502bda68f10d5e
https://github.com/llvm/llvm-project/commit/d357e965af90cbcfcd717e9d82502bda68f10d5e
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/test/CodeGen/X86/rematerialize-sub-super-reg.mir
Log Message:
-----------
[RegisterCoalescer] Mark implicit-defs of super-registers as dead in remat (#159110)
Currently, something like:
```
$eax = MOV32ri -11, implicit-def $rax
%al = COPY $eax
```
Can be rematerialized as:
```
dead $eax = MOV32ri -11, implicit-def $rax
```
Which marks the full $rax as used, not just $al.
With this change, this is rematerialized as:
```
dead $eax = MOV32ri -11, implicit-def dead $rax, implicit-def $al
```
To indicate that only $al is used.
Note: This issue is latent right now, but is exposed when #134408 is
applied, as it results in the register pressure being incorrectly
calculated (unless this patch is applied too).
I think this change is in line with past fixes in this area, notably:
https://github.com/llvm/llvm-project/commit/059cead5ed7aa11ce1eae0bcc751ea0d1e23ea75
https://github.com/llvm/llvm-project/commit/69cd121dd9945429b565b6a5eb8719130de880a7
Commit: 745e1e6ad5d40ff8f1553e62c48554a61611ee76
https://github.com/llvm/llvm-project/commit/745e1e6ad5d40ff8f1553e62c48554a61611ee76
Author: Wenju He <wenju.he at intel.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/lib/CodeGen/MachineBasicBlock.cpp
A llvm/test/CodeGen/NVPTX/machinelicm-no-preheader.mir
Log Message:
-----------
[CodeGen] Ignore requiresStructuredCFG check in canSplitCriticalEdge if successor is loop header (#154063)
This addresses a performance issue for our downstream GPU target that
sets requiresStructuredCFG to true. The issue is that EarlyMachineLICM
pass does not hoist loop invariants because a critical edge is not
split.
The critical edge's destination a loop header. Splitting the critical
edge will not break structured CFG.
Add a nvptx test to demonstrate the issue since the target also
requires structured CFG.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 5d51e006caa6a2ca6c9944200ca69bcb1c38576a
https://github.com/llvm/llvm-project/commit/5d51e006caa6a2ca6c9944200ca69bcb1c38576a
Author: fabrizio-indirli <fabrizio.indirli at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
M mlir/test/Dialect/Linalg/convert-conv2d-to-img2col.mlir
Log Message:
-----------
[mlir][linalg] Propagate filter tensor encoding in im2col (#160099)
In the im2col decomposition, propagate the filter tensor encoding (if
specified) through the tensor.collapse_shape op, so that it can be used
by the consuming linalg.generic matmul op.
Signed-off-by: Fabrizio Indirli <Fabrizio.Indirli at arm.com>
Commit: 78af0561376ff2eb01bd0ed7ef3055e5a9954746
https://github.com/llvm/llvm-project/commit/78af0561376ff2eb01bd0ed7ef3055e5a9954746
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-prune-vf.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
Log Message:
-----------
[VPlan] Run CSE closer to VPlan::execute. (#160572)
Additional CSE opportunities are exposed after converting to concrete
recipes/dissolving regions and materializing various expressions. Run
CSE later, to capitalize on some of the late opportunities.
PR: https://github.com/llvm/llvm-project/pull/160572
Commit: ef5e0c7c83080af7f752dcadbb9972ed3e3a9c39
https://github.com/llvm/llvm-project/commit/ef5e0c7c83080af7f752dcadbb9972ed3e3a9c39
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
Log Message:
-----------
[X86] Add test showing failure to fold freeze(pshufb(x,y)) -> pshufb(freeze(x),freeze(y)) (#160835)
Commit: c10befb9d3b2b50e37048f2aba5dda0f77031ba3
https://github.com/llvm/llvm-project/commit/c10befb9d3b2b50e37048f2aba5dda0f77031ba3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
Log Message:
-----------
[X86] Add test showing failure to fold freeze(vpermps(x,y)) -> vpermps(freeze(x),freeze(y)) (#160837)
Commit: c7312916b7e228460c1c21c1f5959dc3c1973c4c
https://github.com/llvm/llvm-project/commit/c7312916b7e228460c1c21c1f5959dc3c1973c4c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
Log Message:
-----------
[X86] Add test showing failure to fold freeze(permilvar(x,y)) -> permilvar(freeze(x),freeze(y)) (#160836)
Commit: 96675a467ef5811dc1e78b2bec3c90cf0c67ba1c
https://github.com/llvm/llvm-project/commit/96675a467ef5811dc1e78b2bec3c90cf0c67ba1c
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/include/clang/Driver/CommonArgs.h
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Clang.h
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/test/Driver/split-debug.f90
A flang/test/Integration/debug-split-dwarf.f90
Log Message:
-----------
[flang][Driver] Support -gsplit-dwarf. (#160540)
This flags enables the compiler to generate most of the debug
information in a separate file which can be useful for executable size
and link times. Clang already supports this flag.
I have tried to follow the logic of the clang implementation where
possible. Some functions were moved where they could be used by both
clang and flang. The `addOtherOptions` was renamed to `addDebugOptions`
to better reflect its purpose.
Clang also set the `splitDebugFilename` field of the `DICompileUnit` in
the IR when this option is present. That part is currently missing from
this patch and will come in a follow-up PR.
Commit: 0fff27084b5d4daf218c5a16e2290917dfddbf68
https://github.com/llvm/llvm-project/commit/0fff27084b5d4daf218c5a16e2290917dfddbf68
Author: LeeYoungJoon <dog3hk.dev at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/docs/GettingInvolved.rst
M llvm/docs/Reference.rst
M llvm/docs/index.rst
Log Message:
-----------
[QualGroup][docs] Reorganize QualGroup docs under Reference section (#160021)
This patch makes the following updates to the `QualGroup` documentation:
✅ 1. Move to Reference section
Relocated the Qualification Working Group (QualGroup) docs from the main
index into the Reference section for better organization and
consistency.
✅ 2. Add link in GettingInvolved
Inserted a proper link to the QualGroup documentation in the
GettingInvolved sync-ups table, improving discoverability for newcomers.
✅ 3. Align structure with Security Group
Revised the documentation layout to follow the same structure pattern as
the Security Group docs, ensuring consistency across LLVM working group
references.
Commit: f6fc5e83d71e643518c63acb5e43847cd1813895
https://github.com/llvm/llvm-project/commit/f6fc5e83d71e643518c63acb5e43847cd1813895
Author: A. Jiang <de34 at live.cn>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
Log Message:
-----------
[libc++][test] Guard non-guaranteed implicit-lifetime-ness cases with `_LIBCPP_VERSION` (#160627)
And add some guaranteed cases (namely, for `expected`, `optional`, and
`variant`) to `is_implicit_lifetime.pass.cpp`.
It's somehow unfortunate that `pair` and `tuple` are not guaranteed to
propagate triviality of copy/move constructors, and MSVC STL fails to do
so due to ABI compatibility. This affects the implicit-lifetime
property.
Commit: 81aafd91fd27f20677402b6a8c8aacbc4928d6d1
https://github.com/llvm/llvm-project/commit/81aafd91fd27f20677402b6a8c8aacbc4928d6d1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode/isGuaranteedNotToBeUndefOrPoisonForTargetNode - add X86ISD::PSHUFB handling (#160842)
X86ISD::PSHUFB shuffles can't create undef/poison itself, allowing us to fold freeze(pshufb(x,y)) -> pshufb(freeze(x),freeze(y))
Commit: a27baf9c96a484312a1a32df1e552bcce7a610d1
https://github.com/llvm/llvm-project/commit/a27baf9c96a484312a1a32df1e552bcce7a610d1
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/NVPTX/math-intrins.ll
M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
Log Message:
-----------
[SelectionDAG] Improve v2f16 maximumnum expansion (#160723)
On targets where f32 maximumnum is legal, but maximumnum on vectors of
smaller types is not legal (e.g. v2f16), try unrolling the vector first
as part of the expansion.
Only fall back to expanding the full maximumnum computation into
compares + selects if maximumnum on the scalar element type cannot be
supported.
Commit: 347df234e0558a1818a563ff896d8b434f2c1016
https://github.com/llvm/llvm-project/commit/347df234e0558a1818a563ff896d8b434f2c1016
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpFrame.h
Log Message:
-----------
[clang][bytecode] Remove Program include from InterpFrame.h (#160843)
Program itself is unused in that file, so just include the needed
headers.
Commit: 2100c504d9454e920ecbadfe3b81abacf296fd5e
https://github.com/llvm/llvm-project/commit/2100c504d9454e920ecbadfe3b81abacf296fd5e
Author: Ross Burton <ross.burton at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/CMakeLists.txt
Log Message:
-----------
[clang] Support building native tools when cross-compiling standalone clang (#160605)
When cross-compiling the LLVM project as a whole (from llvm/), if it
cannot find presupplied tools it will create a native build environment
to build the tools it needs.
However, when doing a standalone build of clang (that is, from clang/
and linking against an existing libLLVM) this doesn't work. Instead a
_target_ binary is built which predictably then fails.
The conventional workaround for this is to build the native tools in a
separate native compile phase and pass the paths to the cross build, for
example see OpenEmbedded[1] or Nix[2]. But we can do better!
The first problem is that LLVM_USE_HOST_TOOLS is only set in the llvm/
CMakeLists.txt, so setup_host_tool() will never consider building a
native binary. This can be solved by setting LLVM_USE_HOST_TOOLS based
on CMAKE_CROSSCOMPILING in clang/CMakeLists.txt in the standalone case.
Now setup_host_tool() will try to build a native tool, but it needs
build_native_tool() from CrossCompile.cmake, so that also needs to be
included.
Finally, the native binary then fails because there's no provider for
the dependency "CONFIGURE_Clang_NATIVE", so use llvm_create_cross_target
to create the native environment.
These few lines mirror what the lldb CMakeLists.txt does in the
standalone case, so there is prior art for this.
[1]
https://git.openembedded.org/openembedded-core/tree/meta/recipes-devtools/clang/clang_git.bb?id=e18d697e92b55e57124e80234369d46575226386#n212
[2]
https://github.com/NixOS/nixpkgs/blob/3354d448f2a26117a74638957b0131ce3da9c8c4/pkgs/development/compilers/llvm/common/tblgen.nix#L54
Commit: 3073bb5fcfbb62910876f22084a5eb0478d3ff8f
https://github.com/llvm/llvm-project/commit/3073bb5fcfbb62910876f22084a5eb0478d3ff8f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode/isGuaranteedNotToBeUndefOrPoisonForTargetNode - add X86ISD::VPERMV handling (#160845)
X86ISD::VPERMV shuffles can't create undef/poison itself, allowing us to fold freeze(vpermps(x,y)) -> vpermps(freeze(x),freeze(y))
Commit: 02746f80c1fa1d17997849a9bf5a41a91523ca41
https://github.com/llvm/llvm-project/commit/02746f80c1fa1d17997849a9bf5a41a91523ca41
Author: David Green <david.green at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/ARM/2009-10-02-NEONSubregsBug.ll
M llvm/test/CodeGen/ARM/2012-04-10-DAGCombine.ll
M llvm/test/CodeGen/ARM/fnmul.ll
M llvm/test/CodeGen/ARM/fp16-vminmaxnm.ll
R llvm/test/CodeGen/ARM/fp16.ll
M llvm/test/CodeGen/ARM/sincos.ll
M llvm/test/CodeGen/ARM/vminmaxnm.ll
Log Message:
-----------
[ARM] Remove -fno-unsafe-math from a number of tests. NFC
llvm.convert/to.fp16 and from.fp16 are no longer used / deprecated and do not
need to be tested any more.
Commit: e38e0bde41e084a05de6972a5a9fff81435c7f77
https://github.com/llvm/llvm-project/commit/e38e0bde41e084a05de6972a5a9fff81435c7f77
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[mlir] Add splitDebugFilename field in DIComplileUnitAttr. (#160704)
Mostly mechanical changes to add the missing field.
Commit: 0aad055f30d8148057a71a2f5f1cdb2d1bab2eee
https://github.com/llvm/llvm-project/commit/0aad055f30d8148057a71a2f5f1cdb2d1bab2eee
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
Log Message:
-----------
[X86] Add test showing failure to fold freeze(insertps(x,y,i)) -> insertps(freeze(x),freeze(y),i) (#160852)
Commit: 3fa3e09bdc568db733cf85d020e02e6a8fa0c97f
https://github.com/llvm/llvm-project/commit/3fa3e09bdc568db733cf85d020e02e6a8fa0c97f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode/isGuaranteedNotToBeUndefOrPoisonForTargetNode - add X86ISD::VPERMILPV handling (#160849)
X86ISD::VPERMILPV shuffles can't create undef/poison itself, allowing us to fold freeze(vpermilps(x,y)) -> vpermilps(freeze(x),freeze(y))
Commit: 42dd9260dbd615c075844c6c96ec6665be6c1aed
https://github.com/llvm/llvm-project/commit/42dd9260dbd615c075844c6c96ec6665be6c1aed
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M libcxx/utils/visualize-historical
Log Message:
-----------
[libc++] Switch back to plotting on revlist order for visualize-historical
That provides vastly better plots.
Commit: 83ef38a274b76c8877f15d3758d955772f91cf2d
https://github.com/llvm/llvm-project/commit/83ef38a274b76c8877f15d3758d955772f91cf2d
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A offload/test/offloading/fortran/target-no-loop.f90
M openmp/device/src/Workshare.cpp
Log Message:
-----------
[Flang][OpenMP] Enable no-loop kernels (#155818)
Enable the generation of no-loop kernels for Fortran OpenMP code. target
teams distribute parallel do pragmas can be promoted to no-loop kernels
if the user adds the -fopenmp-assume-teams-oversubscription and
-fopenmp-assume-threads-oversubscription flags.
If the OpenMP kernel contains reduction or num_teams clauses, it is not
promoted to no-loop mode.
The global OpenMP device RTL oversubscription flags no longer force
no-loop code generation for Fortran.
Commit: 9be276ec75c087595ebb62fe11b35c1a90371a49
https://github.com/llvm/llvm-project/commit/9be276ec75c087595ebb62fe11b35c1a90371a49
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
Log Message:
-----------
[SCEV] Add tests for computing trip counts with align assumptions.
Commit: eaf36c668c956a90bfb00c47415c4c8550f159c8
https://github.com/llvm/llvm-project/commit/eaf36c668c956a90bfb00c47415c4c8550f159c8
Author: Dan Blackwell <dan_blackwell at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp
M compiler-rt/lib/asan/asan_interceptors_memintrinsics.h
Log Message:
-----------
[ASan] Update meminstrinsics to use library memmove rather than internal (#160740)
Currently `memcpy` and `memset` intrinsics map through to the library
implementations if ASan has been inited, whereas `memmove` always calls
`internal_memmove`.
This patch changes `memmove` to use the library implementation if ASan
has been inited.
Commit: bb38b48910967041045997a0c1293ee2ba834196
https://github.com/llvm/llvm-project/commit/bb38b48910967041045997a0c1293ee2ba834196
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M flang-rt/cmake/modules/AddFlangRT.cmake
M flang-rt/unittests/CMakeLists.txt
Log Message:
-----------
[flang-rt] Set _POSIX_C_SOURCE on Darwin (#160130)
Clang on Darwin enables non-POSIX extensions by default.
This causes some macros to leak, such as HUGE from <math.h>, which
causes some conflicts with Flang symbols (but not with Flang-RT, for
now).
It also causes some Flang-RT extensions to be disabled, such as FDATE,
that checks for _POSIX_C_SOURCE. Setting _POSIX_C_SOURCE avoids these
issues. This is already being done in Flang, but it was not ported to
Flang-RT.
This also fixes check-flang-rt on Darwin, as NoArgv.FdateNotSupported
is broken since the flang runtime was moved to flang-rt.
Fixes #82036
Commit: e2d5efd59ff2d448d371f0f72630934e42a8c12c
https://github.com/llvm/llvm-project/commit/e2d5efd59ff2d448d371f0f72630934e42a8c12c
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M libc/src/__support/CPP/simd.h
M libc/src/string/memory_utils/generic/inline_strlen.h
M libc/test/src/__support/CPP/simd_test.cpp
Log Message:
-----------
[libc] Update the memory helper functions for simd types (#160174)
Summary:
This unifies the interface to just be a bunch of `load` and `store`
functions that optionally accept a mask / indices for gathers and
scatters with masks.
I had to rename this from `load` and `store` because it conflicts with
the other version in `op_generic`. I might just work around that with a
trait instead.
Commit: acb826e64e773f65ae58eaa98bc8bbb7d07af8d9
https://github.com/llvm/llvm-project/commit/acb826e64e773f65ae58eaa98bc8bbb7d07af8d9
Author: Alexandra Sidorova <asidorov at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M mlir/docs/DefiningDialects/Operations.md
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/tools/mlir-tblgen/EnumsGen.cpp
Log Message:
-----------
[MLIR][TBLGen] Added compound assignment operator for any BitEnum (#160840)
## Details:
- Added missing compound assignment operators `|=`, `&=`, `^=` to
`mlir-tblgen`
- Replaced the arithmetic operators with added assignment operators for
`BitEnum` in the transformations
- Updated related documentation
## Tickets:
- Closes https://github.com/llvm/llvm-project/issues/158098
Commit: 3e746bd8fb6aece3c6d56dae4a9a7f0a7ec61859
https://github.com/llvm/llvm-project/commit/3e746bd8fb6aece3c6d56dae4a9a7f0a7ec61859
Author: Francisco Geiman Thiesen <franciscogthiesen at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M mlir/lib/Transforms/RemoveDeadValues.cpp
A mlir/test/Transforms/remove-dead-values-call-segments.mlir
M mlir/test/lib/Dialect/Test/TestDialect.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
Allowing RDV to call `getArgOperandsMutable()` (#160415)
## Problem
`RemoveDeadValues` can legally drop dead function arguments on private
`func.func` callees. But call-sites to such functions aren't fixed if
the call operation keeps its call arguments in a **segmented operand
group** (i.ie, uses `AttrSizedOperandSegments`), unless the call op
implements `getArgOperandsMutable` and the RDV pass actually uses it.
## Fix
When RDV decides to drop callee function args, it should, for each
call-site that implements `CallOpInterface`, **shrink the call's
argument segment** via `getArgOperandsMutable()` using the same dead-arg
indices. This keeps both the flat operand list and the
`operand_segment_sizes` attribute in sync (that's what
`MutableOperandRange` does when bound to the segment).
## Note
This change is a no-op for:
* call ops without segment operands (they still get their flat operands
erased via the generic path)
* call ops whose calle args weren't dropped (public, external,
non-`func-func`, unresolved symbol, etc)
* `llvm.call`/`llvm.invoke` (RDV doesn't drop `llvm.func` args
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 69194be7484adc707a16e09fdcfb3cdbc22d2074
https://github.com/llvm/llvm-project/commit/69194be7484adc707a16e09fdcfb3cdbc22d2074
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
A clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
Log Message:
-----------
[NFC][OpenACC][CIR] Extract 'base' class for Recipe generation (#160603)
It was brought up on a previous review that the CIRGenOpenACCRecipe.h
file was getting too large. I noticed that the 'dependent on template
argument' parts were actually quite small, so I extract a base class in
this patch that allows me to implement it in the .cpp file, plus
minimize the amount of code that needs instantiating.
Commit: 7ab7bc7274dcb2c429bf85cf3488c0627b4f04f7
https://github.com/llvm/llvm-project/commit/7ab7bc7274dcb2c429bf85cf3488c0627b4f04f7
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/test/Transforms/remove-dead-values.mlir
Log Message:
-----------
[MLIR] Fix LivenessAnalysis/RemoveDeadValues handling of dead function arguments (#160755)
In #153973 I added the correctly handling of block arguments,
unfortunately this was gated on operation that also have results. This
wasn't intentional and this excluded operations like function from being
correctly processed.
Commit: 84df4123e645ad93839e5b5b48c9f94bdd27a6e1
https://github.com/llvm/llvm-project/commit/84df4123e645ad93839e5b5b48c9f94bdd27a6e1
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/TargetRegisterInfo.cpp
Log Message:
-----------
[CodeGen] Adjust global-split remat heuristic to match LICM (#160709)
This heuristic was originally added in 40c4aa with the stated purpose of
avoiding global split on live long ranges created by MachineLICM
hoisting trivially rematerializable instructions. In the meantime,
various backends have introduced non-trivial rematerialization cases,
MachineLICM gained an explicitly triviality check, and we've reworked
our APIs to match naming wise. Let's move this heuristic back to truely
trivial remat only.
This is a functional change, though somewhat hard to hit. This change
will cause non-trivially rematerializable instructions to be globally
split more often. This is likely a good thing since non-trivial remat
may not be legal at all possible points in the live interval, but may
cost slightly more compile time.
I don't have a motivating example; I found it when reviewing the callers
of isRemMaterializable(MI).
Commit: 78da5926471194407e959afce3e42d4e12f3ef06
https://github.com/llvm/llvm-project/commit/78da5926471194407e959afce3e42d4e12f3ef06
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/InlineSpiller.cpp
Log Message:
-----------
[RegAlloc] Add additional tracing in InlineSpiller::rematerializeFor (#160761)
We didn't have trace logging for two cases in this routine which makes
it sometimes hard to tell what is going on. In addition to debug trace
statements, add comments to explain the logic behind the early exits
which don't mark the virtual register live. Suggestions on how to word
these more precisely very welcome; I'm not clear I understand all the
intrinicies of this code myself.
Commit: bba91727789bed302758dac282107a44c7b33504
https://github.com/llvm/llvm-project/commit/bba91727789bed302758dac282107a44c7b33504
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/LiveRangeEdit.cpp
Log Message:
-----------
[RegAlloc] Strengthen asserts in LiveRangeEdit::scanRemattable [nfc] (#160765)
We should always be able to find the VNInfo in the original live
interval which corresponds to the subset we're trying to spill, and the
only cases where we have a VNInfo without a definition instruction are
if the vni is unused, or corresponds to a phi. Adjust the code structure
to explicitly check for PHIDef, and assert the stronger conditions.
Commit: d404c3781be0214ea37a0f93b1bcb9176f3e420f
https://github.com/llvm/llvm-project/commit/d404c3781be0214ea37a0f93b1bcb9176f3e420f
Author: Shaoce SUN <sunshaoce at outlook.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/lib/AST/ASTContext.cpp
Log Message:
-----------
[Clang][RVV][SVE] Cache getScalableVectorType lookups (#160108)
Currently, RVV/SVE intrinsics are cached, but the corresponding type
construction is not. As a result, `ASTContext::getScalableVectorType`
can become a performance hotspot, since every query must run through a
long sequence of type checks and macro expansions.
Commit: 0b8c7758e7369d6c87276bc4e37acede766c116d
https://github.com/llvm/llvm-project/commit/0b8c7758e7369d6c87276bc4e37acede766c116d
Author: Ryan Cowan <ryan.cowan at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/ldexp.ll
Log Message:
-----------
[AArch64][GlobalISel] Add support for ldexp (#160517)
Commit: def68dccf71dbcbd2c846138dc9402dcde5a8397
https://github.com/llvm/llvm-project/commit/def68dccf71dbcbd2c846138dc9402dcde5a8397
Author: Gleb Popov <6yearold at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
A llvm/test/tools/llvm-tli-checker/ifuncs.yaml
M llvm/tools/llvm-tli-checker/llvm-tli-checker.cpp
Log Message:
-----------
llvm-tli-checker: Take ifunc symbols into account (#158596)
FreeBSD libc has a lot of symbols that are ifuncs, which makes TLI
checker believe they are not available. This change makes the tool
consider symbols with the STT_GNU_IFUNC type.
Commit: 550d425a719cb8296dd8df4484a1b6a2c6b5b140
https://github.com/llvm/llvm-project/commit/550d425a719cb8296dd8df4484a1b6a2c6b5b140
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/LiveInterval.h
M llvm/lib/CodeGen/LiveInterval.cpp
Log Message:
-----------
[RegAlloc] Add printer and dump for VNInfo [nfc] (#160758)
Uses the existing format of the LiveRange printer, and just factors it
out so that you can do vni->dump() when debugging, or log a vni in a
debug print statement.
Commit: 9412769c1e03a928ba83ee24da084e26ca713dbf
https://github.com/llvm/llvm-project/commit/9412769c1e03a928ba83ee24da084e26ca713dbf
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/LiveRangeEdit.cpp
Log Message:
-----------
Revert "[RegAlloc] Strengthen asserts in LiveRangeEdit::scanRemattable [nfc]" (#160897)
Reverts llvm/llvm-project#160765. Failures on buildbot indicate second
assertion does not in fact hold.
Commit: 23473247c2aad142b8259ed70e569e932357c962
https://github.com/llvm/llvm-project/commit/23473247c2aad142b8259ed70e569e932357c962
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
Log Message:
-----------
[clang][bytecode][NFC] Use switches for pointer type distinction (#160879)
In the important places. They are all fully covered switch statements so
we know where to add code when adding a new pointer type.
Commit: 129394e3f2cfb7fbac7b71a968a38328c82e9c8d
https://github.com/llvm/llvm-project/commit/129394e3f2cfb7fbac7b71a968a38328c82e9c8d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/test/CodeGen/X86/atomic-bit-test.ll
Log Message:
-----------
Greedy: Make trySplitAroundHintReg try to match hints with subreg copies (#160294)
This is essentially the same patch as
116ca9522e89f1e4e02676b5bbe505e80c4d4933;
when trying to match a physreg hint, try to find a compatible physreg if
there is
a subregister copy. This has the slight difference of using getSubReg on
the hint
instead of getMatchingSuperReg (the other use should also use getSubReg
instead,
it's faster).
At the moment this turns out to have very little effect. The adjacent
code needs
better handling of subregisters, so continue adding this piecemeal. The
X86 test
shows a net reduction in real instructions, plus a few new kills.
Commit: 0e3c3165ea33043b8fa0457e535f50ca59312278
https://github.com/llvm/llvm-project/commit/0e3c3165ea33043b8fa0457e535f50ca59312278
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/include/clang/Frontend/Utils.h
M clang/lib/Frontend/CompilerInstance.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ModuleDependencyCollector.h
M llvm/include/llvm/Support/FileCollector.h
M llvm/lib/Support/FileCollector.cpp
M llvm/tools/dsymutil/Reproducer.cpp
M llvm/unittests/Support/FileCollectorTest.cpp
Log Message:
-----------
[llvm][clang] Use the VFS in `FileCollector` (#160788)
This PR changes `llvm::FileCollector` to use the `llvm::vfs::FileSystem`
API for making file paths absolute instead of using
`llvm::sys::fs::make_absolute()` directly. This matches the behavior of
the compiler on most other input files.
Commit: 88324f1cabc89c841df6928bd1c79b1604194b22
https://github.com/llvm/llvm-project/commit/88324f1cabc89c841df6928bd1c79b1604194b22
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Simplify align_up/down implementation (#160880)
Fix a double assignment to a local variable and use the new
popToAPSInt() overload.
Commit: d636dc835826e063d9d1023ff8f56299e78c4d79
https://github.com/llvm/llvm-project/commit/d636dc835826e063d9d1023ff8f56299e78c4d79
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M libcxx/utils/compare-benchmarks
Log Message:
-----------
[libc++] Support comparison of more than two data sets in compare-benchmarks
Commit: 446b9dcfeb02f680277a6b84a7eee11fcf5fbbbc
https://github.com/llvm/llvm-project/commit/446b9dcfeb02f680277a6b84a7eee11fcf5fbbbc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
Log Message:
-----------
PeepholeOpt: Use initializer list (#160898)
Commit: e8e563be1fe54a22b69cbccedcd755b39eab37d4
https://github.com/llvm/llvm-project/commit/e8e563be1fe54a22b69cbccedcd755b39eab37d4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Reduce code duplication in SmallDenseMap (NFC) (#160813)
This patch reduces code duplication by having allocateBuckets take a
larger role. Specifically, allocateBuckets now checks to see if we
need to allocate heap memory and initializes Small appropriately.
With this patch, allocateBuckets mirrors deallocateBuckets cleanly.
Both methods handle the Small mode without asserting and are
responsible for constructing and destructing LargeRep.
Commit: 6598e313739adf20520c7b904c0cd44d136d1b69
https://github.com/llvm/llvm-project/commit/6598e313739adf20520c7b904c0cd44d136d1b69
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
Log Message:
-----------
[ADT] Refactor SmallPtrSetIterator (NFC) (#160814)
SmallPtrSetIterator and its base class SmallPtrSetIteratorImpl
collectively have the following responsibilities:
- type-safe user-facing iterator interface
- type-erased iterator increment/dereference core
- DebugEpochBase via inheritance
This patch refactors the two classes so that SmallPtrSetIteratorImpl
implements everything except the type-safe user-facing interface.
Benefits:
- DebugEpochBase::HandleBase is now part of the type-erased class.
- AdvanceIfNotValid is now private in SmallPtrSetIteratorImpl.
- SmallPtrSetIterator is a very thin wrapper around
SmallPtrSetIteratorImpl and should generate very little code on its
own.
Commit: 88ef27463e56de7b80df5679c90bf32b81b4e104
https://github.com/llvm/llvm-project/commit/88ef27463e56de7b80df5679c90bf32b81b4e104
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/StringTable.h
Log Message:
-----------
[ADT] Apply Rule of Five to StringTable::Iterator (#160815)
StringTable::Iterator has a user-defined copy assignment operator, a
defaulted copy constructor, and a defaulted move constructor.
This patch makes the copy assignment operator defaulted and adds a
defaulted move assignment operator to adhere to the Rule of Five while
making the operators constexpr.
Commit: 8f9385c6c9f17f81be08eac9d8f56de612ad184f
https://github.com/llvm/llvm-project/commit/8f9385c6c9f17f81be08eac9d8f56de612ad184f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/ProgramStack.h
Log Message:
-----------
[Support] Consolidate runOnNewStack (NFC) (#160816)
This patch consolidates two implementations of runOnNewStack with
"if constexpr".
Commit: 6d1c19bb1926fae44619a3531b2e0d0b1259cd25
https://github.com/llvm/llvm-project/commit/6d1c19bb1926fae44619a3531b2e0d0b1259cd25
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/docs/BugLifeCycle.rst
Log Message:
-----------
[llvm] Proofread BugLifeCycle.rst (#160817)
Commit: f026cb0909b380f87b748971576e0e30396c3342
https://github.com/llvm/llvm-project/commit/f026cb0909b380f87b748971576e0e30396c3342
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M bolt/lib/Target/AArch64/CMakeLists.txt
Log Message:
-----------
[BOLT][AArch64] Fix BUILD_SHARED_LIBS after #158738 (#160854)
Link BOLTUtils against the AArch64 target to support the new option
that enables instrumentation without LSE (see #158738)
This fixes shared library builds, eg:
https://lab.llvm.org/staging/#/builders/220/builds/1537
Note: the link points to a collapsing builder.
Commit: f8b79e68cf86016b2849dacf8eb16846557db231
https://github.com/llvm/llvm-project/commit/f8b79e68cf86016b2849dacf8eb16846557db231
Author: David Green <david.green at arm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/Thumb2/mve-vmulh.ll
Log Message:
-----------
[ARM] Add extra mulh tests with known-bits. NFC
Commit: fc71b1ce242a1ae16c293422d14628e724fbc412
https://github.com/llvm/llvm-project/commit/fc71b1ce242a1ae16c293422d14628e724fbc412
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Support/DXILABI.cpp
Log Message:
-----------
[NFC][LLVM] Fix line endings for DXILABI.cpp (#160791)
Fix line ending to Unix style by running dos2unix on this file.
Commit: 8eb0ab708e03739ae840542ce95e8fa9ba3c623a
https://github.com/llvm/llvm-project/commit/8eb0ab708e03739ae840542ce95e8fa9ba3c623a
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/SROA.h
M llvm/lib/Support/rpmalloc/rpmalloc.h
M llvm/lib/Support/rpmalloc/rpnew.h
Log Message:
-----------
[NFC][LLVM] Use Unix line endings for a few source files (#160794)
Commit: 2a72522c52bb1f58609b6f53e8304542cfd3eb34
https://github.com/llvm/llvm-project/commit/2a72522c52bb1f58609b6f53e8304542cfd3eb34
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/SMLoc.h
M llvm/include/llvm/TableGen/Record.h
M llvm/lib/MC/MCSFrame.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/utils/FileCheck/FileCheck.cpp
Log Message:
-----------
[NFC][LLVM] Pass/return SMLoc by value instead of const reference (#160797)
SMLoc itself encapsulates just a pointer, so there is no need to pass or
return it by reference.
Commit: d2239fbf432ecf3df64966a421340aaa6b518d2c
https://github.com/llvm/llvm-project/commit/d2239fbf432ecf3df64966a421340aaa6b518d2c
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGAtomic.cpp
M clang/test/CodeGen/atomic-test-and-set.c
M clang/test/DebugInfo/KeyInstructions/atomic.c
Log Message:
-----------
[clang][CodeGen] Fix sub-optimal clang CodeGen for __atomic_test_and_set (#160098)
Clang CodeGen for `__atomic_test_and_set` would emit a `store`
instruction that stores an `i1` value:
```cpp
bool f(void *ptr) {
return __atomic_test_and_set(ptr, __ATOMIC_RELAXED);
}
```
```llvm
%1 = atomicrmw xchg ptr %0, i8 1 monotonic, align 1
%tobool = icmp ne i8 %1, 0
store i1 %tobool, ptr %atomic-temp, align 1
```
which could lead to suboptimal binary code, for example on x86_64:
```asm
f:
mov al, 1
xchg byte ptr [rdi], al
test al, al
setne al
setne byte ptr [rsp - 1]
ret
```
The last `setne` instruction is obviously redundant. This patch fixes
this issue by first zero-extending `%tobool` to an `i8` before the
store. This effectively eliminates the last `setne` instruction in the
binary code sequence. The `test` and `setne` on `al` is kept still,
though.
-----
I'm quite conservative about the codegen in this patch. Vanilla gcc
actually emits simpler code for `__atomic_test_and_set`:
```cpp
bool f(void *ptr) {
return __atomic_test_and_set(ptr, __ATOMIC_RELAXED);
}
```
```asm
f:
mov eax, 1
xchg al, BYTE PTR [rdi]
ret
```
It seems like gcc assumes `ptr` would always point to a valid `bool`
value as required by the ABI. I'm not sure if we should also make this
assumption.
Related to #121943 .
Commit: c06f35422d6b049ef6a6b1d7de07597845b841e6
https://github.com/llvm/llvm-project/commit/c06f35422d6b049ef6a6b1d7de07597845b841e6
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Frontend/HLSL/RootSignatureMetadata.h
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-appending-limits.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-appending-limits-multiples.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-appending-overflow.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-offset-overflow.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-register-overflow.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-sampler-mix.ll
Log Message:
-----------
[DirectX] Adding missing descriptor table validations (#153276)
This patch adds 2 small validation to DirectX backend. First, it checks
if registers in descriptor tables are not overflowing, meaning they
don't try to bind registers over the maximum allowed value, this is
checked both on the offset and on the number of descriptors inside the
range; second, it checks if samplers are being mixed with other resource
types.
Closes: #153057, #153058
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Co-authored-by: Joao Saffran <{ID}+{username}@users.noreply.github.com>
Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Commit: 7d2f6fd177fcf79564e68c9999a38b5af9982cbb
https://github.com/llvm/llvm-project/commit/7d2f6fd177fcf79564e68c9999a38b5af9982cbb
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
M llvm/include/llvm/Frontend/HLSL/RootSignatureValidations.h
M llvm/include/llvm/MC/DXContainerRootSignature.h
M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
M llvm/lib/BinaryFormat/DXContainer.cpp
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
M llvm/lib/MC/DXContainerRootSignature.cpp
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Invalid-Version.ll
M llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
Log Message:
-----------
[DirectX] Updating DXContainer Yaml to represent Root Signature 1.2 (#159659)
This PR updates the YAML representation of DXContainer to support Root
Signature 1.2, this also requires updating the write logic to support
testing.
Commit: 3aaa58fd903b26831f986140acbfdac4e07d4f12
https://github.com/llvm/llvm-project/commit/3aaa58fd903b26831f986140acbfdac4e07d4f12
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGen/complex.c
Log Message:
-----------
[Clang] Fix Codegen UO real/imag crash on scalar with type promotion (#160609)
Fixing codegen crash when compiling real/imag unary operators on scalar
with type promotion
Ref: #160583
Commit: d6e20c42c1f916fa925f0b1c2c37f3098ada1686
https://github.com/llvm/llvm-project/commit/d6e20c42c1f916fa925f0b1c2c37f3098ada1686
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/IO.cpp
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
M flang/test/Lower/OpenMP/sections-predetermined-private.f90
M flang/test/Lower/OpenMP/shared-loop.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/do_loop.f90
M flang/test/Lower/do_loop_unstructured.f90
M flang/test/Lower/infinite_loop.f90
M flang/test/Lower/io-implied-do-fixes.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops2.f90
M flang/test/Lower/mixed_loops.f90
M flang/test/Lower/nsw.f90
M flang/test/Transforms/OpenMP/simd-only.mlir
Log Message:
-----------
[flang] Clean-up for fir.do_loop generation in lowering. (#160630)
This patch changes two things:
1. We do not need to use the loop counter's last value
for regular do-loops in Lowering.
2. The loop counter's increment is implied by fir.do_loop
operation, so there is no need to increment it explicitly.
The last point has been especially confusing to me, because it was
unclear why we have an explicit increment if it is implied.
It looks like CFGConversion somehow still makes the final code
correct, i.e. the counter is not incremented twice.
Anyway, the new lowering should look more concise.
Commit: e7dfa2c456ba68b41c9d1199dc87b1f756342af9
https://github.com/llvm/llvm-project/commit/e7dfa2c456ba68b41c9d1199dc87b1f756342af9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll
Log Message:
-----------
[X86] shuffle-strided-with-offset-512.ll - add missing prefixes (#160921)
Commit: 12b74111b24d8ed511a382a913cda706128c8336
https://github.com/llvm/llvm-project/commit/12b74111b24d8ed511a382a913cda706128c8336
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
M llvm/lib/Target/PowerPC/PPCInstrAltivec.td
M llvm/lib/Target/PowerPC/PPCInstrHTM.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
M llvm/lib/Target/PowerPC/PPCInstrP10.td
M llvm/lib/Target/PowerPC/PPCInstrVSX.td
Log Message:
-----------
[NFC][PowerPC] Consolidate predicate definitions into PPC.td (#160579)
Consolidate predicate definitions into top level entry point for PowerPC
target `PPC.td` and
remove duplicate definitions for 32/64 bit sub-target checks.
Commit: 65d730b4a5aaea91493305dd32e27bc8e033a0ac
https://github.com/llvm/llvm-project/commit/65d730b4a5aaea91493305dd32e27bc8e033a0ac
Author: Maksim Sabianin <maksim.sabianin at intel.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/test/Driver/linker-wrapper-image.c
M clang/test/Driver/linker-wrapper.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M llvm/include/llvm/Frontend/Offloading/OffloadWrapper.h
M llvm/include/llvm/Frontend/Offloading/Utility.h
M llvm/include/llvm/Object/OffloadBinary.h
M llvm/lib/Frontend/Offloading/OffloadWrapper.cpp
M llvm/lib/Frontend/Offloading/Utility.cpp
M llvm/tools/llvm-offload-wrapper/llvm-offload-wrapper.cpp
Log Message:
-----------
[SYCL] Add offload wrapping for SYCL kind (#147508)
This patch adds an Offload Wrapper for the SYCL kind. This is an
essential step for SYCL offloading and the compilation flow. The usage
of offload wrapping is added to the clang-linker-wrapper tool.
Modifications:
Implemented `bundleSYCL()` function to handle SYCL image bundling.
Implemented `wrapSYCLBinaries()` function that is invoked from
clang-linker-wrapper.
SYCL Offload Wrapping uses specific data structures such as
`__sycl.tgt_device_image` and `__sycl.tgt_bin_desc`. Each SYCL image
maintains its own symbol table (unlike shared global tables in other
targets). Therefore, symbols are encoded explicitly during the offload
wrapping. Also, images refer to their own Offloading Entries arrays
unlike other targets.
The proposed `__sycl.tgt_device_image` uses Version 3 to differentiate
from images generated by Intel DPC++. The structure proposed in this
patch doesn't have fields deprecated in DPC++.
Commit: 4ff986af637f76117b5e70190f144fe7ce10533e
https://github.com/llvm/llvm-project/commit/4ff986af637f76117b5e70190f144fe7ce10533e
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Object/DXContainer.h
M llvm/lib/Object/DXContainer.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
A llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers1.3.yaml
M llvm/unittests/Object/DXContainerTest.cpp
Log Message:
-----------
[DirectX] Updating DXContainer logic to read version 1.2 of static samplers (#160184)
This PR is updating `Object/DXContainer.h` so that we can read data from
root signature version 1.2, which adds flags into static samplers.
Commit: 4bdf545c4d8771c2e69ebcf8ef809b6bc4f3de19
https://github.com/llvm/llvm-project/commit/4bdf545c4d8771c2e69ebcf8ef809b6bc4f3de19
Author: Aaron Puchert <aaron.puchert at sap.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/throw-keyword-missing.cpp
Log Message:
-----------
Add note for base class to bugprone-throw-keyword-missing (#160751)
It might not always be clear which base the check found that has
"exception" in its name. So we add a note to point to that class.
Ideally we'd point to the `CXXBaseSpecifier`, but it seems we can't bind
to that.
Commit: 0e35f56d40d3b4fe44fd69066ba94f54cb9b844a
https://github.com/llvm/llvm-project/commit/0e35f56d40d3b4fe44fd69066ba94f54cb9b844a
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
A clang/lib/Tooling/DependencyScanning/DependencyScannerImpl.cpp
A clang/lib/Tooling/DependencyScanning/DependencyScannerImpl.h
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
Log Message:
-----------
[clang][Dependency Scanning][NFC] Move `DependencyScanningAction` to its own header and source files (#160795)
This is the first of three PRs to land
https://github.com/llvm/llvm-project/pull/160207 in smaller pieces.
This PR is an NFC. It moves `DependencyScanningAction` to its own source
file, so we can later implement a `CompilerInstanceWithContext` in the
new file.
Part of work for rdar://136303612.
Commit: ff98e516136a2e4c77934c52e6c7cef65a9fadee
https://github.com/llvm/llvm-project/commit/ff98e516136a2e4c77934c52e6c7cef65a9fadee
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Tooling/DependencyScanning/BUILD.gn
Log Message:
-----------
[gn build] Port 0e35f56d40d3
Commit: 37282bcee10dc20d0469d014e566f42377f0c22c
https://github.com/llvm/llvm-project/commit/37282bcee10dc20d0469d014e566f42377f0c22c
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/include/clang/CodeGen/BackendUtil.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[clang] Load `-fembed-offload-object=` through the VFS (#160906)
This PR loads the path from `-fembed-offload-object=<path>` through the
VFS rather than going straight to the real file system. This matches the
behavior of other input files of the compiler. This technically changes
behavior in that `-fembed-offload-object=-` no longer loads the file
from stdin, but I don't think that was the intention of the original
code anyways.
Commit: f7e8350f0bcbe46a046cbedfef1e6e56928ea87b
https://github.com/llvm/llvm-project/commit/f7e8350f0bcbe46a046cbedfef1e6e56928ea87b
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
Revert "[compiler-rt] Disable tests for unavailable builtins (#158664)"
This reverts commit e9e166e54354330c474457711a8e7a7ca2efd731,
and the follow-up fix 656707086e5f6fccd2eb57f5aaf987c328c0f4f1.
These changes unlocked tests to run on architectures where they
didn't run before, showing up as test failures like in
https://lab.llvm.org/buildbot/#/builders/66/builds/19787.
Commit: 9d7628de87823c6e0d536a71dbfaccd3280359dc
https://github.com/llvm/llvm-project/commit/9d7628de87823c6e0d536a71dbfaccd3280359dc
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/IR/Intrinsics.cpp
M llvm/test/TableGen/intrinsic-struct.td
M llvm/test/TableGen/intrinsic-varargs.td
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
Log Message:
-----------
[Intrinsic] Unify IIT_STRUCT{2-9} into ITT_STRUCT to support upto 257 return values
- Currently, Intrinsic can only have up to 9 return values. In case new
intrinsics require more than 9 return values, additional ITT_STRUCTxxx
values need to be added to support > 9 return values. Instead, this
patch unifies them into a single IIT_STRUCT followed by a BYTE
specifying the minimal 2 (encoded as 0) and maximal 257 (encoded as
255) return values.
Commit: e28a5596966d586525e8719e5c58afc7cf48a5d9
https://github.com/llvm/llvm-project/commit/e28a5596966d586525e8719e5c58afc7cf48a5d9
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILPostOptimizationValidation.cpp
A llvm/test/CodeGen/DirectX/rootsignature-validation-deny-no-binding.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-deny-multiple-shader.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-deny-root-descriptor.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-fail-deny-single-shader.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-not-dening-shader.ll
Log Message:
-----------
[DirectX] Validating Root flags are denying shader stage (#160919)
Root Signature Flags, allow flags to block compilation of certain shader
stages. This PR implements a validation and notify the user if they
compile a root signature that is denying such shader stage.
Closes: https://github.com/llvm/llvm-project/issues/153062
Previously approved: https://github.com/llvm/llvm-project/pull/153287
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Co-authored-by: Joao Saffran <{ID}+{username}@users.noreply.github.com>
Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Commit: b427182c606edf787591298d15fe65d3348fe8f0
https://github.com/llvm/llvm-project/commit/b427182c606edf787591298d15fe65d3348fe8f0
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/alignbit-pat.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
M llvm/test/CodeGen/AMDGPU/cgp-bitfield-extract.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
M llvm/test/CodeGen/AMDGPU/function-returns.ll
M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
M llvm/test/CodeGen/AMDGPU/mul_int24.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/shift-and-i64-ubfe.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
A llvm/test/CodeGen/AMDGPU/uniform-alignbit.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
Log Message:
-----------
[AMDGPU] Ensure divergence for v_alignbit (#129159)
Selecting vgpr for the uniform version of this pattern may lead to
unnecessary vgpr and waterfall loops.
Commit: e9185af70a4898d050899aa83aa350e570459128
https://github.com/llvm/llvm-project/commit/e9185af70a4898d050899aa83aa350e570459128
Author: cmtice <cmtice at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/test/fuzzer/fork-sigusr.test
M compiler-rt/test/fuzzer/sigint.test
M compiler-rt/test/fuzzer/sigusr.test
M compiler-rt/test/msan/allocator_mapping.cpp
M compiler-rt/test/nsan/Posix/allocator_mapping.cpp
Log Message:
-----------
[compiler-rt] Fix some tests to work with lit internal shell. (#160728)
This is part of our work to migrate lit tests to use internal shell by
default (performance improvements).
Commit: 24bc1a60978cf6871d3381dcf92211509f658c76
https://github.com/llvm/llvm-project/commit/24bc1a60978cf6871d3381dcf92211509f658c76
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
A llvm/test/tools/llvm-mca/RISCV/SiFive7/vgather-vcompress.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX390/vgather-vcompress.s
Log Message:
-----------
[RISCV] Update SiFive7's scheduling models with their optimizations on permutation instructions (#160763)
In newer SiFIve7 cores like X390, permutation instructions like
vrgather.vv operates on LMUL smaller than a single DLEN could yield a
constant cycle. For slightly larger data that fits in the constraint of
`log2(SEW/8) + log2(LMUL) <= log2(DLEN / 32)`, these instructions can
also yield cycles that are proportional to the quadratic of LMUL, rather
than being proportional to VL.
Co-authored-by: Michael Maitland <michaeltmaitland at gmail.com>
Commit: d48bda5421c5af9baa5bc98ba4e3a453937ff96a
https://github.com/llvm/llvm-project/commit/d48bda5421c5af9baa5bc98ba4e3a453937ff96a
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M flang-rt/lib/cuda/memory.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
Log Message:
-----------
[flang][cuda] Handle zero sized allocation correctly (#160929)
Like on the host allocate 1 byte when zero size is requested.
Commit: 5abb4b288ef45346ee23a31c8de9867554422549
https://github.com/llvm/llvm-project/commit/5abb4b288ef45346ee23a31c8de9867554422549
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
Log Message:
-----------
[LLVM][M68k] Fix build failure caused by #160797 (#160926)
Fix M68k build failures caused by
https://github.com/llvm/llvm-project/pull/160797
Commit: a45f20b5af4b23f55c3256829ec30f8f307c1d90
https://github.com/llvm/llvm-project/commit/a45f20b5af4b23f55c3256829ec30f8f307c1d90
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/float-intrinsics.ll
M llvm/test/CodeGen/RISCV/cmov-branch-opt.ll
M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
M llvm/test/CodeGen/RISCV/float-intrinsics.ll
M llvm/test/CodeGen/RISCV/idiv_large.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfw-web-simplification.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
M llvm/test/CodeGen/RISCV/rvv/vmerge.ll
Log Message:
-----------
[RISCV][test] Add additional check-prefixes to fix conflicts in tests (#160689)
These are all cases where check lines were being silently dropped prior
to #159321 which added proper warnings.
I did `find llvm/test/CodeGen/RISCV -name "*.ll" -exec
./llvm/utils/update_llc_test_checks.py --llc-bin=./remote-llc -u {} \;`
and went through all cases that emitted the new warning.
`idiv_large.ll` is a case that seems to not be generated by
update_llc_test_checks but still has the comment indicating it was
(presumably it was hand-edited after generation).
Commit: 2484f4a03755b514239075f2ed4e0c8128f66c88
https://github.com/llvm/llvm-project/commit/2484f4a03755b514239075f2ed4e0c8128f66c88
Author: Piotr Sobczak <piotr.sobczak at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] Avoid setting hi part in copysign (#160891)
This is a temporary fix for a regression from #154875.
The new pattern sets the hi part of V_BFI result and that confuses
si-fix-sgpr-copies - where the proper fix is likely to be.
During si-fix-sgpr-copies, an incorrect fold happens:
%86:vgpr_32 = V_BFI_B32_e64
%87:sreg_32 = COPY %86.hi16:vgpr_32
%95:vgpr_32 = nofpexcept V_PACK_B32_F16_t16_e64 0, killed %87:sreg_32,
0, %63:vgpr_16, 0, 0
into
%86:vgpr_32 = V_BFI_B32_e64
%95:vgpr_32 = nofpexcept V_PACK_B32_F16_t16_e64 0, %86.lo16:vgpr_32, 0,
%63:vgpr_16, 0, 0
Fixes: Vulkan CTS dEQP-VK.glsl.builtin.precision_fp16_storage32b.*.
Commit: 01d761a7769772242fb583eec8f17f6d26d27b6a
https://github.com/llvm/llvm-project/commit/01d761a7769772242fb583eec8f17f6d26d27b6a
Author: Kevin Sala Penades <salapenades1 at llnl.gov>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/MemoryManager.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/common/src/RPC.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
Log Message:
-----------
[Offload] Use Error for allocating/deallocating in plugins (#160811)
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 814a3a6b618a9b9585b8dbacca556d623198aa14
https://github.com/llvm/llvm-project/commit/814a3a6b618a9b9585b8dbacca556d623198aa14
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
M clang/lib/CodeGen/CGStmtOpenMP.cpp
A clang/test/OpenMP/amdgcn_parallel_num_threads_strict_messages.cpp
M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
R clang/test/OpenMP/distribute_parallel_for_simd_num_threads_strict_codegen.cpp
A clang/test/OpenMP/nvptx_parallel_num_threads_strict_messages.cpp
A clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
R clang/test/OpenMP/teams_distribute_parallel_for_num_threads_strict_codegen.cpp
R clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_strict_codegen.cpp
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[OpenMP][clang] Set num_threads 'strict' to unsupported on GPUs (#160659)
Setting the prescriptiveness of the num_threads clause to 'strict' and
having a corresponding check (with message and severity clauses) does
not align well with how OpenMP should be handled for GPUs.
The num_threads expression may be an arbitrary integer expression which
is evaluated on the target, in correspondance to the OpenMP spec. This
prevents the check from being done before launching the kernel,
especially considering that the num_threads clause is associated with
the parallel directive and that there may be multiple parallel
directives with different num_threads clauses in a single target region.
Acting on the result of the 'strict' check on the GPU would require
doing I/O on the GPU, which can introduce performance regressions.
Delaying any actions resulting from the 'strict' check and doing them on
the host after executing the target region involves additional data
copies and is not really semantically correct.
For now, the 'strict' modifier for the num_threads clause and its
associated message and severity clause are set to be unsupported on
GPUs. Targets other than GPUs still support the aforementioned features
in the context of an OpenMP target region.
Commit: d2c189bc739c86bea28e9d603f8973f68869a772
https://github.com/llvm/llvm-project/commit/d2c189bc739c86bea28e9d603f8973f68869a772
Author: Hank Chang <hank.chang at sifive.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/InterestingMemoryOperand.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/test/Instrumentation/AddressSanitizer/RISCV/asan-rvv-intrinsics.ll
Log Message:
-----------
[ASan][RISCV] Teach AddressSanitizer to support indexed load/store. (#160443)
This patch is based on https://github.com/llvm/llvm-project/pull/159713
This patch extends AddressSanitizer to support indexed/segment
instructions in RVV. It enables proper instrumentation for these memory
operations.
A new member, `MaybeOffset`, is added to `InterestingMemoryOperand` to
describe the offset between the base pointer and the actual memory
reference address.
Co-authored-by: Yeting Kuo <yeting.kuo at sifive.com>
Commit: c580ad488ebbc8a195c740235e6ca5f52035a041
https://github.com/llvm/llvm-project/commit/c580ad488ebbc8a195c740235e6ca5f52035a041
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
Log Message:
-----------
[clang] Use the VFS to create the OpenMP region entry ID (#160918)
This PR uses the VFS to create the OpenMP target entry instead of going
straight to the real file system. This matches the behavior of other
input files of the compiler.
Commit: 5cb1641958e04a88eea0964c4dff16620c5f1f37
https://github.com/llvm/llvm-project/commit/5cb1641958e04a88eea0964c4dff16620c5f1f37
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel] Fix build after 0e35f56d40d3b4fe44fd69066ba94f54cb9b844a (#160933)
Commit: 99a29f640809f32d1271ed5cac9764b839daeed1
https://github.com/llvm/llvm-project/commit/99a29f640809f32d1271ed5cac9764b839daeed1
Author: Petr Hosek <phosek at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
Log Message:
-----------
Revert "[clang][DebugInfo][NFC] Simplify CollectRecordLambdaFields" (#160932)
Reverts llvm/llvm-project#160690
Commit: 26e370bdbe610dad5c8ef6483386b51392a67ae4
https://github.com/llvm/llvm-project/commit/26e370bdbe610dad5c8ef6483386b51392a67ae4
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/utils/git/code-format-helper.py
Log Message:
-----------
Fix the formatting script: do not try to update a GitHub PR without checking for should_update_gh (#159276)
Commit: 95386cc8961de840fc712619fa140aa594273dae
https://github.com/llvm/llvm-project/commit/95386cc8961de840fc712619fa140aa594273dae
Author: JJ Marr <jjmarr12 at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/Contributing.rst
Log Message:
-----------
[clang-tidy][docs] Avoid recommending links to non-free coding guidelines (#160745)
Based on [this
thread](https://discourse.llvm.org/t/will-clang-frontend-plan-accept-misra-check-tools/84754),
it might not be OK to link to MISRA/other coding guidelines that have
tight restrictions on redistribution.
on-behalf-of: @amd <JJ.Marr at amd.com>
Commit: cccc9d32219dc788e1948f12e500002e03f6a668
https://github.com/llvm/llvm-project/commit/cccc9d32219dc788e1948f12e500002e03f6a668
Author: itrofimow <i.trofimow at yandex.ru>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M bolt/lib/Core/GDBIndex.cpp
Log Message:
-----------
[BOLT] Don't emit invalid (gdb-breaking) address ranges in gdb-index (#151923)
Empty address map ranges in gdb-index break gdb, so don't emit them
Commit: 727aad15f0a897826fc9102b5a090b977c554097
https://github.com/llvm/llvm-project/commit/727aad15f0a897826fc9102b5a090b977c554097
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Parser/OpenMP/declare-target-indirect-tree.f90
M flang/test/Parser/OpenMP/declare-target-to-clause.f90
M flang/test/Parser/OpenMP/declare_target-device_type.f90
M flang/test/Parser/OpenMP/enter-automap-modifier.f90
M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
M flang/test/Semantics/OpenMP/blank-common-block.f90
M flang/test/Semantics/OpenMP/declare-target-function-name-with-symbols.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in DECLARE_TARGET (#160573)
Commit: 95341905c793f0d8fbea3fe8be73032d573e8075
https://github.com/llvm/llvm-project/commit/95341905c793f0d8fbea3fe8be73032d573e8075
Author: cmtice <cmtice at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/test/fuzzer/fork-sigusr.test
M compiler-rt/test/fuzzer/sigint.test
M compiler-rt/test/fuzzer/sigusr.test
M compiler-rt/test/msan/allocator_mapping.cpp
M compiler-rt/test/nsan/Posix/allocator_mapping.cpp
Log Message:
-----------
Revert "[compiler-rt] Fix some tests to work with lit internal shell." (#160949)
Reverts llvm/llvm-project#160728
That appeared to be causing a buildbot failure; reverting this change
while I investigate.
https://lab.llvm.org/buildbot/#/builders/174/builds/25130
Commit: 0e93ab87c34929ecb0190fcce8dedfe5038396ea
https://github.com/llvm/llvm-project/commit/0e93ab87c34929ecb0190fcce8dedfe5038396ea
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
Log Message:
-----------
[clang-tidy] Improve `bugprone-exception-escape`'s handling of lambdas (#160592)
Fixes #132605.
Commit: e05bad472d5fc572183dd6498a9b8a1b568ce9be
https://github.com/llvm/llvm-project/commit/e05bad472d5fc572183dd6498a9b8a1b568ce9be
Author: Princeton Ferro <pferro at nvidia.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.td
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
A llvm/test/CodeGen/NVPTX/f32x2-convert-i32x2.ll
M llvm/test/CodeGen/NVPTX/f32x2-instructions.ll
M llvm/test/CodeGen/NVPTX/ldg-invariant-256.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing-invariant.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors-256.ll
M llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
Log Message:
-----------
[NVPTX] legalize v2i32 to improve compatibility with v2f32 (#153478)
Since v2f32 is legal but v2i32 is not, this causes some sequences of
operations like bitcast (build_vector) to be lowered inefficiently.
Commit: d2f14bcaa5d2ca392656efe702770171ad7f3161
https://github.com/llvm/llvm-project/commit/d2f14bcaa5d2ca392656efe702770171ad7f3161
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll
Log Message:
-----------
[profcheck][SimplifyCFG] Propagate !prof from `switch` to `select` (#159645)
Propagate `!prof` from `switch` instructions.
Issue #147390
Commit: 098767cafa18b09a6efcf017dc7092ccc14b288b
https://github.com/llvm/llvm-project/commit/098767cafa18b09a6efcf017dc7092ccc14b288b
Author: Mark Danial <mark.danial at ibm.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-strings/stdin.test
Log Message:
-----------
Revert changes to llvm-string stdin test and XFAIL on AIX (#160821)
Xfail testcase on AIX until echo -n bug is fixed, revert changes made to
testcase
Commit: 1aefabe5545bbf76a5218b998254033e71ed24f7
https://github.com/llvm/llvm-project/commit/1aefabe5545bbf76a5218b998254033e71ed24f7
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/Lex/HeaderSearch.cpp
Log Message:
-----------
[clang] Use the VFS to check the system framework marker (#160946)
This PR uses the VFS/`FileManager` to check the system framework marker
instead of going straight to the real file system. This matches the
behavior of other input files of the compiler.
Commit: 34ebdaf73287e4f0fd9e897d01060071dbc42e99
https://github.com/llvm/llvm-project/commit/34ebdaf73287e4f0fd9e897d01060071dbc42e99
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
Log Message:
-----------
[clang][analyzer] Use the VFS to check model files (#160950)
This PR uses the VFS to check `.model` files in the Clang static
analyzer to match the compiler's behavior for other input files.
Commit: 7b3d28573c1c3ae74fc829d659a6a99c02d961f9
https://github.com/llvm/llvm-project/commit/7b3d28573c1c3ae74fc829d659a6a99c02d961f9
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[clang] Use the VFS to get the unique file ID (#160936)
This PR uses the VFS to get the unique file ID when printing
externalized decls in CUDA instead of going straight to the real file
system. This matches the behavior of other input files of the compiler.
Commit: 220ad03d5b28dbd83dbb90896a7eb55b74004818
https://github.com/llvm/llvm-project/commit/220ad03d5b28dbd83dbb90896a7eb55b74004818
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
Log Message:
-----------
[clang] Use the VFS to get the OpenMP entry info (#160935)
This PR uses the VFS to get the OpenMP entry info instead of going
straight to the real file system. This matches the behavior of other
input files of the compiler.
Commit: f9065fce8fd2bb664ed8dcb7582432b83c2114c4
https://github.com/llvm/llvm-project/commit/f9065fce8fd2bb664ed8dcb7582432b83c2114c4
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Avoid excessive hash lookups in EscapeStringStream (#160166)
The naive char-by-char lookup performed OK, but we can skip ahead to the
next match, avoiding all the extra hash lookups in the key map. Likely
there is a faster method than this, but its already a 42% win in the
BM_Mustache_StringRendering/Escaped benchmark, and an order of magnitude
improvement for BM_Mustache_LargeOutputString.
| Benchmark | Before (ns) | After (ns) | Speedup |
| :--- | ---: | ---: | ---: |
| `StringRendering/Escaped` | 29,440,922 | 16,583,603 | ~44% |
| `LargeOutputString` | 15,139,251 | 929,891 | ~94% |
| `HugeArrayIteration` | 102,148,245 | 95,943,960 | ~6% |
| `PartialsRendering` | 308,330,014 | 303,556,563 | ~1.6% |
Unreported benchmarks, like those for parsing, had no significant
change.
Commit: 37e7ad184d002db15f72771938755580433cf96d
https://github.com/llvm/llvm-project/commit/37e7ad184d002db15f72771938755580433cf96d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M libcxx/utils/libcxx/test/format.py
Log Message:
-----------
[libcxx] Add local %T substitution
This patch adds a %T substitution directly into the libc++ test format.
This ensures that the libc++ test format will continue to work when we
remove support for %T in llvm lit.
Reviewers: #reviewers-libcxx, ldionne, philnik777
Pull Request: https://github.com/llvm/llvm-project/pull/160026
Commit: f8d547fa8a038d0adf5c07708d11bbf1d8db3100
https://github.com/llvm/llvm-project/commit/f8d547fa8a038d0adf5c07708d11bbf1d8db3100
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/utils/lit/tests/Inputs/shtest-shell/valid-shell.txt
Log Message:
-----------
[lit] Remove %T from tests
This patch removes %T from tests in preparation for removing the
substitution completely. Splitting this off from the actual removal to
make it easier to revert the removal of %T in case I missed something.
Reviewers: RKSimon, jh7370, cmtice, petrhosek, ilovepi, pogo59
Reviewed By: cmtice, RKSimon, jh7370
Pull Request: https://github.com/llvm/llvm-project/pull/160027
Commit: 597f93d36b035faeb63f4ba0d61a8b8e25eddaab
https://github.com/llvm/llvm-project/commit/597f93d36b035faeb63f4ba0d61a8b8e25eddaab
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/test/CodeGen/AMDGPU/fold-imm-copy-agpr.mir
M llvm/test/CodeGen/AMDGPU/fold-imm-copy.mir
A llvm/test/CodeGen/AMDGPU/fold-operands-frame-index-agpr.mir
Log Message:
-----------
AMDGPU: Check if immediate is legal for av_mov_b32_imm_pseudo (#160819)
This is primarily to avoid folding a frame index materialized
into an SGPR into the pseudo; this would end up looking like:
%sreg = s_mov_b32 %stack.0
%av_32 = av_mov_b32_imm_pseudo %sreg
Which is not useful.
Match the check used for the b64 case. This is limited to the
pseudo to avoid regression due to gfx908's special case - it
is expecting to pass here with v_accvgpr_write_b32 for illegal
cases, and stay in the intermediate state with an sgpr input.
This avoids regressions in a future patch.
Commit: e925e528d9750a424f1a3c8519aae9e0288d13a4
https://github.com/llvm/llvm-project/commit/e925e528d9750a424f1a3c8519aae9e0288d13a4
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M lld/test/wasm/mutable-global-exports.s
M lld/wasm/Writer.cpp
Log Message:
-----------
[lld][WebAssembly] Fix check for implicitly exported mutable globals (#160966)
This check is designed to avoid exporting mutable globals in the case
when mutable globals are not available. However, it was being applied in
all cases even when mutable globals was enabled.
This error is particularly bad since mutable-globals have been enabled
in default CPU for a while now, meaning that this condition should not
be firing in the wild very often.
Commit: 727ce02653c29467b861a6ede0c925f3fdb8a6cb
https://github.com/llvm/llvm-project/commit/727ce02653c29467b861a6ede0c925f3fdb8a6cb
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M lld/MachO/SyntheticSections.cpp
A lld/test/MachO/order-file-cstring.s
R lld/test/MachO/ordre-file-cstring.s
Log Message:
-----------
[lld][macho] Rename test to fix spelling (#160938)
The test name had a typo from
https://github.com/llvm/llvm-project/pull/140307. Fix it.
I realized cstring ordering is not supported when string deduplication
is turned off. We could easily call `buildCStringPriorities()` in
`CStringSection::finalizeContents()`, but I worry it might harm build
performance since it creates multiple vectors and searches though maps.
If users are not deduplicating strings, they probably won't care to
order them, but it would be good to support this.
Commit: 2be906b25581eebbd6607a5d99943251617622cb
https://github.com/llvm/llvm-project/commit/2be906b25581eebbd6607a5d99943251617622cb
Author: ShihPo Hung <shihpo.hung at sifive.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/test/Analysis/CostModel/RISCV/vp-intrinsics.ll
Log Message:
-----------
Revert "[TTI][RISCV] Add cost modelling for intrinsic vp.load.ff (#160470)"
This reverts commit aa08b1a9963f33ded658d3ee655429e1121b5212.
Commit: be6c5d0663790817291cab90248ada0117720d6a
https://github.com/llvm/llvm-project/commit/be6c5d0663790817291cab90248ada0117720d6a
Author: co63oc <co63 at 163.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerCorpus.h
M compiler-rt/lib/fuzzer/FuzzerDriver.cpp
M compiler-rt/lib/fuzzer/FuzzerExtFunctionsWindows.cpp
M compiler-rt/lib/fuzzer/FuzzerLoop.cpp
M compiler-rt/lib/fuzzer/FuzzerMutate.cpp
Log Message:
-----------
[NFC] [compiler-rt] fix typos (#160803)
fix typos
Commit: 7ff6973f1ae91985bb6b5faa8658e81dbaadbd25
https://github.com/llvm/llvm-project/commit/7ff6973f1ae91985bb6b5faa8658e81dbaadbd25
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/docs/ReleaseNotes.md
M llvm/utils/lit/lit/TestRunner.py
A llvm/utils/lit/tests/Inputs/shtest-shell/capital-t-error-message.txt
M llvm/utils/lit/tests/shtest-shell.py
Log Message:
-----------
[lit] Remove support for %T
This patch removes support for %T from llvm-lit. For now we mark the
test unresolved and add an error message noting the substitution is
deprecated. This is exactly the same as the error handling for other
substitution failures. We intend to remove support for the nice error
message once 22 branches as users should have moved over by the they are
upgrading to v23.
Reviewers: petrhosek, jh7370, ilovepi, pogo59, cmtice
Reviewed By: cmtice, jh7370, ilovepi
Pull Request: https://github.com/llvm/llvm-project/pull/160028
Commit: 0e72c3da2aa9e6a8da8b1fb4c91f651293ed8f54
https://github.com/llvm/llvm-project/commit/0e72c3da2aa9e6a8da8b1fb4c91f651293ed8f54
Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/vector-all-ones.ll
Log Message:
-----------
[NFC] Lockdown instructions of vspltisw for addition of vector of 1s (#160476)
This NFC patch looks to lock down the instruction generated for the
operation of `A + vector {1, 1, 1, 1}` in which the current code emits
`vspltisw`.
It can be made better with the use of a `2 cycle` instruction `xxleqv`
over the current `4 cycle vspltisw`.
---------
Co-authored-by: himadhith <himadhith.v at ibm.com>
Commit: dee28f955583c5baa69ece5bf499a447cf3c6d29
https://github.com/llvm/llvm-project/commit/dee28f955583c5baa69ece5bf499a447cf3c6d29
Author: Axel Sorenson <AxelPSorenson at gmail.com>
Date: 2025-09-26 (Fri, 26 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/fsh.ll
Log Message:
-----------
[InstCombine] Rotate transformation port from SelectionDAG to InstCombine (#160628)
The rotate transformation from
https://github.com/llvm/llvm-project/blob/72c04bb882ad70230bce309c3013d9cc2c99e9a7/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L10312-L10337
has no middle-end equivalent in InstCombine. The following is a port of
that transformation to InstCombine.
---------
Co-authored-by: Yingwei Zheng <dtcxzyw at qq.com>
Commit: 538cd20cfa2fbc115986ce84b8baf780cb876b96
https://github.com/llvm/llvm-project/commit/538cd20cfa2fbc115986ce84b8baf780cb876b96
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Simplify a few builtin implementations (#160910)
Commit: 779adf16c941d489399d67c8befe418ad93528e4
https://github.com/llvm/llvm-project/commit/779adf16c941d489399d67c8befe418ad93528e4
Author: Moinak Bhattacharyya <moinakb001 at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py
Log Message:
-----------
[clang-tools-extra] Fix python syntax - pull in Queue from module queue (#159997)
No such module as `Queue` - the `Queue` class is part of the `queue` module.
Commit: 61012483df44c181f4200a5b6f260d27f2052df1
https://github.com/llvm/llvm-project/commit/61012483df44c181f4200a5b6f260d27f2052df1
Author: Alexander Kornienko <alexfh at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/AST/ASTContext.cpp
Log Message:
-----------
[clang] Fix a use-after free in ASTContext::getSubstBuiltinTemplatePack (#160970)
ASTContext::getSubstBuiltinTemplatePack finds InsertPos and then calls
itself
recursively, which may lead to rehashing and invalidation of all
pointers to
buckets. The function then proceeds with using the potentially invalid
InsertPos, leading to use-after-free.
The issue goes back to https://github.com/llvm/llvm-project/pull/157662.
I didn't manage to produce a reasonably-sized test case yet.
Commit: d0a260b1d124dcad62102011aa80df5f868d28f7
https://github.com/llvm/llvm-project/commit/d0a260b1d124dcad62102011aa80df5f868d28f7
Author: Fabio D'Urso <fdurso at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
Log Message:
-----------
[scudo] Use TestAllocator wrapper to ensure proper cleanup (#160800)
Instead of directly instantiating scudo::Allocator, using the test
TestAllocator wrapper class ensures that unmapTestOnly is called at the
end of the test.
This fixes the issue of QuarantineIterateOverChunks failing on Fuchsia
because of a clobbered TLS pointer left by QuarantineEnabled.
Commit: 8fb2e2afd31c2956b4cc2bfc4e9c809fddfcb903
https://github.com/llvm/llvm-project/commit/8fb2e2afd31c2956b4cc2bfc4e9c809fddfcb903
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Implement UO real on result from real with type promotion (#160951)
Implement UO real on the result from real with type promotion
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: e276000d0b8adadc228a6e93ea8911fbd879d2cd
https://github.com/llvm/llvm-project/commit/e276000d0b8adadc228a6e93ea8911fbd879d2cd
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR] Implement logical not for VectorType (#160762)
This change implements logical not for VectorType
Commit: fcf79e5276299c351b924f7a08f6c3c6a6c6a1ee
https://github.com/llvm/llvm-project/commit/fcf79e5276299c351b924f7a08f6c3c6a6c6a1ee
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M mlir/include/mlir/Transforms/FoldUtils.h
M mlir/lib/IR/Builders.cpp
M mlir/lib/Transforms/Utils/FoldUtils.cpp
A mlir/test/Dialect/Arith/constant-fold.mlir
M mlir/test/Dialect/XeGPU/xegpu-attr-interface.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-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/lib/Transforms/TestSingleFold.cpp
Log Message:
-----------
[MLIR] Improve in-place folding to iterate until fixed-point (#160615)
When executed in the context of canonicalization, the folders are
invoked in a fixed-point iterative process. However in the context of an
API like `createOrFold()` or in DialectConversion for example, we expect
a "one-shot" call to fold to be as "folded" as possible. However, even
when folders themselves are indempotent, folders on a given operation
interact with each other. For example:
```
// X = 0 + Y
%X = arith.addi %c_0, %Y : i32
```
should fold to %Y, but the process actually involves first the folder
provided by the IsCommutative trait to move the constant to the right.
However this happens after attempting to fold the operation and the
operation folder isn't attempt again after applying the trait folder.
This commit makes sure we iterate until fixed point on folder
applications.
Fixes #159844
Commit: 08c1e9e80a3dcda4112751db0d8bd8828e1dc6bb
https://github.com/llvm/llvm-project/commit/08c1e9e80a3dcda4112751db0d8bd8828e1dc6bb
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
Log Message:
-----------
[LAA] Revert 56a1cbb and 1aded51, due to crash (#160993)
This reverts commits 56a1cbb ([LAA] Fix non-NFC parts of 1aded51),
1aded51 ([LAA] Prepare to handle diff type sizes (NFC)). The original
NFC patch caused some regressions, which the later patch tried to fix.
However, the later patch is the cause of some crashes, and it would be
best to revert both for now, and re-land after thorough testing.
Commit: c6f22b4cdc6f4322a9ec6b7d06ecfad18bd2f31c
https://github.com/llvm/llvm-project/commit/c6f22b4cdc6f4322a9ec6b7d06ecfad18bd2f31c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in ModuleImport.cpp (NFC)
Commit: e25be7709f23ee73ccac6c51d3cad8db1b970c6c
https://github.com/llvm/llvm-project/commit/e25be7709f23ee73ccac6c51d3cad8db1b970c6c
Author: Kian Kasad <kian at kasad.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/docs/ProgrammersManual.rst
Log Message:
-----------
[NFC] [docs] Fix typo in Programmer's Manual BinaryOperator description (#160212)
Fixes phrase "This subclasses represents..."
Commit: 17bfec56299e8ebd5bcc5c643130c51945dd401a
https://github.com/llvm/llvm-project/commit/17bfec56299e8ebd5bcc5c643130c51945dd401a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/test/Parser/OpenMP/assumption.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in ASSUMES (#160591)
Commit: cdc30610ae4291f5b8c19d2998b7572931bb578a
https://github.com/llvm/llvm-project/commit/cdc30610ae4291f5b8c19d2998b7572931bb578a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-fshl-256.ll
Log Message:
-----------
[X86] vector-fshl-256.ll - regenerate test checks (#161004)
Commit: 80beefa539674cb23ae0d68f92b2b5c1807ffc3a
https://github.com/llvm/llvm-project/commit/80beefa539674cb23ae0d68f92b2b5c1807ffc3a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Parser/OpenMP/requires.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in REQUIRES (#160595)
Commit: d1b5607dc113016b74d0a58e95fed00ea9ad7950
https://github.com/llvm/llvm-project/commit/d1b5607dc113016b74d0a58e95fed00ea9ad7950
Author: lbonn <lbonn at users.noreply.github.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M libcxx/include/__ranges/join_view.h
M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/ranges.find.pass.cpp
Log Message:
-----------
[libc++][ranges] Fix `ranges::join_view` segmented iterator trait (#158347)
The outer iterator needs to move to the next segment when calling
__compose.
Without this change, `find_segment_if` would never reach the end of the
join_view which caused erroneous result when calling `ranges::find` on a
join_view of bidirectional ranges.
Other specializations using the segmented iterator trait were likely to
be affected as well.
Fixes #158279
Fixes #93180
Commit: 371b3cae08c69b4991a4693ae69eeccab244bb52
https://github.com/llvm/llvm-project/commit/371b3cae08c69b4991a4693ae69eeccab244bb52
Author: Corbin Robeck <robeck at meta.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M mlir/examples/standalone/include/Standalone/StandalonePasses.td
Log Message:
-----------
[mlir] Fix typo in StandalonePasses.td doc string (#161009)
Commit: 9bf51b2b19064644ca447cde425dccf2bd971722
https://github.com/llvm/llvm-project/commit/9bf51b2b19064644ca447cde425dccf2bd971722
Author: David Green <david.green at arm.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/test/CodeGen/ARM/build-attributes-fn-attr3.ll
M llvm/test/CodeGen/ARM/build-attributes-fn-attr4.ll
M llvm/test/CodeGen/ARM/build-attributes-fn-attr5.ll
M llvm/test/CodeGen/ARM/build-attributes-fn-attr6.ll
Log Message:
-----------
[ARM] Generate build-attributes more correctly in the presence of intrinsic declarations. (#160749)
This code doesn't work very well, but this makes it work when intrinsic
definitions are present. It now discounts functions declarations from
the set of attributes it looks at.
The code would have worked better before
0ab5b5b8581d9f2951575f7245824e6e4fc57dec when module-level attributes
could provide the information used to construct build-attributes.
Commit: 60912f96549e97c5a628418f33f5cd5825944cdd
https://github.com/llvm/llvm-project/commit/60912f96549e97c5a628418f33f5cd5825944cdd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/CoalescingBitVector.h
Log Message:
-----------
[ADT] Use structured bindings in CoalescingBitVector.h (NFC) (#160976)
Commit: 54beb58ae6a6e93a9da2e1cf219e2f37df535084
https://github.com/llvm/llvm-project/commit/54beb58ae6a6e93a9da2e1cf219e2f37df535084
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Add derived() to DenseMapBase (NFC) (#160977)
This patch adds derived() to obtain the CRTP derived class, following
conventions in other classes. This makes forwarder functions a little
more readable.
Commit: 3163fcfa453dce61aa06da05272a660b18407623
https://github.com/llvm/llvm-project/commit/3163fcfa453dce61aa06da05272a660b18407623
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
M llvm/include/llvm/ADT/DenseSet.h
M llvm/include/llvm/ADT/MapVector.h
M llvm/include/llvm/ADT/SetVector.h
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/include/llvm/ADT/SmallSet.h
M llvm/unittests/ADT/APIntTest.cpp
Log Message:
-----------
[ADT] Add [[nodiscard]] to set/map classes (NFC) (#160978)
This patch adds [[nodiscard]] to user-facing functions in set/map
classes if they are:
- const and return non-void values (e.g., size()), or
- non-const and have no side effects (e.g., find()).
Commit: 798ccd2e4722b228317e8a30dd3624a0308a927e
https://github.com/llvm/llvm-project/commit/798ccd2e4722b228317e8a30dd3624a0308a927e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Endian.h
M llvm/lib/CGData/CodeGenDataReader.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/unittests/Support/EndianTest.cpp
Log Message:
-----------
[Support] Deprecate one form of support::endian::read (NFC) (#160979)
This is a follow-up to #156140, which deprecated one form of write.
We have two forms of read:
template <typename value_type, std::size_t alignment>
[[nodiscard]] inline value_type read(const void *memory, endianness
endian)
template <typename value_type, endianness endian, std::size_t alignment>
[[nodiscard]] inline value_type read(const void *memory)
The difference is that endian is a function parameter in the former
but a template parameter in the latter.
This patch streamlines the code by migrating the use of the latter to
the former while deprecating the latter.
Commit: d70490c6940f0bca4f13be199396701249876685
https://github.com/llvm/llvm-project/commit/d70490c6940f0bca4f13be199396701249876685
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/docs/BuildingADistribution.rst
Log Message:
-----------
[llvm] Proofread BuildingADistribution.rst (#160980)
Commit: 0df3651802d35b26ae857b549de9edf73b67fb98
https://github.com/llvm/llvm-project/commit/0df3651802d35b26ae857b549de9edf73b67fb98
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
Log Message:
-----------
[X86] matchVPMADD52 - only use 512-bit MADD52 on AVX512IFMA targets (#161011)
If we have a AVX512 target capable of AVXIFMA but not AVX512IFMA then we must split 512-bit (or larger) types to 256-bits
Fixes #160928
Commit: 3834c5428dcdd8807331b2ff522115dba2f89aae
https://github.com/llvm/llvm-project/commit/3834c5428dcdd8807331b2ff522115dba2f89aae
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M mlir/lib/Bindings/Python/DialectLLVM.cpp
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRTypes.cpp
M mlir/test/python/ir/builtin_types.py
Log Message:
-----------
[MLIR][Python] add unchecked gettors (#160954)
Some of the current gettors require passing locations (i.e., there be an
active location) because they're using the "checked" APIs. This PR adds
"unchecked" gettors which only require an active context.
Commit: 17a66ea68d787e0938fdcc9535ca80029c88a210
https://github.com/llvm/llvm-project/commit/17a66ea68d787e0938fdcc9535ca80029c88a210
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format][NFC] Rename a unit test
Commit: 8460dbb450813358859ee20cfa54edfe575372fd
https://github.com/llvm/llvm-project/commit/8460dbb450813358859ee20cfa54edfe575372fd
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-step.ll
M llvm/test/Transforms/LoopVectorize/blend-in-header.ll
M llvm/test/Transforms/LoopVectorize/expand-scev-after-invoke.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/induction-step.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
Log Message:
-----------
[VPlan] Mark VPInstruction::Broadcast as not reading/writing memory.
This enables additional DCE/CSE opportunities and ensures that we don't
end up with multiple redundant users of a VPInstruction using EVL. It
fixes a verifier error in the added test_3_inductions test.
Commit: 08c057e6110b0d1ff6ae60886571fd09b50cfaa7
https://github.com/llvm/llvm-project/commit/08c057e6110b0d1ff6ae60886571fd09b50cfaa7
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
[GitHub][docker] Fix 'FromAsCasing' violation in CI dockerfile (#161017)
Fixes https://docs.docker.com/reference/build-checks/from-as-casing/
which also gives warning when building container from command line:
```
=> WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 1)
=> WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 4)
=> WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 40)
=> WARN: FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 100)
```
Commit: 41a2dfc0d77d9ad977d1d36358f979abb3a0928f
https://github.com/llvm/llvm-project/commit/41a2dfc0d77d9ad977d1d36358f979abb3a0928f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
Log Message:
-----------
[VPlan] Allow multiple users of (broadcast %evl).
CSE may replace multiple redundant broadcasts of EVL with a single
broadcast which may have more than 1 user. Adjust the verifier to allow
this.
Fixes a crash when building llvm-test-suite with EVL:
https://lab.llvm.org/buildbot/#/builders/210/builds/3303
Commit: 378b6d51de97ce220c042a0823d047a546c82bf6
https://github.com/llvm/llvm-project/commit/378b6d51de97ce220c042a0823d047a546c82bf6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
Log Message:
-----------
[AMDGPU] fcanonicalize.bf16.ll - regenerate test checks (#161026)
Commit: 4a4573a4adeab93111c3d58bff16ad24123ccc5f
https://github.com/llvm/llvm-project/commit/4a4573a4adeab93111c3d58bff16ad24123ccc5f
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
Log Message:
-----------
[clang] simplify placeholder type deduction for constant template parameters (#160439)
This makes the deduction for dependent types operate in more similar
ways to the non-dependent one, such as when matching template template
parameters, making errors in those generate similar diagnostics to the
non-dependent ones. This also removes some superfluous implicit casts,
simplifying the resulting AST a little bit.
Commit: 078e99ef017cac3899e5dbc2ed917f173c9eedad
https://github.com/llvm/llvm-project/commit/078e99ef017cac3899e5dbc2ed917f173c9eedad
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/SemaCXX/ctad.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx2c.cpp
Log Message:
-----------
[clang] fix transformation of subst constant template parameter nodes (#161029)
This simplifies those transforms a lot, removing a bunch of workarounds
which were introducing problems.
The transforms become independent of the template instantiator, so they
are moved to TreeTransform instead.
Fixes #131342
This PR was already reviewed and approved at
https://github.com/llvm/llvm-project/pull/160777, but I accidentally
merged that into another PR, instead of main.
Commit: ebfee327df69e6cfeaa4c5300e6abd19476b8bfe
https://github.com/llvm/llvm-project/commit/ebfee327df69e6cfeaa4c5300e6abd19476b8bfe
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/llvm.frexp.ll
Log Message:
-----------
[SDAG] Constant fold frexp in signed way (#161015)
Fixes #160981
The exponential part of a floating-point number is signed. This patch
prevents treating it as unsigned.
Commit: 9630b321a50a3712ca092a53a4a4c7bea94b3af2
https://github.com/llvm/llvm-project/commit/9630b321a50a3712ca092a53a4a4c7bea94b3af2
Author: Davide Mor <39653004+Tazdevil971 at users.noreply.github.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsCallingConv.td
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsRegisterInfo.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
A llvm/test/CodeGen/Mips/cconv/arguments-hard-single-float-varargs.ll
A llvm/test/CodeGen/Mips/cconv/arguments-hard-single-float.ll
A llvm/test/CodeGen/Mips/cconv/arguments-hard-single-fp128.ll
A llvm/test/CodeGen/Mips/cconv/callee-saved-singlefloat.ll
A llvm/test/CodeGen/Mips/cconv/return-hard-single-float.ll
A llvm/test/CodeGen/Mips/cconv/return-hard-single-fp128.ll
A llvm/test/CodeGen/Mips/inlineasm-constraints-singlefloat.ll
M llvm/test/CodeGen/Mips/int-to-float-conversion.ll
Log Message:
-----------
[MIPS][float] Fixed SingleFloat codegen on N32/N64 targets (#140575)
This patch aims at making the combination of single-float and N32/N64
ABI properly work.
Right now when both options are enabled the compiler chooses an
incorrect ABI and in some cases even generates wrong instructions.
The floating point behavior on MIPS is controlled through 3 flags:
soft-float, single-float, fp64. This makes things complicated because
fp64 indicates the presence of 64bit floating point registers, but
cannot be easily disabled (the mips3 feature require it, but mips3 CPUs
with only 32bit floating point exist). Also if fp64 is missing it
doesn't actually disable 64bit floating point operations, because
certain MIPS1/2 CPUs support 64bit floating point with 32bit registers,
hence the single-float option.
I'm guessing that originally single-float was only intended for the
latter case, and that's the reason why it doesn't properly work on 64bit
targets.
So this patch does the following:
- Make single-float a "master disable", even if fp64 is enabled this
should completely disable generation of 64bit floating point operations,
making it available on targets which hard require fp64.
- Add proper calling conventions for N32/N64 single-float combinations.
- Fixup codegen to not generate certain 64bit floating point operations,
apparently not assigning a register class to f64 values is not enough to
prevent them from showing up.
- Add tests for the new calling conventions and codegen.
Commit: 9a01561760a2785fbf6d66f86ba2361d36a648f7
https://github.com/llvm/llvm-project/commit/9a01561760a2785fbf6d66f86ba2361d36a648f7
Author: Ruoyu Zhong <zhongruoyu at outlook.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
Log Message:
-----------
[clang-format] Fix qualifier ordering for lines after PP directives (#160731)
Lines appearing after preprocessor conditional blocks (like `#endif`)
were not having their qualifiers reordered by `QualifierOrder`, while
lines inside the conditional blocks were processed correctly.
The issue was that tokens on lines following preprocessor directives
have `MustBreakBefore` = `true`. The qualifier alignment logic was
breaking immediately upon encountering any token with `MustBreakBefore`
= `true`, preventing analysis of the entire line.
The fix allows processing to continue when `MustBreakBefore` = `true` on
the first token of a line, since this is expected behavior (the token
legitimately starts a new line). Only tokens with `MustBreakBefore` =
`true` that appear mid-line will cause the analysis loop to break.
Fixes https://github.com/llvm/llvm-project/issues/160487.
Commit: 63f1c03feea17c8236774f3b5dc811d5cb3a2364
https://github.com/llvm/llvm-project/commit/63f1c03feea17c8236774f3b5dc811d5cb3a2364
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/Ofast.c
M clang/test/Driver/clang_f_opts.c
Log Message:
-----------
[Driver] Make -fvectorize and -fslp-vectorize override -O group options (#161032)
`clang -fno-slp-vectorize -O2` incorrectly enabled CC1 -vectorize-slp.
Make -fvectorize and -fslp-vectorize properly override -O, following the
convention.
Fix #160633
Commit: 4edda3d78c26b9d928d115b2059d0c719eec237b
https://github.com/llvm/llvm-project/commit/4edda3d78c26b9d928d115b2059d0c719eec237b
Author: owenca <owenpiano at gmail.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix bugs in annotating arrows and square brackets (#160973)
Fixes #160518
Commit: c7504872927486bb70c26aa71f795b1331cbbd38
https://github.com/llvm/llvm-project/commit/c7504872927486bb70c26aa71f795b1331cbbd38
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/cxx23.cpp
M clang/test/AST/ByteCode/invalid.cpp
Log Message:
-----------
[clang][bytecode] Diagnose volatile writes (#160350)
Commit: 8ce3b8b518badcf5c6df8e0723fb93fa57cb2456
https://github.com/llvm/llvm-project/commit/8ce3b8b518badcf5c6df8e0723fb93fa57cb2456
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/test/CodeGen/ARM/build-attributes.ll
Log Message:
-----------
[ARM] Remove `UnsafeFPMath` uses (#151275)
Try to remove `UnsafeFPMath` uses in arm backend. These global flags
block some improvements like
https://discourse.llvm.org/t/rfc-honor-pragmas-with-ffp-contract-fast/80797.
Remove them incrementally.
Commit: 5a13c857f9aaa262e846444e0d3db4ee60854f7d
https://github.com/llvm/llvm-project/commit/5a13c857f9aaa262e846444e0d3db4ee60854f7d
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
[GitHub][docker] Add python3 venv package to CI container (#161024)
I'm trying to make `pr-code-format.yml` job run natively on
`ci-ubuntu-24.04` container.
As it appears, `ci-ubuntu-24.04` already
[has](https://github.com/llvm/llvm-project/blob/41a2dfc0d77d9ad977d1d36358f979abb3a0928f/.github/workflows/containers/github-action-ci/Dockerfile#L35)
latest `clang-format`, `python3.12` installed, but `python3.12` needs
`venv` to work properly, and Ubuntu asks for `python3-venv` package to
be installed to create a venv.
Commit: f9e7f95b3dfceac8b680ad2f3d5f35543c0d46ae
https://github.com/llvm/llvm-project/commit/f9e7f95b3dfceac8b680ad2f3d5f35543c0d46ae
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-27 (Sat, 27 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy] Fix `modernize-use-nullptr` crash on 32-bit Windows (#160023)
Fixes #53778.
Commit: 1ab4113d0e0d30ba923ea070530a0e65910b26cb
https://github.com/llvm/llvm-project/commit/1ab4113d0e0d30ba923ea070530a0e65910b26cb
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M libcxx/include/__flat_map/flat_map.h
M libcxx/include/__flat_map/flat_multimap.h
M libcxx/include/__flat_map/key_value_iterator.h
M libcxx/include/__flat_set/flat_multiset.h
M libcxx/include/__flat_set/flat_set.h
M libcxx/include/module.modulemap.in
Log Message:
-----------
[libc++] Remove a bunch of unused includes from <flat_*> (#160658)
Commit: ddfbfd6b580c6d0ac89fc826f795cb67d051c101
https://github.com/llvm/llvm-project/commit/ddfbfd6b580c6d0ac89fc826f795cb67d051c101
Author: Iris Shi <0.0 at owo.li>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/CodeGen/CGStmt.cpp
Log Message:
-----------
[NFC][clang] Move simplifyConstraint to TargetInfo.cpp (#154905)
Co-authored-by: Andy Kaylor <akaylor at nvidia.com>
Commit: 0fc6213aee05b07e670bee5a25a31119c563227e
https://github.com/llvm/llvm-project/commit/0fc6213aee05b07e670bee5a25a31119c563227e
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Clarify nature of legacy CSE (NFC) (#160855)
In order to avoid conflating the legacy CSE with the VPlan-based one,
rename the legacy CSE and insert a FIXME to clarify the nature of the
legacy CSE.
Commit: 0df525bc56651ec5a7cf76cee5bd4127e9df7cf7
https://github.com/llvm/llvm-project/commit/0df525bc56651ec5a7cf76cee5bd4127e9df7cf7
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
A llvm/test/CodeGen/LoongArch/lasx/abs.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/adda.ll
A llvm/test/CodeGen/LoongArch/lsx/abs.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/adda.ll
Log Message:
-----------
[LoongArch] Add patterns to support `[x]vadda.{b/h/w/d}` generation (#160674)
This commit add patterns for lsx and lasx to support generating
`[x]vadda.{b/h/w/d}` instructions.
Note: For convenience, this commit also set `ISD::ABS` as legal. As
shown in the tests, this brings no change to the results, just same as
the results obtained from expanding it before. But, setting it as legal
brings more vectorization opportunities to IR transformation which may
bring more vector optimization chances for later stages and the backend.
Commit: 2284ce0596ecd66849099f4918f726f8e27607aa
https://github.com/llvm/llvm-project/commit/2284ce0596ecd66849099f4918f726f8e27607aa
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
Log Message:
-----------
[VPlan] Move using VPlanPatternMatch to top in VPlanUtils.cpp (NFC).
Only VPlan pattern matching is used in the file, move the using
statement to the top level.
Commit: 58805dd9ede08df777e3e4486493b3a70c5124c7
https://github.com/llvm/llvm-project/commit/58805dd9ede08df777e3e4486493b3a70c5124c7
Author: Tim Besard <tim.besard at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
A llvm/test/CodeGen/SPIRV/instructions/insertvalue-undef-ptr.ll
Log Message:
-----------
[SPIRV] Fix type mismatch assertion in insertvalue. (#143131)
The code was incorrectly converting all `undef` arguments to `i32`,
while the `spv_insertv` intrinsics only expects that for the first
operand, representing the aggregate type.
Fixes https://github.com/llvm/llvm-project/issues/127977
---------
Co-authored-by: Michal Paszkowski <michal at michalpaszkowski.com>
Commit: 3407fedb8628fab23a251ee804ee280250966c40
https://github.com/llvm/llvm-project/commit/3407fedb8628fab23a251ee804ee280250966c40
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
Log Message:
-----------
[mlir][dataflow] Use skipRegions to print region op (NFC) (#161066)
The print region op prints a lot of useless IR. Use OpWithFlags(op,
OpPrintingFlags().skipRegions()) to avoid this.
Commit: 6167f0c818051e378fd8b0efb6e93adf13e53fae
https://github.com/llvm/llvm-project/commit/6167f0c818051e378fd8b0efb6e93adf13e53fae
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Transforms/Mem2Reg.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in Mem2Reg.cpp (NFC)
Commit: 062c0fcf4b8b29a12191d782f4e23623cef061db
https://github.com/llvm/llvm-project/commit/062c0fcf4b8b29a12191d782f4e23623cef061db
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in GPUOpsLowering.cpp (NFC)
Commit: 60e41d241c3a4ba63e777986688ec75cc0612d0f
https://github.com/llvm/llvm-project/commit/60e41d241c3a4ba63e777986688ec75cc0612d0f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in VectorToGPU.cpp (NFC)
Commit: c058ebda67ed85d3b45140bd25d504e1f7400441
https://github.com/llvm/llvm-project/commit/c058ebda67ed85d3b45140bd25d504e1f7400441
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
A llvm/test/CodeGen/SPIRV/transcoding/OpVariable_Initializer.ll
A llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_gep.ll
A llvm/test/CodeGen/SPIRV/transcoding/decoration-forward-decl.ll
A llvm/test/CodeGen/SPIRV/transcoding/float16.ll
Log Message:
-----------
[SPIRV] Porting tests to transcoding directory from translator (#151661)
Checks for built-in variables, saturating conversion, half precision
fract, and workgroup variable initialization
---------
Co-authored-by: Michal Paszkowski <michal at michalpaszkowski.com>
Commit: 47981627ddb5bfb49e383474fb1db0c95a2e3b86
https://github.com/llvm/llvm-project/commit/47981627ddb5bfb49e383474fb1db0c95a2e3b86
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/bf16.ll
Log Message:
-----------
[AMDGPU] Regenerate checks for test/CodeGen/AMDGPU/bf16.ll (#161069)
Looks like there were some checks leftover from before the GFX1250TRUE16
run line was disabled. These were causing problems downstream. Not sure
why update_llc_test_checks did not clean these up.
I removed all existing checks and re-ran update_llc_test_checks.
Commit: 63d866e04b86f2bf18206f02acf4f25f7be44111
https://github.com/llvm/llvm-project/commit/63d866e04b86f2bf18206f02acf4f25f7be44111
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in XeGPUOps.cpp (NFC)
Commit: aaf23f0887969130fbbfedc2b525921c1c7b687c
https://github.com/llvm/llvm-project/commit/aaf23f0887969130fbbfedc2b525921c1c7b687c
Author: Justin Kim <jwkimrhkgkr at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/include/mlir/TableGen/Class.h
A mlir/test/mlir-tblgen/attr-duplicated-builder-error.td
A mlir/test/mlir-tblgen/attr-duplicated-custom-builders-error.td
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[mlir][mlir-tblgen] Emit correct error message if method is pruned (#160334)
Add verification for pruned methods for `emitCustomBuilder` and
`emitCheckedCustomBuilder` with proper diagnostic about shadowed methods.
Without this verification, `mlir-tblgen` with `--gen-attrdef-decls`
would segmentation fault if custom builder is provided with its body,
but if method is pruned out due to duplication with other builders.
Fixes #160227
---------
Co-authored-by: Justin Kim <jaewoo.kim at hyperaccel.ai>
Commit: dcfb904473dab6c45855b6ab364521124beb5ce1
https://github.com/llvm/llvm-project/commit/dcfb904473dab6c45855b6ab364521124beb5ce1
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/memmove.ll
M llvm/test/CodeGen/SPIRV/transcoding/NoSignedUnsignedWrap.ll
Log Message:
-----------
[SPIRV] Test file for memmove intrinsic (#152640)
- Added test for checking the lowering of memmove to OpCopyMemorySized
- Modified NoSignedUnsignedWrap.ll by adding a RUN line
Commit: 047ddbf263f6e64c6ec1ef148596661d28544e3a
https://github.com/llvm/llvm-project/commit/047ddbf263f6e64c6ec1ef148596661d28544e3a
Author: Subash B <subash.boopathi at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-comparison.ll
Log Message:
-----------
[SPIRV] Added support for the constrained comparison intrinsics (#157439)
Added SPIR-V support for constrained floating-point comparison
intrinsics (fcmp, fcmps) with lowering and tests.
Commit: 0c1acc98140c642ff87c1a759bda3ddfaaf23964
https://github.com/llvm/llvm-project/commit/0c1acc98140c642ff87c1a759bda3ddfaaf23964
Author: Subash B <subash.boopathi at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/debugtrap.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/ignore-llvm-intrinsic.ll
Log Message:
-----------
[SPIRV] Added lowering for the debugtrap intrinsic (#157442)
Mapped llvm.debugtrap intrinsic to OpNop in the SPIR-V backend, since
SPIR-V has no direct equivalent with tests.
Commit: 5d85d54feb4e17fa449fa9d9963aabac8b403d7b
https://github.com/llvm/llvm-project/commit/5d85d54feb4e17fa449fa9d9963aabac8b403d7b
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_relaxed_printf_string_address_space/builtin_printf.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_relaxed_printf_string_address_space/non-constant-printf.ll
Log Message:
-----------
[SPIRV] Add support for the extension SPV_EXT_relaxed_printf_string_address_space (#160245)
Added support for the extension to support more storageclass for printf
strings.
Commit: 0dbc1e2dff5a4ff0bdc05b310bd93d1eff9bae23
https://github.com/llvm/llvm-project/commit/0dbc1e2dff5a4ff0bdc05b310bd93d1eff9bae23
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bindless_images/i32-in-physical64.ll
Log Message:
-----------
[SPIRV] Added constraint for SPV_INTEL_bindless_image extension (#160249)
Added constraints related to Addressing model as specified in the
specification.
It conforms with the implementation in translator
Same as PR #160089
Solved all issues
Commit: 2cf71fcb9751a347f39035739f8865ef7a53ee68
https://github.com/llvm/llvm-project/commit/2cf71fcb9751a347f39035739f8865ef7a53ee68
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
A llvm/test/CodeGen/SPIRV/transcoding/builtin_pipe.ll
Log Message:
-----------
[SPIRV] Added opencl Pipe builtins (#135335)
- Added opencl Pipe builtins
- Pipe instructions were added in tablegen and lowered in
SPIRVBuiltins.cpp
---------
Co-authored-by: Michal Paszkowski <michal at michalpaszkowski.com>
Co-authored-by: Dmitry Sidorov <dmitry.sidorov at intel.com>
Commit: 9288b084fd9c4301946dff838925c7385c1168e5
https://github.com/llvm/llvm-project/commit/9288b084fd9c4301946dff838925c7385c1168e5
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in PadTilingInterface.cpp (NFC)
Commit: a558d656043734cc4d02e0a0a12e4c308c28f8c7
https://github.com/llvm/llvm-project/commit/a558d656043734cc4d02e0a0a12e4c308c28f8c7
Author: A. Jiang <de34 at live.cn>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/RDFGraph.h
M llvm/include/llvm/CodeGen/RDFRegisters.h
M llvm/lib/CodeGen/RDFLiveness.cpp
M llvm/lib/Target/Hexagon/RDFCopy.cpp
M llvm/lib/Target/Hexagon/RDFCopy.h
M llvm/unittests/CodeGen/TypeTraitsTest.cpp
Log Message:
-----------
[CodeGen] Get rid of incorrect `std` template specializations (#160804)
This patch renames comparators
- from `std::equal_to<llvm::rdf::RegisterRef>` to
`llvm::rdf::RegisterRefEqualTo`, and
- from `std::less<llvm::rdf::RegisterRef>` to
`llvm::rdf::RegisterRefLess`.
The original specializations don't satisfy the requirements for the
original `std` templates by being stateful and
non-default-constructible, so they make the program have UB due to C++17
[namespace.std]/2, C++20/23 [namespace.std]/5.
> A program may explicitly instantiate a class template defined in the
standard library only if the declaration
> - depends on the name of at least one program-defined type, and
> - the instantiation meets the standard library requirements for the
original template.
Commit: c05c90949245a5beb15d425caf60020813423e72
https://github.com/llvm/llvm-project/commit/c05c90949245a5beb15d425caf60020813423e72
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in MemRefUtils.cpp (NFC)
Commit: 41f3438362f5ae2a06544fec7db18c37f5ecd79b
https://github.com/llvm/llvm-project/commit/41f3438362f5ae2a06544fec7db18c37f5ecd79b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[VPlan] Remove dead code for scalar VFs in VPRegionBlock::cost (NFC).
The VPlan cost model is not used to compute costs of scalar VFs
currently, as conversion to replicate regions makes accurately computing
the original scalar cost difficult.
Remove left over, dead code.
Commit: d30fe62cf15960b0b0b2c15d315fe51bb718822a
https://github.com/llvm/llvm-project/commit/d30fe62cf15960b0b0b2c15d315fe51bb718822a
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
A lld/test/ELF/eh-frame-relocation.s
Log Message:
-----------
ELF: Test .eh_frame relocation
EhInputSection currently uses scanSection path, getting ignored marker
relocations and undefined symbol diagnostics for free. This might change
in the future. Add test coverage.
Commit: f7dd258635af4d85bd8f25729c7f56aadb4c5913
https://github.com/llvm/llvm-project/commit/f7dd258635af4d85bd8f25729c7f56aadb4c5913
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PackedVector.h
M llvm/unittests/ADT/PackedVectorTest.cpp
Log Message:
-----------
[ADT] Fix a bug in PackedVector::setValue for signed types (#159239)
Without this patch, we forget to update the sign bit. When we assign:
Vec[0] = -1;
the sign bit is correctly set to 1. Overwriting the same element:
Vec[0] = 1;
does not update the sign bit, leaving the 4-bit as 0b1001, which reads
-2 according to PackedVector's encoding. (It does not use two's
complement.)
This patch fixes the bug by clearing the sign bit when we are
assigning a non-negative value.
Commit: 0de265c3e3beaa0ac0a2976b8c7905ce321987c1
https://github.com/llvm/llvm-project/commit/0de265c3e3beaa0ac0a2976b8c7905ce321987c1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallVector.h
Log Message:
-----------
[ADT] Consolidate assertSafeToReferenceAfterClear with "if constexpr" (NFC) (#161042)
This patch consolidates two implementations of
assertSafeToReferenceAfterClear into a single template function.
Commit: 372f78643e7154f8b3f28a01aebdc1aab87168fb
https://github.com/llvm/llvm-project/commit/372f78643e7154f8b3f28a01aebdc1aab87168fb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/ImmutableMap.h
M llvm/include/llvm/ADT/SparseSet.h
M llvm/include/llvm/ADT/StringMap.h
M llvm/include/llvm/ADT/StringSet.h
Log Message:
-----------
[ADT] Add [[nodiscard]] to more classes (NFC) (#161044)
This patch adds [[nodiscard]] to user-facing functions in set/map
classes if they return non-void values and appear to have no side
effect.
Commit: 9a5671efac31d91e3479c6ae6a0af6196100beb3
https://github.com/llvm/llvm-project/commit/9a5671efac31d91e3479c6ae6a0af6196100beb3
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenPGO.cpp
M llvm/include/llvm/Bitstream/BitstreamWriter.h
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/include/llvm/Support/Endian.h
M llvm/lib/CGData/CodeGenDataWriter.cpp
M llvm/lib/MC/DXContainerRootSignature.cpp
M llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
M llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/unittests/MC/StringTableBuilderTest.cpp
Log Message:
-----------
[Support] Deprecate one form of support::endian::byte_swap (NFC) (#161045)
This is a follow-up to #156140 and #160979, which deprecated one form of
write and read, respectively.
We have two forms of byte_swap:
template <typename value_type>
[[nodiscard]] inline value_type byte_swap(value_type value, endianness
endian)
template <typename value_type, endianness endian>
[[nodiscard]] inline value_type byte_swap(value_type value)
The difference is that endian is a function parameter in the former
but a template parameter in the latter.
This patch streamlines the code by migrating the use of the latter to
the former while deprecating the latter because the latter is just
forwarded to the former.
Commit: 9c6d216576065479b6826ebead1ffe74ab5e1273
https://github.com/llvm/llvm-project/commit/9c6d216576065479b6826ebead1ffe74ab5e1273
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/docs/FuzzingLLVM.rst
Log Message:
-----------
[llvm] Proofread FuzzingLLVM.rst (#161046)
Commit: e930644394735c9349bab73a8c33f0d215cd35f4
https://github.com/llvm/llvm-project/commit/e930644394735c9349bab73a8c33f0d215cd35f4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PackedVector.h
Log Message:
-----------
[ADT] clang-format PackedVector.h (NFC)
I'm planning to modify this file.
Commit: 48a6f2f85c8269d8326c185016801a4eb8d5dfd6
https://github.com/llvm/llvm-project/commit/48a6f2f85c8269d8326c185016801a4eb8d5dfd6
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Object/ArchiveWriter.cpp
A llvm/test/tools/llvm-lib/sym64-threshold.test
Log Message:
-----------
[Object][Archive] Recompute headers and symbol map when switching from COFF to GNU64 (#160606)
COFF format has no 64-bit version, so we use GNU64 instead. Since this
changes the headers, we need to recalculate everything.
Fixes #160112.
Commit: 71be13a6f09d59cf45863d36a3dcc5d72645e2d6
https://github.com/llvm/llvm-project/commit/71be13a6f09d59cf45863d36a3dcc5d72645e2d6
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
Log Message:
-----------
[VPlan] Rewrite VPExpandSCEVExprs in replaceSymbolicStrides.
Extend replaceSymbolicStrides to also replace SCEVUnknowns in
VPExpandSCEVExprs using the information from StridesMaps.
This results in simpler SCEV expansions in some cases.
Commit: d29798767cc10a0609b5f1f9f75f032b6760cf50
https://github.com/llvm/llvm-project/commit/d29798767cc10a0609b5f1f9f75f032b6760cf50
Author: Gábor Spaits <gaborspaits1 at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/vector-reductions.ll
Log Message:
-----------
[InstCombine] Transform `vector.reduce.add` and `splat` into multiplication (#161020)
Fixes #160066
Whenever we have a vector with all the same elemnts, created with
`insertelement` and `shufflevector` and we sum the vector, we have a
multiplication.
Commit: 2b67f5e0b444976057f097a6e4872177d2a1cc8b
https://github.com/llvm/llvm-project/commit/2b67f5e0b444976057f097a6e4872177d2a1cc8b
Author: Aadesh Premkumar <aadesh.premkumar at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
A llvm/test/CodeGen/SPIRV/image_store.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/signed_arithmetic_overflow.ll
Log Message:
-----------
[SPIRV] Addition of image_store.ll and signed_arithmetic_overflow.ll (#152289)
--Test for signed arithmetic overflow intrinsics, which is for now
expectedly failing
--Test checking that no duplicate image types are emitted.
---------
Co-authored-by: Michal Paszkowski <michal at michalpaszkowski.com>
Commit: 12f42e5ed9286711287e17ec35ea9bbdeb2aa92e
https://github.com/llvm/llvm-project/commit/12f42e5ed9286711287e17ec35ea9bbdeb2aa92e
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/frexp.ll
Log Message:
-----------
[SPIRV] Frexp intrinsic implementation (#157436)
- Make use of the OpenCL extended instruction frexp.
- Creates a variable and passes it to OpExtInst instruction
Commit: cac0635ee9e947b5f90130df2f471aa4b722e04b
https://github.com/llvm/llvm-project/commit/cac0635ee9e947b5f90130df2f471aa4b722e04b
Author: wanglei <wanglei at loongson.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
A llvm/test/CodeGen/LoongArch/merge-offset-option.ll
Log Message:
-----------
[LoongArch] Add option for merge base offset pass
Add `loongarch-enable-merge-offset` option to allow disabling the
`MergeBaseOffset` pass when using optimization.
Reviewers: SixWeining, heiher
Reviewed By: SixWeining, heiher
Pull Request: https://github.com/llvm/llvm-project/pull/161063
Commit: abffc542ff876d9e74d64ee5cb83ec405ec2e70e
https://github.com/llvm/llvm-project/commit/abffc542ff876d9e74d64ee5cb83ec405ec2e70e
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/test/CodeGen/X86/avx512-mask-op.ll
Log Message:
-----------
[X86][MemFold] Allow masked load folding if masks are equal (#161074)
Inspired by #160920#issuecomment-3341816198
Commit: 23d3caf854f59fcf6cc73a25240cd9f58ac64b6d
https://github.com/llvm/llvm-project/commit/23d3caf854f59fcf6cc73a25240cd9f58ac64b6d
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/exp10m1f.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp10m1f.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp10m1f.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor exp10m1f implementation to header-only in src/__support/math folder. (#159897)
Part of #147386
in preparation for: https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: eb420fd669523fa4d8875d43b76326048c52698b
https://github.com/llvm/llvm-project/commit/eb420fd669523fa4d8875d43b76326048c52698b
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bzl] Fix missing dep (#161126)
Flagged with `-Wprivate-header`.
Commit: 250854d3762deecdee9e0eae0330b124c6f6a3fa
https://github.com/llvm/llvm-project/commit/250854d3762deecdee9e0eae0330b124c6f6a3fa
Author: Mend Renovate <bot at renovateapp.com>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M .github/workflows/build-ci-container-windows.yml
M .github/workflows/build-ci-container.yml
M .github/workflows/build-metrics-container.yml
M .github/workflows/check-ci.yml
M .github/workflows/ci-post-commit-analyzer.yml
M .github/workflows/commit-access-review.yml
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/gha-codeql.yml
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/issue-write.yml
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libc-overlay-tests.yml
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/libclang-python-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/libcxx-build-containers.yml
M .github/workflows/libcxx-check-generated-files.yml
M .github/workflows/libcxx-run-benchmarks.yml
M .github/workflows/llvm-bugs.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/mlir-spirv-tests.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-code-lint.yml
M .github/workflows/pr-request-release-note.yml
M .github/workflows/premerge.yaml
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries-save-stage/action.yml
M .github/workflows/release-binaries-setup-stage/action.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-lit.yml
M .github/workflows/release-sources.yml
M .github/workflows/scorecard.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/unprivileged-download-artifact/action.yml
Log Message:
-----------
[Github] Update GHA Dependencies (#161107)
This PR contains the following updates:
| Package | Type | Update | Change | Pending |
|---|---|---|---|---|
|
[EnricoMi/publish-unit-test-result-action](https://redirect.github.com/EnricoMi/publish-unit-test-result-action)
| action | digest | `170bf24` -> `3a74b29` | |
|
[actions/attest-build-provenance](https://redirect.github.com/actions/attest-build-provenance)
| action | minor | `v1.0.0` -> `v1.4.4` | |
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | minor | `v4.1.1` -> `v4.3.0` | |
|
[actions/github-script](https://redirect.github.com/actions/github-script)
| action | minor | `v7.0.1` -> `v7.1.0` | |
| [actions/setup-node](https://redirect.github.com/actions/setup-node) |
action | minor | `v4.2.0` -> `v4.4.0` | |
|
[actions/setup-python](https://redirect.github.com/actions/setup-python)
| action | minor | `v5.4.0` -> `v5.6.0` | |
| actions/setup-python | action | digest | `39cd149` -> `2e3e4b1` | |
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact)
| action | patch | `v4.6.0` -> `v4.6.2` | |
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact)
| action | minor | `v4.3.3` -> `v4.6.2` | |
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact)
| action | patch | `4.6.0` -> `4.6.2` | |
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact)
| action | minor | `v4.3.0` -> `v4.6.2` | |
| [aminya/setup-cpp](https://redirect.github.com/aminya/setup-cpp) |
action | minor | `v1.1.1` -> `v1.7.1` | |
| [docker/login-action](https://redirect.github.com/docker/login-action)
| action | minor | `v3.3.0` -> `v3.5.0` | |
|
[github/codeql-action](https://redirect.github.com/github/codeql-action)
| action | minor | `v2.20.6` -> `v2.28.1` | |
|
[github/codeql-action](https://redirect.github.com/github/codeql-action)
| action | patch | `v3.30.3` -> `v3.30.4` | `v3.30.5` |
|
[hendrikmuhs/ccache-action](https://redirect.github.com/hendrikmuhs/ccache-action)
| action | patch | `v1.2.17` -> `v1.2.19` | |
| llvm/actions | action | digest | `22e9f90` -> `a1ea791` | |
|
[ossf/scorecard-action](https://redirect.github.com/ossf/scorecard-action)
| action | patch | `v2.4.1` -> `v2.4.2` | |
|
[pypa/gh-action-pypi-publish](https://redirect.github.com/pypa/gh-action-pypi-publish)
| action | minor | `v1.12.4` -> `v1.13.0` | |
| [python](https://redirect.github.com/actions/python-versions) |
uses-with | minor | `3.12` -> `3.13` | |
| [python](https://redirect.github.com/actions/python-versions) |
uses-with | minor | `3.11` -> `3.13` | |
| [python](https://redirect.github.com/actions/python-versions) |
uses-with | minor | `3.10` -> `3.13` | |
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
<details>
<summary>actions/attest-build-provenance
(actions/attest-build-provenance)</summary>
###
[`v1.4.4`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.4.4)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.4.3...v1.4.4)
##### What's Changed
- Bump predicate action from 1.1.3 to 1.1.4 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#310](https://redirect.github.com/actions/attest-build-provenance/pull/310)
- Bump [@actions/core](https://redirect.github.com/actions/core)
from 1.10.1 to 1.11.1 by
[@dependabot](https://redirect.github.com/dependabot) in
[#275](https://redirect.github.com/actions/attest-build-provenance/pull/275)
- Bump
[@actions/attest](https://redirect.github.com/actions/attest)
from 1.4.2 to 1.5.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#309](https://redirect.github.com/actions/attest-build-provenance/pull/309)
- Fix SLSA provenance bug related to `workflow_ref` OIDC token claims
containing the "@" symbol in the tag name
([actions/toolkit#1863](https://redirect.github.com/actions/toolkit/pull/1863))
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.4.3...v1.4.4>
###
[`v1.4.3`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.4.3)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.4.2...v1.4.3)
##### What's Changed
- Bump predicate from 1.1.2 to 1.1.3 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#226](https://redirect.github.com/actions/attest-build-provenance/pull/226)
- Bump
[@actions/attest](https://redirect.github.com/actions/attest)
from 1.3.1 to 1.4.1 by
[@dependabot](https://redirect.github.com/dependabot) in
[#212](https://redirect.github.com/actions/attest-build-provenance/pull/212)
- Bump
[@actions/attest](https://redirect.github.com/actions/attest)
from 1.4.1 to 1.4.2 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#225](https://redirect.github.com/actions/attest-build-provenance/pull/225)
- Fix bug w/ customized OIDC issuer URL for enterprise accounts
([#222](https://redirect.github.com/actions/attest-build-provenance/issues/222))
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.4.2...v1.4.3>
###
[`v1.4.2`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.4.2)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.4.1...v1.4.2)
##### What's Changed
- Bump actions/attest from 1.4.0 to 1.4.1 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#209](https://redirect.github.com/actions/attest-build-provenance/pull/209)
- Includes bug fix for issue with authenticated proxies
([actions/toolkit#1798](https://redirect.github.com/actions/toolkit/issues/1798))
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.4.1...v1.4.2>
###
[`v1.4.1`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.4.1)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.4.0...v1.4.1)
##### What's Changed
- Update predicate action to 1.1.2 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#197](https://redirect.github.com/actions/attest-build-provenance/pull/197)
- Dynamic construction of oidc issuer by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#195](https://redirect.github.com/actions/attest-build-provenance/pull/195)
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.4.0...v1.4.1>
###
[`v1.4.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.4.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.3.3...v1.4.0)
##### What's Changed
- Bump predicate action from 1.1.0 to 1.1.1 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#182](https://redirect.github.com/actions/attest-build-provenance/pull/182)
- Fix for JWKS proxy bug
- Bump actions/attest from 1.3.3 to 1.4.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#183](https://redirect.github.com/actions/attest-build-provenance/pull/183)
- Add `show-summary` input
- Format summary output as list
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.3.3...v1.4.0>
###
[`v1.3.3`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.3.3)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.3.2...v1.3.3)
##### What's Changed
- Bump actions/attest from 1.3.2 to 1.3.3 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#152](https://redirect.github.com/actions/attest-build-provenance/pull/152)
- Bugfix for properly handling glob exclusion patterns in `subject-path`
input
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.3.2...v1.3.3>
###
[`v1.3.2`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.3.2)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.3.1...v1.3.2)
##### What's Changed
- Bump actions/attest from 1.3.1 to 1.3.2 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#123](https://redirect.github.com/actions/attest-build-provenance/pull/123)
- Increase timeout for OCI operations
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.3.1...v1.3.2>
###
[`v1.3.1`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.3.1)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.3.0...v1.3.1)
##### What's Changed
- Bump actions/attest from 1.3.0 to 1.3.1 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#117](https://redirect.github.com/actions/attest-build-provenance/pull/117)
- Bugfix when detecting support for the referrers API with OCI
registries
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.3.0...v1.3.1>
###
[`v1.3.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.3.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.2.0...v1.3.0)
##### What's Changed
- Bump actions/attest-build-provenance/predicate from 1.0.0 to 1.1.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#116](https://redirect.github.com/actions/attest-build-provenance/pull/116)
- Switch to new GH provenance [build
type](https://actions.github.io/buildtypes/workflow/v1)
- Bump actions/attest from 1.2.0 to 1.3.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#116](https://redirect.github.com/actions/attest-build-provenance/pull/116)
- Dynamic construction of GitHub API URLs based on GITHUB\_SERVER\_URL
- Improved handling of Rekor 409 responses
- Bugfix - detection of registries with support for the OCI referrers
API
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.2.0...v1.3.0>
###
[`v1.2.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.2.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.1.2...v1.2.0)
##### What's Changed
- Bump actions/attest from 1.1.2 to 1.2.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#101](https://redirect.github.com/actions/attest-build-provenance/pull/101)
- Batch processing w/ exponential backoff
- Bugfix when pushing attestation to OCI registry
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.1.2...v1.2.0>
###
[`v1.1.2`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.1.2)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.1.1...v1.1.2)
##### What's Changed
- Bump actions/attest from 1.1.1 to 1.1.2 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#79](https://redirect.github.com/actions/attest-build-provenance/pull/79)
- Downcase subject name for OCI images
- Fix accept header when retrieving image manifest
- Support variants of the Docker Hub registry name
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.1.1...v1.1.2>
###
[`v1.1.1`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.1.1)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.1.0...v1.1.1)
##### What's Changed
- Bump actions/attest from v1.1.0 to v1.1.1 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#67](https://redirect.github.com/actions/attest-build-provenance/pull/67)
- Bump
[@sigstore/sign](https://redirect.github.com/sigstore/sign) from
2.3.0 to 2.3.1
- Bump [@sigstore/oci](https://redirect.github.com/sigstore/oci)
from 0.3.0 to 0.3.2
- Include more detail in error logging
- Send API errors to GHA debug log
- Fix bug preventing failed API requests from being retried
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.1.0...v1.1.1>
###
[`v1.1.0`](https://redirect.github.com/actions/attest-build-provenance/releases/tag/v1.1.0)
[Compare
Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1.0.0...v1.1.0)
##### What's Changed
- Bump actions/attest to v1.1.0 by
[@bdehamer](https://redirect.github.com/bdehamer) in
[#65](https://redirect.github.com/actions/attest-build-provenance/pull/65)
- adds list support for `subjectPath` input
- limit attestation subject count
- ensure subject globs match only files
**Full Changelog**:
<https://github.com/actions/attest-build-provenance/compare/v1.0.0...v1.1.0>
</details>
<details>
<summary>actions/checkout (actions/checkout)</summary>
###
[`v4.3.0`](https://redirect.github.com/actions/checkout/releases/tag/v4.3.0)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.2.2...v4.3.0)
##### What's Changed
- docs: update README.md by
[@motss](https://redirect.github.com/motss) in
[https://github.com/actions/checkout/pull/1971](https://redirect.github.com/actions/checkout/pull/1971)
- Add internal repos for checking out multiple repositories by
[@mouismail](https://redirect.github.com/mouismail) in
[https://github.com/actions/checkout/pull/1977](https://redirect.github.com/actions/checkout/pull/1977)
- Documentation update - add recommended permissions to Readme by
[@benwells](https://redirect.github.com/benwells) in
[https://github.com/actions/checkout/pull/2043](https://redirect.github.com/actions/checkout/pull/2043)
- Adjust positioning of user email note and permissions heading by
[@joshmgross](https://redirect.github.com/joshmgross) in
[https://github.com/actions/checkout/pull/2044](https://redirect.github.com/actions/checkout/pull/2044)
- Update README.md by
[@nebuk89](https://redirect.github.com/nebuk89) in
[https://github.com/actions/checkout/pull/2194](https://redirect.github.com/actions/checkout/pull/2194)
- Update CODEOWNERS for actions by
[@TingluoHuang](https://redirect.github.com/TingluoHuang) in
[https://github.com/actions/checkout/pull/2224](https://redirect.github.com/actions/checkout/pull/2224)
- Update package dependencies by
[@salmanmkc](https://redirect.github.com/salmanmkc) in
[https://github.com/actions/checkout/pull/2236](https://redirect.github.com/actions/checkout/pull/2236)
- Prepare release v4.3.0 by
[@salmanmkc](https://redirect.github.com/salmanmkc) in
[https://github.com/actions/checkout/pull/2237](https://redirect.github.com/actions/checkout/pull/2237)
##### New Contributors
- [@motss](https://redirect.github.com/motss) made their first
contribution in
[https://github.com/actions/checkout/pull/1971](https://redirect.github.com/actions/checkout/pull/1971)
- [@mouismail](https://redirect.github.com/mouismail) made their
first contribution in
[https://github.com/actions/checkout/pull/1977](https://redirect.github.com/actions/checkout/pull/1977)
- [@benwells](https://redirect.github.com/benwells) made their
first contribution in
[https://github.com/actions/checkout/pull/2043](https://redirect.github.com/actions/checkout/pull/2043)
- [@nebuk89](https://redirect.github.com/nebuk89) made their
first contribution in
[https://github.com/actions/checkout/pull/2194](https://redirect.github.com/actions/checkout/pull/2194)
- [@salmanmkc](https://redirect.github.com/salmanmkc) made their
first contribution in
[https://github.com/actions/checkout/pull/2236](https://redirect.github.com/actions/checkout/pull/2236)
**Full Changelog**:
https://github.com/actions/checkout/compare/v4...v4.3.0
###
[`v4.2.2`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v422)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.2.1...v4.2.2)
- `url-helper.ts` now leverages well-known environment variables by
[@jww3](https://redirect.github.com/jww3) in
[#1941](https://redirect.github.com/actions/checkout/pull/1941)
- Expand unit test coverage for `isGhes` by
[@jww3](https://redirect.github.com/jww3) in
[#1946](https://redirect.github.com/actions/checkout/pull/1946)
###
[`v4.2.1`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v421)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.2.0...v4.2.1)
- Check out other refs/\* by commit if provided, fall back to ref by
[@orhantoy](https://redirect.github.com/orhantoy) in
[#1924](https://redirect.github.com/actions/checkout/pull/1924)
###
[`v4.2.0`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v420)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.7...v4.2.0)
- Add Ref and Commit outputs by
[@lucacome](https://redirect.github.com/lucacome) in
[#1180](https://redirect.github.com/actions/checkout/pull/1180)
- Dependency updates by
[@dependabot-](https://redirect.github.com/dependabot-)
[#1777](https://redirect.github.com/actions/checkout/pull/1777),
[#1872](https://redirect.github.com/actions/checkout/pull/1872)
###
[`v4.1.7`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v417)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.6...v4.1.7)
- Bump the minor-npm-dependencies group across 1 directory with 4
updates by [@dependabot](https://redirect.github.com/dependabot)
in
[#1739](https://redirect.github.com/actions/checkout/pull/1739)
- Bump actions/checkout from 3 to 4 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1697](https://redirect.github.com/actions/checkout/pull/1697)
- Check out other refs/\* by commit by
[@orhantoy](https://redirect.github.com/orhantoy) in
[#1774](https://redirect.github.com/actions/checkout/pull/1774)
- Pin actions/checkout's own workflows to a known, good, stable version.
by [@jww3](https://redirect.github.com/jww3) in
[#1776](https://redirect.github.com/actions/checkout/pull/1776)
###
[`v4.1.6`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v416)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.5...v4.1.6)
- Check platform to set archive extension appropriately by
[@cory-miller](https://redirect.github.com/cory-miller) in
[#1732](https://redirect.github.com/actions/checkout/pull/1732)
###
[`v4.1.5`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v415)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.4...v4.1.5)
- Update NPM dependencies by
[@cory-miller](https://redirect.github.com/cory-miller) in
[#1703](https://redirect.github.com/actions/checkout/pull/1703)
- Bump github/codeql-action from 2 to 3 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1694](https://redirect.github.com/actions/checkout/pull/1694)
- Bump actions/setup-node from 1 to 4 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1696](https://redirect.github.com/actions/checkout/pull/1696)
- Bump actions/upload-artifact from 2 to 4 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1695](https://redirect.github.com/actions/checkout/pull/1695)
- README: Suggest `user.email` to be
`41898282+github-actions[bot]@users.noreply.github.com` by
[@cory-miller](https://redirect.github.com/cory-miller) in
[#1707](https://redirect.github.com/actions/checkout/pull/1707)
###
[`v4.1.4`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v414)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.3...v4.1.4)
- Disable `extensions.worktreeConfig` when disabling `sparse-checkout`
by [@jww3](https://redirect.github.com/jww3) in
[#1692](https://redirect.github.com/actions/checkout/pull/1692)
- Add dependabot config by
[@cory-miller](https://redirect.github.com/cory-miller) in
[#1688](https://redirect.github.com/actions/checkout/pull/1688)
- Bump the minor-actions-dependencies group with 2 updates by
[@dependabot](https://redirect.github.com/dependabot) in
[#1693](https://redirect.github.com/actions/checkout/pull/1693)
- Bump word-wrap from 1.2.3 to 1.2.5 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1643](https://redirect.github.com/actions/checkout/pull/1643)
###
[`v4.1.3`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v413)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.2...v4.1.3)
- Check git version before attempting to disable `sparse-checkout` by
[@jww3](https://redirect.github.com/jww3) in
[#1656](https://redirect.github.com/actions/checkout/pull/1656)
- Add SSH user parameter by
[@cory-miller](https://redirect.github.com/cory-miller) in
[#1685](https://redirect.github.com/actions/checkout/pull/1685)
- Update `actions/checkout` version in `update-main-version.yml` by
[@jww3](https://redirect.github.com/jww3) in
[#1650](https://redirect.github.com/actions/checkout/pull/1650)
###
[`v4.1.2`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v412)
[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4.1.1...v4.1.2)
- Fix: Disable sparse checkout whenever `sparse-checkout` option is not
present [@dscho](https://redirect.github.com/dscho) in
[#1598](https://redirect.github.com/actions/checkout/pull/1598)
</details>
<details>
<summary>actions/github-script (actions/github-script)</summary>
###
[`v7.1.0`](https://redirect.github.com/actions/github-script/releases/tag/v7.1.0)
[Compare
Source](https://redirect.github.com/actions/github-script/compare/v7.0.1...v7.1.0)
#### What's Changed
- Upgrade husky to v9 by
[@benelan](https://redirect.github.com/benelan) in
[#482](https://redirect.github.com/actions/github-script/pull/482)
- Add workflow file for publishing releases to immutable action package
by [@Jcambass](https://redirect.github.com/Jcambass) in
[#485](https://redirect.github.com/actions/github-script/pull/485)
- Upgrade IA Publish by
[@Jcambass](https://redirect.github.com/Jcambass) in
[#486](https://redirect.github.com/actions/github-script/pull/486)
- Fix workflow status badges by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#497](https://redirect.github.com/actions/github-script/pull/497)
- Update usage of `actions/upload-artifact` by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#512](https://redirect.github.com/actions/github-script/pull/512)
- Clear up package name confusion by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#514](https://redirect.github.com/actions/github-script/pull/514)
- Update dependencies with `npm audit fix` by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#515](https://redirect.github.com/actions/github-script/pull/515)
- Specify that the used script is JavaScript by
[@timotk](https://redirect.github.com/timotk) in
[#478](https://redirect.github.com/actions/github-script/pull/478)
- chore: Add Dependabot for NPM and Actions by
[@nschonni](https://redirect.github.com/nschonni) in
[#472](https://redirect.github.com/actions/github-script/pull/472)
- Define `permissions` in workflows and update actions by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#531](https://redirect.github.com/actions/github-script/pull/531)
- chore: Add Dependabot for .github/actions/install-dependencies by
[@nschonni](https://redirect.github.com/nschonni) in
[#532](https://redirect.github.com/actions/github-script/pull/532)
- chore: Remove .vscode settings by
[@nschonni](https://redirect.github.com/nschonni) in
[#533](https://redirect.github.com/actions/github-script/pull/533)
- ci: Use github/setup-licensed by
[@nschonni](https://redirect.github.com/nschonni) in
[#473](https://redirect.github.com/actions/github-script/pull/473)
- make octokit instance available as octokit on top of github, to make
it easier to seamlessly copy examples from GitHub rest api or octokit
documentations by
[@iamstarkov](https://redirect.github.com/iamstarkov) in
[#508](https://redirect.github.com/actions/github-script/pull/508)
- Remove `octokit` README updates for v7 by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#557](https://redirect.github.com/actions/github-script/pull/557)
- docs: add "exec" usage examples by
[@neilime](https://redirect.github.com/neilime) in
[#546](https://redirect.github.com/actions/github-script/pull/546)
- Bump ruby/setup-ruby from 1.213.0 to 1.222.0 by
[@dependabot](https://redirect.github.com/dependabot)\[bot] in
[#563](https://redirect.github.com/actions/github-script/pull/563)
- Bump ruby/setup-ruby from 1.222.0 to 1.229.0 by
[@dependabot](https://redirect.github.com/dependabot)\[bot] in
[#575](https://redirect.github.com/actions/github-script/pull/575)
- Clearly document passing inputs to the `script` by
[@joshmgross](https://redirect.github.com/joshmgross) in
[#603](https://redirect.github.com/actions/github-script/pull/603)
- Update README.md by
[@nebuk89](https://redirect.github.com/nebuk89) in
[#610](https://redirect.github.com/actions/github-script/pull/610)
#### New Contributors
- [@benelan](https://redirect.github.com/benelan) made their
first contribution in
[#482](https://redirect.github.com/actions/github-script/pull/482)
- [@Jcambass](https://redirect.github.com/Jcambass) made their
first contribution in
[#485](https://redirect.github.com/actions/github-script/pull/485)
- [@timotk](https://redirect.github.com/timotk) made their first
contribution in
[#478](https://redirect.github.com/actions/github-script/pull/478)
- [@iamstarkov](https://redirect.github.com/iamstarkov) made
their first contribution in
[#508](https://redirect.github.com/actions/github-script/pull/508)
- [@neilime](https://redirect.github.com/neilime) made their
first contribution in
[#546](https://redirect.github.com/actions/github-script/pull/546)
- [@nebuk89](https://redirect.github.com/nebuk89) made their
first contribution in
[#610](https://redirect.github.com/actions/github-script/pull/610)
**Full Changelog**:
<https://github.com/actions/github-script/compare/v7...v7.1.0>
</details>
<details>
<summary>actions/setup-node (actions/setup-node)</summary>
###
[`v4.4.0`](https://redirect.github.com/actions/setup-node/releases/tag/v4.4.0)
[Compare
Source](https://redirect.github.com/actions/setup-node/compare/v4.3.0...v4.4.0)
##### What's Changed
##### Bug fixes:
- Make eslint-compact matcher compatible with Stylelint by
[@FloEdelmann](https://redirect.github.com/FloEdelmann)
in [#98](https://redirect.github.com/actions/setup-node/pull/98)
- Add support for indented eslint output by
[@fregante](https://redirect.github.com/fregante)
in [#1245](https://redirect.github.com/actions/setup-node/pull/1245)
##### Enhancement:
- Support private mirrors by
[@marco-ippolito](https://redirect.github.com/marco-ippolito)
in [#1240](https://redirect.github.com/actions/setup-node/pull/1240)
##### Dependency update:
- Upgrade
[@action/cache](https://redirect.github.com/action/cache) from
4.0.2 to 4.0.3
by [@aparnajyothi-y](https://redirect.github.com/aparnajyothi-y)
in [#1262](https://redirect.github.com/actions/setup-node/pull/1262)
##### New Contributors
- [@FloEdelmann](https://redirect.github.com/FloEdelmann) made
their first contribution
in [#98](https://redirect.github.com/actions/setup-node/pull/98)
- [@fregante](https://redirect.github.com/fregante) made their
first contribution
in [#1245](https://redirect.github.com/actions/setup-node/pull/1245)
- [@marco-ippolito](https://redirect.github.com/marco-ippolito)
made their first contribution
in [#1240](https://redirect.github.com/actions/setup-node/pull/1240)
**Full
Changelog**: <https://github.com/actions/setup-node/compare/v4...v4.4.0>
###
[`v4.3.0`](https://redirect.github.com/actions/setup-node/releases/tag/v4.3.0)
[Compare
Source](https://redirect.github.com/actions/setup-node/compare/v4.2.0...v4.3.0)
#### What's Changed
##### Dependency updates
- Upgrade
[@actions/glob](https://redirect.github.com/actions/glob) from
0.4.0 to 0.5.0 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1200](https://redirect.github.com/actions/setup-node/pull/1200)
- Upgrade
[@action/cache](https://redirect.github.com/action/cache) from
4.0.0 to 4.0.2 by
[@gowridurgad](https://redirect.github.com/gowridurgad) in
[#1251](https://redirect.github.com/actions/setup-node/pull/1251)
- Upgrade [@vercel/ncc](https://redirect.github.com/vercel/ncc)
from 0.38.1 to 0.38.3 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1203](https://redirect.github.com/actions/setup-node/pull/1203)
- Upgrade
[@actions/tool-cache](https://redirect.github.com/actions/tool-cache)
from 2.0.1 to 2.0.2 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1220](https://redirect.github.com/actions/setup-node/pull/1220)
#### New Contributors
- [@gowridurgad](https://redirect.github.com/gowridurgad) made
their first contribution in
[#1251](https://redirect.github.com/actions/setup-node/pull/1251)
**Full Changelog**:
<https://github.com/actions/setup-node/compare/v4...v4.3.0>
</details>
<details>
<summary>actions/setup-python (actions/setup-python)</summary>
###
[`v5.6.0`](https://redirect.github.com/actions/setup-python/releases/tag/v5.6.0)
[Compare
Source](https://redirect.github.com/actions/setup-python/compare/v5.5.0...v5.6.0)
##### What's Changed
- Workflow updates related to Ubuntu 20.04 by
[@aparnajyothi-y](https://redirect.github.com/aparnajyothi-y) in
[#1065](https://redirect.github.com/actions/setup-python/pull/1065)
- Fix for Candidate Not Iterable Error by
[@aparnajyothi-y](https://redirect.github.com/aparnajyothi-y) in
[#1082](https://redirect.github.com/actions/setup-python/pull/1082)
- Upgrade semver and
[@types/semver](https://redirect.github.com/types/semver) by
[@dependabot](https://redirect.github.com/dependabot) in
[#1091](https://redirect.github.com/actions/setup-python/pull/1091)
- Upgrade prettier from 2.8.8 to 3.5.3 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1046](https://redirect.github.com/actions/setup-python/pull/1046)
- Upgrade ts-jest from 29.1.2 to 29.3.2 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1081](https://redirect.github.com/actions/setup-python/pull/1081)
**Full Changelog**:
<https://github.com/actions/setup-python/compare/v5...v5.6.0>
###
[`v5.5.0`](https://redirect.github.com/actions/setup-python/releases/tag/v5.5.0)
[Compare
Source](https://redirect.github.com/actions/setup-python/compare/v5.4.0...v5.5.0)
#### What's Changed
##### Enhancements:
- Support free threaded Python versions like '3.13t' by
[@colesbury](https://redirect.github.com/colesbury) in
[#973](https://redirect.github.com/actions/setup-python/pull/973)
- Enhance Workflows: Include ubuntu-arm runners, Add e2e Testing for
free threaded and Upgrade
[@action/cache](https://redirect.github.com/action/cache) from
4.0.0 to 4.0.3 by
[@priya-kinthali](https://redirect.github.com/priya-kinthali) in
[#1056](https://redirect.github.com/actions/setup-python/pull/1056)
- Add support for .tool-versions file in setup-python by
[@mahabaleshwars](https://redirect.github.com/mahabaleshwars) in
[#1043](https://redirect.github.com/actions/setup-python/pull/1043)
##### Bug fixes:
- Fix architecture for pypy on Linux ARM64 by
[@mayeut](https://redirect.github.com/mayeut) in
[#1011](https://redirect.github.com/actions/setup-python/pull/1011)
This update maps arm64 to aarch64 for Linux ARM64 PyPy installations.
##### Dependency updates:
- Upgrade [@vercel/ncc](https://redirect.github.com/vercel/ncc)
from 0.38.1 to 0.38.3 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1016](https://redirect.github.com/actions/setup-python/pull/1016)
- Upgrade
[@actions/glob](https://redirect.github.com/actions/glob) from
0.4.0 to 0.5.0 by
[@dependabot](https://redirect.github.com/dependabot) in
[#1015](https://redirect.github.com/actions/setup-python/pull/1015)
#### New Contributors
- [@colesbury](https://redirect.github.com/colesbury) made their
first contribution in
[#973](https://redirect.github.com/actions/setup-python/pull/973)
- [@mahabaleshwars](https://redirect.github.com/mahabaleshwars)
made their first contribution in
[#1043](https://redirect.github.com/actions/setup-python/pull/1043)
**Full Changelog**:
<https://github.com/actions/setup-python/compare/v5...v5.5.0>
</details>
<details>
<summary>actions/upload-artifact (actions/upload-artifact)</summary>
###
[`v4.6.2`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.6.2)
[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.6.1...v4.6.2)
#### What's Changed
- Update to use artifact 2.3.2 package & prepare for new upload-artifact
release by [@salmanmkc](https://redirect.github.com/salmanmkc) in
[#685](https://redirect.github.com/actions/upload-artifact/pull/685)
#### New Contributors
- [@salmanmkc](https://redirect.github.com/salmanmkc) made their
first contribution in
[#685](https://redirect.github.com/actions/upload-artifact/pull/685)
**Full Changelog**:
<https://github.com/actions/upload-artifact/compare/v4...v4.6.2>
###
[`v4.6.1`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.6.1)
[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.6.0...v4.6.1)
#### What's Changed
- Update to use artifact 2.2.2 package by
[@yacaovsnc](https://redirect.github.com/yacaovsnc) in
[#673](https://redirect.github.com/actions/upload-artifact/pull/673)
**Full Changelog**:
<https://github.com/actions/upload-artifact/compare/v4...v4.6.1>
</details>
<details>
<summary>aminya/setup-cpp (aminya/setup-cpp)</summary>
###
[`v1.7.1`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.7.1)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.7.0...v1.7.1)
##### What's Changed
- fix: prefer complete Window LLVM package
[@aminya](https://redirect.github.com/aminya) in
[#425](https://redirect.github.com/aminya/setup-cpp/pull/425)
- fix: add LLVM 20.1.7 by
[@aminya](https://redirect.github.com/aminya) in
[#424](https://redirect.github.com/aminya/setup-cpp/pull/424)
- fix: add mingw 15.1-r2 by
[@aminya](https://redirect.github.com/aminya) in
[#424](https://redirect.github.com/aminya/setup-cpp/pull/424)
- fix: install gcovr via apt on Ubuntu by default by
[@aminya](https://redirect.github.com/aminya) in
[#424](https://redirect.github.com/aminya/setup-cpp/pull/424)
- feat: add tar tool by
[@aminya](https://redirect.github.com/aminya) in
[#425](https://redirect.github.com/aminya/setup-cpp/pull/425)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.7.0...v1.7.1>
###
[`v1.7.0`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.7.0)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.6.2...v1.7.0)
##### What's Changed
- feat: update default LLVM to v20 by
[@aminya](https://redirect.github.com/aminya) in
[#387](https://redirect.github.com/aminya/setup-cpp/pull/387)
- feat: default to GCC 15 on Windows and MacOS by
[@aminya](https://redirect.github.com/aminya) in
[#387](https://redirect.github.com/aminya/setup-cpp/pull/387)
- fix: update cmake, task, powershell, meson, doxygen by
[@aminya](https://redirect.github.com/aminya) in
[#414](https://redirect.github.com/aminya/setup-cpp/pull/414)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.6.2...v1.7.0>
###
[`v1.6.2`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.6.2)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.6.1...v1.6.2)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.6.1...v1.6.2>
###
[`v1.6.1`](https://redirect.github.com/aminya/setup-cpp/compare/v1.6.0...v1.6.1)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.6.0...v1.6.1)
###
[`v1.6.0`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.6.0)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.5.4...v1.6.0)
##### What's Changed
- feat: add apt-fast as an installable tool by
[@aminya](https://redirect.github.com/aminya) in
[#401](https://redirect.github.com/aminya/setup-cpp/pull/401)
- fix: add apt-fast optimizations by
[@aminya](https://redirect.github.com/aminya) in
[#402](https://redirect.github.com/aminya/setup-cpp/pull/402)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.5.4...v1.6.0>
###
[`v1.5.4`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.5.4)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.5.3...v1.5.4)
##### What's Changed
- fix: avoid rc sourcing loops + fix: always add guards for sourcing rc
files by [@aminya](https://redirect.github.com/aminya) in
[#397](https://redirect.github.com/aminya/setup-cpp/pull/397)
- [fix: add missing git option for
actions](https://redirect.github.com/aminya/setup-cpp/commit/d0235b0adb97722c83c6f48ccfad4c98c083c0e4)
by [@aminya](https://redirect.github.com/aminya)
- [fix: ignore setup-cpp cli installation
errors](https://redirect.github.com/aminya/setup-cpp/commit/d10f4b6db061e4bd794e409852bc38e33cc5e4a6)
by [@aminya](https://redirect.github.com/aminya)
- [fix: fix addition of git to PATH on
Windows](https://redirect.github.com/aminya/setup-cpp/commit/75890615f7a4d1f3833f0f9008be852b0a1b256a)
by [@aminya](https://redirect.github.com/aminya)
- [fix: fix add-apt-repository in
Debian](https://redirect.github.com/aminya/setup-cpp/commit/55f022dea4b4667ba75821264c21fc8121bd3f06)
by [@aminya](https://redirect.github.com/aminya)
- [fix: fix llvm add-apt-repository for
debian](https://redirect.github.com/aminya/setup-cpp/commit/05bd2b5297d0c94ccbd895c9e7f35a5b88dbdee8)
by [@aminya](https://redirect.github.com/aminya)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.5.3...v1.5.4>
###
[`v1.5.3`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.5.3)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.5.2...v1.5.3)
- fix: remove exports map from package by
[@aminya](https://redirect.github.com/aminya) in
[7f46810eeda56](https://redirect.github.com/aminya/setup-cpp/commit/6370aaa0252a93c71dcc4cf49397f46810eeda56)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.5.2...v1.5.3>
###
[`v1.5.2`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.5.2)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.5.1...v1.5.2)
- fix: fix CLI shabang not working - independent lib by
[@aminya](https://redirect.github.com/aminya) in
[c88b4364ef50](https://redirect.github.com/aminya/setup-cpp/commit/95a7de4f2eceb0baf03a70a1edb7c88b4364ef50)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.5.1...v1.5.2>
###
[`v1.5.1`](https://redirect.github.com/aminya/setup-cpp/compare/v1.5.0...v1.5.1)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.5.0...v1.5.1)
###
[`v1.5.0`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.5.0)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.4.0...v1.5.0)
##### What's Changed
- feat: allow using setup-cpp as a library by
[@aminya](https://redirect.github.com/aminya) in
[#386](https://redirect.github.com/aminya/setup-cpp/pull/386)
- fix: pin vcpkg on Alpine Arm64 by
[@aminya](https://redirect.github.com/aminya) in
[#389](https://redirect.github.com/aminya/setup-cpp/pull/389)
- fix: do not add LLVM libraries to dyld by default by
[@aminya](https://redirect.github.com/aminya) in
[#388](https://redirect.github.com/aminya/setup-cpp/pull/388)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.4.0...v1.5.0>
###
[`v1.4.0`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.4.0)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.3.0...v1.4.0)
##### What's Changed
- 🎉 feat: support Alpine + add setup-alpine package by
[@aminya](https://redirect.github.com/aminya) in
[#379](https://redirect.github.com/aminya/setup-cpp/pull/379)
- ci: add docker tags with the base platform versions by
[@aminya](https://redirect.github.com/aminya) in
[#381](https://redirect.github.com/aminya/setup-cpp/pull/381)
(e.g. `setup-cpp-ubuntu:20.04`)
- fix: detect externally managed Python to avoid warnings by
[@aminya](https://redirect.github.com/aminya) in
[#379](https://redirect.github.com/aminya/setup-cpp/pull/379)
##### Alpine Images (amd64 and arm64)
Setup-cpp now provides prebuilt images for Alpine with support for base
tools, and compilers `llvm`, `gcc`, and `mingw` available for `amd64`
and `arm64` architectures.
Base image with `cmake, ninja, task, vcpkg, python, make, cppcheck,
gcovr, doxygen, ccache, conan, meson, cmakelang` for Alpine:
```dockerfile
FROM aminya/setup-cpp-alpine:3.21 AS builder
```
Image with `llvm` and the base tools:
```dockerfile
FROM aminya/setup-cpp-alpine-llvm:3.21 AS builder
```
Image with `gcc` and the base tools:
```dockerfile
FROM aminya/setup-cpp-alpine-gcc:3.21 AS builder
```
Image with `mingw` and the base tools:
```dockerfile
FROM aminya/setup-cpp-alpine-mingw:3.21 AS builder
```
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.3.0...v1.4.0>
###
[`v1.3.0`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.3.0)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.2.2...v1.3.0)
##### What's Changed
- feat: add Ubuntu 20 and 24 docker builds by
[@aminya](https://redirect.github.com/aminya) in
[#375](https://redirect.github.com/aminya/setup-cpp/pull/375)
- fix: fix python installation on Ubuntu 20 by
[@aminya](https://redirect.github.com/aminya) in
[#375](https://redirect.github.com/aminya/setup-cpp/pull/375)
- chore(deps): update devdependencies by
[@renovate](https://redirect.github.com/renovate) in
[#376](https://redirect.github.com/aminya/setup-cpp/pull/376)
##### Breaking changes for Ubuntu Docker images
The `latest` tag for `setup-cpp` on Docker now points to Ubuntu `24.04`.
Please pin the specific version if needed:
Base image with `cmake, ninja, task, vcpkg, python, make, cppcheck,
gcovr, doxygen, ccache, conan, meson, cmakelang` for Ubuntu 24.04:
```dockerfile
FROM aminya/setup-cpp-ubuntu:24.04-1.3.0 AS builder
```
Image with `llvm` and the base tools:
```dockerfile
FROM aminya/setup-cpp-ubuntu-llvm:24.04-1.3.0 AS builder
```
Image with `gcc` and the base tools:
```dockerfile
FROM aminya/setup-cpp-ubuntu-gcc:24.04-1.3.0 AS builder
```
Image with `mingw` and the base tools:
```dockerfile
FROM aminya/setup-cpp-ubuntu-mingw:24.04-1.3.0 AS builder
```
There are also the variants for Ubuntu `22.04`
```dockerfile
FROM aminya/setup-cpp-ubuntu:22.04-1.3.0 AS builder
FROM aminya/setup-cpp-ubuntu-llvm:22.04-1.3.0 AS builder
FROM aminya/setup-cpp-ubuntu-gcc:22.04-1.3.0 AS builder
FROM aminya/setup-cpp-ubuntu-mingw:22.04-1.3.0 AS builder
```
And for Ubuntu `20.04`:
```dockerfile
FROM aminya/setup-cpp-ubuntu:20.04-1.3.0 AS builder
FROM aminya/setup-cpp-ubuntu-llvm:20.04-1.3.0 AS builder
FROM aminya/setup-cpp-ubuntu-gcc:20.04-1.3.0 AS builder
FROM aminya/setup-cpp-ubuntu-mingw:20.04-1.3.0 AS builder
```
Note that `nala` is no longer included in the setup-cpp images by
default. You can install it manually via `setup-cpp --nala true` in your
Docker image if you rely on it.
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.2.2...v1.3.0>
###
[`v1.2.2`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.2.2)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.2.1...v1.2.2)
##### What's Changed
- 🎉 ci: tests and executables for Linux arm by
[@aminya](https://redirect.github.com/aminya) in
[#363](https://redirect.github.com/aminya/setup-cpp/pull/363)
- fix apt installation fallbacks to latest by
[@aminya](https://redirect.github.com/aminya) in
[#363](https://redirect.github.com/aminya/setup-cpp/pull/363)
- fix old LLVM on latest Ubuntu arm by
[@aminya](https://redirect.github.com/aminya) in
[#363](https://redirect.github.com/aminya/setup-cpp/pull/363)
- feat: install sccache on latest ubuntu arm by
[@aminya](https://redirect.github.com/aminya) in
[#373](https://redirect.github.com/aminya/setup-cpp/pull/373)
- fix Doxygen on Linux Arm by
[@aminya](https://redirect.github.com/aminya) in
[#363](https://redirect.github.com/aminya/setup-cpp/pull/363)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.2.1...v1.2.2>
###
[`v1.2.1`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.2.1)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.2.0...v1.2.1)
##### What's Changed
- 🎉 feat: add multi-architecture Docker images for setup-cpp by
[@aminya](https://redirect.github.com/aminya) in
[#361](https://redirect.github.com/aminya/setup-cpp/pull/361)
- 🎉 feat: install LLVM via brew on Mac if possible by
[@aminya](https://redirect.github.com/aminya) in
[#367](https://redirect.github.com/aminya/setup-cpp/pull/367) and
[#364](https://redirect.github.com/aminya/setup-cpp/pull/364)
- 🎉 fix: avoid already installed warnings for brew by
[@aminya](https://redirect.github.com/aminya) in
[#369](https://redirect.github.com/aminya/setup-cpp/pull/369)
- feat: add git as an installable tool by
[@aminya](https://redirect.github.com/aminya) in
[#362](https://redirect.github.com/aminya/setup-cpp/pull/362)
- fix: add polyfill for crypto.randomuuid for Node 12 by
[@aminya](https://redirect.github.com/aminya) in
[#368](https://redirect.github.com/aminya/setup-cpp/pull/368) and
[#370](https://redirect.github.com/aminya/setup-cpp/pull/370)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.1.1...v1.2.0>
###
[`v1.2.0`](https://redirect.github.com/aminya/setup-cpp/releases/tag/v1.2.0)
[Compare
Source](https://redirect.github.com/aminya/setup-cpp/compare/v1.1.1...v1.2.0)
##### What's Changed
Note: superseded by v1.2.1
- feat: add multi-architecture Docker images for setup-cpp by
[@aminya](https://redirect.github.com/aminya) in
[#361](https://redirect.github.com/aminya/setup-cpp/pull/361)
- feat: install LLVM via brew on Mac if possible by
[@aminya](https://redirect.github.com/aminya) in
[#367](https://redirect.github.com/aminya/setup-cpp/pull/367) and
[#364](https://redirect.github.com/aminya/setup-cpp/pull/364)
- feat: add git as an installable tool by
[@aminya](https://redirect.github.com/aminya) in
[#362](https://redirect.github.com/aminya/setup-cpp/pull/362)
- fix: avoid already installed warnings for brew by
[@aminya](https://redirect.github.com/aminya) in
[#369](https://redirect.github.com/aminya/setup-cpp/pull/369)
- fix: add polyfill for crypto.randomuuid for Node 12 by
[@aminya](https://redirect.github.com/aminya) in
[#368](https://redirect.github.com/aminya/setup-cpp/pull/368) and
[#370](https://redirect.github.com/aminya/setup-cpp/pull/370)
**Full Changelog**:
<https://github.com/aminya/setup-cpp/compare/v1.1.1...v1.2.0>
</details>
<details>
<summary>docker/login-action (docker/login-action)</summary>
###
[`v3.5.0`](https://redirect.github.com/docker/login-action/releases/tag/v3.5.0)
[Compare
Source](https://redirect.github.com/docker/login-action/compare/v3.4.0...v3.5.0)
- Support dual-stack endpoints for AWS ECR by
[@Spacefish](https://redirect.github.com/Spacefish)
[@crazy-max](https://redirect.github.com/crazy-max) in
[#874](https://redirect.github.com/docker/login-action/pull/874)
[#876](https://redirect.github.com/docker/login-action/pull/876)
- Bump
[@aws-sdk/client-ecr](https://redirect.github.com/aws-sdk/client-ecr)
to 3.859.0 in
[#860](https://redirect.github.com/docker/login-action/pull/860)
[#878](https://redirect.github.com/docker/login-action/pull/878)
- Bump
[@aws-sdk/client-ecr-public](https://redirect.github.com/aws-sdk/client-ecr-public)
to 3.859.0 in
[#860](https://redirect.github.com/docker/login-action/pull/860)
[#878](https://redirect.github.com/docker/login-action/pull/878)
- Bump
[@docker/actions-toolkit](https://redirect.github.com/docker/actions-toolkit)
from 0.57.0 to 0.62.1 in
[#870](https://redirect.github.com/docker/login-action/pull/870)
- Bump form-data from 2.5.1 to 2.5.5 in
[#875](https://redirect.github.com/docker/login-action/pull/875)
**Full Changelog**:
<https://github.com/docker/login-action/compare/v3.4.0...v3.5.0>
###
[`v3.4.0`](https://redirect.github.com/docker/login-action/releases/tag/v3.4.0)
[Compare
Source](https://redirect.github.com/docker/login-action/compare/v3.3.0...v3.4.0)
- Bump [@actions/core](https://redirect.github.com/actions/core)
from 1.10.1 to 1.11.1 in
[#791](https://redirect.github.com/docker/login-action/pull/791)
- Bump
[@aws-sdk/client-ecr](https://redirect.github.com/aws-sdk/client-ecr)
to 3.766.0 in
[#789](https://redirect.github.com/docker/login-action/pull/789)
[#856](https://redirect.github.com/docker/login-action/pull/856)
- Bump
[@aws-sdk/client-ecr-public](https://redirect.github.com/aws-sdk/client-ecr-public)
to 3.758.0 in
[#789](https://redirect.github.com/docker/login-action/pull/789)
[#856](https://redirect.github.com/docker/login-action/pull/856)
- Bump
[@docker/actions-toolkit](https://redirect.github.com/docker/actions-toolkit)
from 0.35.0 to 0.57.0 in
[#801](https://redirect.github.com/docker/login-action/pull/801)
[#806](https://redirect.github.com/docker/login-action/pull/806)
[#858](https://redirect.github.com/docker/login-action/pull/858)
- Bump cross-spawn from 7.0.3 to 7.0.6 in
[#814](https://redirect.github.com/docker/login-action/pull/814)
- Bump https-proxy-agent from 7.0.5 to 7.0.6 in
[#823](https://redirect.github.com/docker/login-action/pull/823)
- Bump path-to-regexp from 6.2.2 to 6.3.0 in
[#777](https://redirect.github.com/docker/login-action/pull/777)
**Full Changelog**:
<https://github.com/docker/login-action/compare/v3.3.0...v3.4.0>
</details>
<details>
<summary>github/codeql-action (github/codeql-action)</summary>
###
[`v2.28.1`](https://redirect.github.com/github/codeql-action/releases/tag/v2.28.1)
[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v2.28.0...v2.28.1)
### CodeQL Action Changelog
See the [releases
page](https://redirect.github.com/github/codeql-action/releases) for the
relevant changes to the CodeQL CLI and language packs.
**This is the last planned release of the `v2`. To continue getting
updates for the CodeQL Action, please switch to `v3`.**
#### 2.28.1 - 10 Jan 2025
- CodeQL Action v2 is now deprecated, and is no longer updated or
supported. For better performance, improved security, and new features,
upgrade to v3. For more information, see [this changelog
post](https://github.blog/changelog/2025-01-10-code-scanning-codeql-action-v2-is-now-deprecated/).
[#2677](https://redirect.github.com/github/codeql-action/pull/2677)
- Update default CodeQL bundle version to 2.20.1.
[#2678](https://redirect.github.com/github/codeql-action/pull/2678)
See the full
[CHANGELOG.md](https://redirect.github.com/github/codeql-action/blob/v2.28.1/CHANGELOG.md)
for more information.
###
[`v2.28.0`](https://redirect.github.com/github/codeql-action/releases/tag/v2.28.0)
[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v2.27.9...v2.28.0)
### CodeQL Action Changelog
See the [releases
page](https://redirect.github.com/github/codeql-action/releases) for the
relevant changes to the CodeQL CLI and language packs.
Note that the only difference between `v2` and `v3` of the CodeQL Action
is the node version they support, with `v3` running on node 20 while we
continue to release `v2` to support running on node 16. For example
`3.22.11` was the first `v3` release and is functionally identical to
`2.22.11`. This approach ensures an easy way to track exactly which
features are included in different versions, indicated by the minor and
patch version numbers.
**This is the last planned release of the `v2`. To continue getting
updates for the CodeQL Action, please switch to `v3`.**
#### 2.28.0 - 20 Dec 2024
- Bump the minimum CodeQL bundle version to 2.15.5.
[#2655](https://redirect.github.com/github/codeql-action/pull/2655)
- Don't fail in the unusual case that a file is on the search path.
[#2660](https://redirect.github.com/github/codeql-action/pull/2660).
See the full
[CHANGELOG.md](https://redirect.github.com/github/codeql-action/blob/v2.28.0/CHANGELOG.md)
for more information.
###
[`v2.27.9`](https://redirect.github.com/github/codeql-action/releases/tag/v2.27.9)
[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v2.27.8...v2.27.9)
### CodeQL Action Changelog
See the [releases
page](https://redirect.github.com/github/codeql-action/releases) for the
relevant changes to the CodeQL CLI and language packs.
Note that the only difference between `v2` and `v3` of the CodeQL Action
is the node version they support, with `v3` running on node 20 while we
continue to release `v2` to support running on node 16. For example
`3.22.11` was the first `v3` release and is functionally identical to
`2.22.11`. This approach ensures an easy way to track exactly which
features are included in different versions, indicated by the minor and
patch version numbers.
#### 2.27.9 - 12 Dec 2024
No user facing changes.
See the full
[CHANGELOG.md](https://redirect.github.com/github/codeql-action/blob/v2.27.9/CHANGELOG.md)
for more information.
###
[`v2.27.8`](https://redirect.github.com/github/codeql-action/compare/v2.27.7...v2.27.8)
[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v2.27.7...v2.27.8)
###
[`v2.27.7`](https://redirect.github.com/github/codeql-action/releases/tag/v2.27.7)
[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v2.27.6...v2.27.7)
### CodeQL Action Changelog
See the [releases
page](https://redirect.github.com/github/codeql-action/releases) for the
relevant changes to the CodeQL CLI and language packs.
Note that the only difference between `v2` and `v3` of the CodeQL Action
is the node version they support, with `v3` running on node 20 while we
continue to release `v2` to support running on node 16. For example
`3.22.11` was the first `v3` release and is functionally identical to
`2.22.11`. This approach ensures an easy way to track exactly which
features are included in different versions, indicated by the minor and
patch version numbers.
#### 2.27.7 - 10 Dec 2024
- We are rolling out a change in December 2024 that will extract the
CodeQL bundle directly to the toolcache to improve performance.
[#2631](https://redirect.github.com/github/codeql-action/pull/2631)
- Update default CodeQL bundle version to 2.20.0.
[#2636](https://redirect.github.com/github/codeql-action/pull/2636)
See the full
[CHANGELOG.md](https://redirect.github.com/github/codeql-action/blob/v2.27.7/CHANGELOG.md)
for more information.
###
[`v2.27.6`](https://redirect.github.com/github/codeql-action/releases/tag/v2
</details>
---
### Configuration
📅 **Schedule**: Branch creation - Between 12:00 AM and 12:59 AM, only on
Monday ( * 0 * * 1 ) (UTC), Automerge - At any time (no schedule
defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/llvm/llvm-project).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Commit: 98563d850d542411d95f5f01871762952981ba81
https://github.com/llvm/llvm-project/commit/98563d850d542411d95f5f01871762952981ba81
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/release-binaries.yml
Log Message:
-----------
[Github] Explicitly Annotate Versions
These two actions were missing version annotations. This confuses
renovate (slightly) and is also non-standard compared to all the other
workflows.
Commit: cd4c5280c73d42fd41819cc8927d00787ade88e0
https://github.com/llvm/llvm-project/commit/cd4c5280c73d42fd41819cc8927d00787ade88e0
Author: Walter J.T.V <81811777+eZWALT at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
A clang/test/OpenMP/fuse_ast_print.cpp
A clang/test/OpenMP/fuse_codegen.cpp
A clang/test/OpenMP/fuse_messages.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXCursor.cpp
M flang/include/flang/Lower/OpenMP/Clauses.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
A openmp/runtime/test/transform/fuse/foreach.cpp
A openmp/runtime/test/transform/fuse/intfor.c
A openmp/runtime/test/transform/fuse/iterfor.cpp
A openmp/runtime/test/transform/fuse/parallel-wsloop-collapse-foreach.cpp
A openmp/runtime/test/transform/fuse/parallel-wsloop-collapse-intfor.c
Log Message:
-----------
[Clang][OpenMP][LoopTransformations] Implement "#pragma omp fuse" loop transformation directive and "looprange" clause (#139293)
This change implements the fuse directive, `#pragma omp fuse`, as specified in the OpenMP 6.0, along with the `looprange` clause in clang.
This change also adds minimal stubs so flang keeps compiling (a full implementation in flang of this directive is still pending).
---------
Co-authored-by: Roger Ferrer Ibanez <roger.ferrer at bsc.es>
Commit: f27442b80acf94ccab3bf915ff0730a0d794e059
https://github.com/llvm/llvm-project/commit/f27442b80acf94ccab3bf915ff0730a0d794e059
Author: David Green <david.green at arm.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/bf16-vector-bitcast.ll
Log Message:
-----------
[AArch64] Add missing bitcast patterns for bf16<->f16 converts. (#159816)
This fills in the missing patterns for bicasting v4f16 to/from v4bf16,
and v8f16 to/from v8f16. Clean up some formatting whilst here.
Fixes #159772
Commit: b0a755b2bfac0a82383dcc31eca82d9e132f1afc
https://github.com/llvm/llvm-project/commit/b0a755b2bfac0a82383dcc31eca82d9e132f1afc
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
M llvm/test/CodeGen/AMDGPU/v_mac.ll
M llvm/test/CodeGen/AMDGPU/v_mac_f16.ll
M llvm/test/CodeGen/PowerPC/scalar_cmp.ll
M llvm/test/CodeGen/X86/negative-sin.ll
Log Message:
-----------
[TargetLowering] Remove NoSignedZerosFPMath uses (#160975)
Remove NoSignedZerosFPMath in TargetLowering part, users should always
use instruction level fast math flags.
Commit: 85d48b8fec371fe0979440abaf2d13718fba2ac3
https://github.com/llvm/llvm-project/commit/85d48b8fec371fe0979440abaf2d13718fba2ac3
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[clang] treat deduced-as-dependent as undeduced for constant template parameters (#161099)
The AutoType's deduced-as-dependent mechanism is not really used for
constant template parameters, but this is currently harmless to ignore
because when dealing which such types, they will have been transformed,
turning them back to plain undeduced AutoTypes.
This should be NFC for current main users, but
https://github.com/llvm/llvm-project/pull/141776 will depend on this.
Commit: ab5bba580c581be586a23888ab7bbd39fc9ea4b2
https://github.com/llvm/llvm-project/commit/ab5bba580c581be586a23888ab7bbd39fc9ea4b2
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/SemaCXX/invalid-requirement-requires-expr.cpp
M clang/test/SemaTemplate/instantiation-depth-subst-2.cpp
M clang/test/SemaTemplate/instantiation-depth-subst.cpp
Log Message:
-----------
[clang] fix code synthesis context depth limit logic (#161103)
This makes the instantation depth limit be checked whenever the code
synthesis context is pushed, not only when creating a
InstantiatingTemplate RAII object.
Also fix the note suggesting the user increases `-ftemplate-depth` so it
is printed even in a SFINAE context.
Commit: b3fe1b6db39e42e73131b483f4401f4bf3b05444
https://github.com/llvm/llvm-project/commit/b3fe1b6db39e42e73131b483f4401f4bf3b05444
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Lexer/cxx-features.cpp
Log Message:
-----------
[C++20] [Modules] Set the feature testing macro to 1 (#161034)
See https://github.com/llvm/llvm-project/issues/71364 for details.
Commit: 52b59b5bc07ae3a05b7643119dc6b34099108bda
https://github.com/llvm/llvm-project/commit/52b59b5bc07ae3a05b7643119dc6b34099108bda
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DropUnnecessaryAssumes.cpp
M llvm/test/Transforms/DropUnnecessaryAssumes/basic.ll
Log Message:
-----------
[DropUnnecessaryAssumes] Make the ephemeral value check more precise (#160700)
The initial implementation used a very crude check where a value was
considered ephemeral if it has only one use. This is insufficient if
there are multiple assumes acting on the same value, or in more complex
cases like cyclic phis.
Generalize this to a more typical ephemeral value check, i.e. make sure
that all transitive users are in assumes, while stopping at
side-effecting instructions.
Commit: 07778490e37946a60297b6446184b2bd2fa41030
https://github.com/llvm/llvm-project/commit/07778490e37946a60297b6446184b2bd2fa41030
Author: Jinjie Huang <huangjinjie at bytedance.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
A bolt/test/AArch64/dwarf4-dwp-aarch64.s
A bolt/test/X86/dwarf4-dwp-x86.s
Log Message:
-----------
[BOLT][DWARF] Fix debug info update issue with dwarf4 dwp (#155619)
Fix the crash issue when updating debuginfo via DWARF4 DWP and improve efficiency.
Commit: fd8adf3ccf7dd388e60bced617731aa82b7c145a
https://github.com/llvm/llvm-project/commit/fd8adf3ccf7dd388e60bced617731aa82b7c145a
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/IR/Verifier.cpp
M llvm/test/Verifier/preallocated-invalid.ll
Log Message:
-----------
[IR] Use immarg for preallocated intrinsics (NFC) (#155835)
Mark the attributes as immarg to indicate that they require a constant
integer. This was previously enforced with a manual verifier check.
Commit: 3a3a4fb922094c69c4c7bcf1dc1b8a079415f4b2
https://github.com/llvm/llvm-project/commit/3a3a4fb922094c69c4c7bcf1dc1b8a079415f4b2
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/scalarize-fp.ll
A llvm/test/CodeGen/LoongArch/lsx/scalarize-fp.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit scalarize fp tests for #157824 (#160480)
tests for https://github.com/llvm/llvm-project/pull/157824
Commit: f84b784dac61d419318ed6598412d197f1e05ee9
https://github.com/llvm/llvm-project/commit/f84b784dac61d419318ed6598412d197f1e05ee9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/combine-mul.ll
M llvm/test/CodeGen/X86/combine-sdiv.ll
M llvm/test/CodeGen/X86/known-signbits-shl.ll
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
M llvm/test/CodeGen/X86/oddsubvector.ll
M llvm/test/CodeGen/X86/pr62286.ll
M llvm/test/CodeGen/X86/pr74736.ll
M llvm/test/CodeGen/X86/shift-i512.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/vec_shift6.ll
M llvm/test/CodeGen/X86/vector-gep.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-128.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-256.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-512.ll
M llvm/test/CodeGen/X86/vector-mul.ll
M llvm/test/CodeGen/X86/vector-reduce-or-cmp.ll
M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
M llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
Log Message:
-----------
[X86] LowerShiftByScalarImmediate - move shl(x,1) -> add(freeze(x),freeze(x)) to X86FixupInstTunings (#161007)
Avoid the shl(x,1) -> add(freeze(x),freeze(x)) if the shift-imm if
legal, and leave it to X86FixupInstTunings.
Helps avoid missed optimisations due to oneuse limits, avoids
unnecessary freezes and allows AVX512 to fold to mi memory folding
variants.
Fixes #161006
Commit: 483d73a5e0f63f110776a5abb2e5644f6de51cb3
https://github.com/llvm/llvm-project/commit/483d73a5e0f63f110776a5abb2e5644f6de51cb3
Author: Fraser Cormack <frasercrmck at pm.me>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M libclc/Maintainers.md
Log Message:
-----------
[libclc] Move myself to the list of inactive maintainers
Change my email address in the process. I will not be able to keep up
maintainership duties on this project in the future.
Adding the wording on the inactive maintainers section myself like this
feels self-aggrandizing but was copied from other LLVM projects.
Commit: 306ece0aca25dd6a2109cbd28f1d37b9a0536d94
https://github.com/llvm/llvm-project/commit/306ece0aca25dd6a2109cbd28f1d37b9a0536d94
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/TrailingObjects.h
Log Message:
-----------
[llvm][NFC] Simplify alignment calculations in `TrailingObjects` (#161134)
Commit: 99774ec661a4487f0c334d8396487359db918cd1
https://github.com/llvm/llvm-project/commit/99774ec661a4487f0c334d8396487359db918cd1
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/lasx/scalarize-fp.ll
M llvm/test/CodeGen/LoongArch/lsx/scalarize-fp.ll
Log Message:
-----------
[LoongArch] Override cost hooks to expose more DAG combine opportunities (#157824)
Commit: f92c23d713c048f8729b66310ea3fef9715f16e5
https://github.com/llvm/llvm-project/commit/f92c23d713c048f8729b66310ea3fef9715f16e5
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sme-za-exceptions.ll
Log Message:
-----------
[AArch64][SME][SDAG] Add basic support for exception handling (#159363)
This patch adds basic support for exception handling to SelectionDAG for
ZT0, ZA, and agnostic ZA state. This works based on the following
assumptions:
- To throw an exception requires calling into the runtime
* The which will be a private ZA call (that commits the lazy save)
- Therefore, as noted in https://github.com/ARM-software/abi-aa/blob/main/aapcs64/aapcs64.rst#exceptions
we will always enter the EH block with PSTATE.ZA=0 and TPIDR2_EL0=null,
so we can emit a restore of ZA/ZT0.
Note: This patch does not handle all cases yet. Currently, there is no
support for committing agnostic ZA state before `invoke`s, regardless of
whether the callee is also agnostic (to ensure ZA state is saved on all
normal returns).
Commit: b4be7ecaf06bfcb4aa8d47c4fda1eed9bbe4ae77
https://github.com/llvm/llvm-project/commit/b4be7ecaf06bfcb4aa8d47c4fda1eed9bbe4ae77
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Compute cost of more replicating loads/stores in ::computeCost. (#160053)
Update VPReplicateRecipe::computeCost to compute costs of more
replicating loads/stores.
There are 2 cases that require extra checks to match the legacy cost
model:
1. If the pointer is based on an induction, the legacy cost model passes
its SCEV to getAddressComputationCost. In those cases, still fall back
to the legacy cost. SCEV computations will be added as follow-up
2. If a load is used as part of an address of another load, the legacy
cost model skips the scalarization overhead. Those cases are currently
handled by a usedByLoadOrStore helper.
Note that getScalarizationOverhead also needs updating, because when the
legacy cost model computes the scalarization overhead, scalars have not
been collected yet, so we can't each for replicating recipes to skip
their cost, except other loads. This again can be further improved by
modeling inserts/extracts explicitly and consistently, and compute costs
for those operations directly where needed.
PR: https://github.com/llvm/llvm-project/pull/160053
Commit: 600e97dfeafc9a8c691e3a0b6ad744adf99b9a78
https://github.com/llvm/llvm-project/commit/600e97dfeafc9a8c691e3a0b6ad744adf99b9a78
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for modernize-use-emplace in LoopEmitter.cpp (NFC)
Commit: a40918b3fe0c73e3fdbf1cc7cc17823f0d5b83dd
https://github.com/llvm/llvm-project/commit/a40918b3fe0c73e3fdbf1cc7cc17823f0d5b83dd
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/ExecutionEngine/JitRunner.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in JitRunner.cpp (NFC)
Commit: 8907adc28cb8c77251176c513ec9f8abd5def5b4
https://github.com/llvm/llvm-project/commit/8907adc28cb8c77251176c513ec9f8abd5def5b4
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in SubgroupReduceLowering.cpp (NFC)
Commit: 2e19666600c91952e39a1fb482594598880a8bd6
https://github.com/llvm/llvm-project/commit/2e19666600c91952e39a1fb482594598880a8bd6
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/Conversion/LLVMCommon/PrintCallHelper.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in PrintCallHelper.cpp (NFC)
Commit: 631b89cc4766d2b8f0f5a17c6d90fe920436a2c9
https://github.com/llvm/llvm-project/commit/631b89cc4766d2b8f0f5a17c6d90fe920436a2c9
Author: benwu25 <soggysocks206 at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M flang/test/Lower/OpenMP/infinite-loop-in-construct.f90
M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
M mlir/test/Dialect/ControlFlow/canonicalize.mlir
Log Message:
-----------
[MLIR][CF] Avoid collapsing blocks which participate in cycles (#160783)
Previously, collapseBranch did not return failure for successor blocks which were part of a cycle. mlir-opt --canonicalize would run indefinitely for any N-block cycle which is kicked off with an unconditional jump. The simplifyPassThroughBr transform would continue alternating which block was targeted in ^bb0, resulting in an infinite loop.
collapseBranch will not result in any useful transformation on blocks which participate in cycles, since the block is aliased by a different block. To avoid this, we can check for cycles in collapseBranch and abort when one is detected. Simplification of the cycle is left for other transforms.
Fixes #159743.
Commit: edc76e15ed9bf4a55d866dcd7d6e196f793903d7
https://github.com/llvm/llvm-project/commit/edc76e15ed9bf4a55d866dcd7d6e196f793903d7
Author: Keshav Vinayak Jha <31160700+keshavvinayak01 at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[ROCDL][LLVM] Added rocdl.fmed3 -> Intrinsic::amdgcn_fmed3 (#159332)
## Description
Added ROCDL fmed3 op to support rewrite to `amdgcn_fmed3` intrinsic.
## Testing
- ROCDL -> LLVMIR lit tests for new `rocdl.med3` ops in
`/test/Target/LLVMIR/rocdl.mlir`
Addresses [#157052](https://github.com/llvm/llvm-project/issues/157052)
---------
Signed-off-by: keshavvinayak01 <keshavvinayakjha at gmail.com>
Commit: 8d57211d6f33513ccee911a5ac98d8a31d72dcde
https://github.com/llvm/llvm-project/commit/8d57211d6f33513ccee911a5ac98d8a31d72dcde
Author: guan jian <guanjian at stu.cdut.edu.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/check-sign-bit-before-extension.ll
M llvm/test/CodeGen/AArch64/icmp.ll
M llvm/test/CodeGen/AArch64/vecreduce-bool.ll
Log Message:
-----------
[LLVM][AArch64] Optimize sign bit tests with TST instruction for SIGN_EXTEND patterns (#158061)
Hi, I recently found out in some cases LLVM doesn't generate optimal
code like:
```
sxtb w8, w0
cmp w8, #0
csel w0, w1, w2, lt
```
```
tst w0, #0x80
csel w0, w1, w2, mi
```
This optimization is only applied when the following conditions are met:
1. The comparison is setlt (signed less than)
2. The right-hand side is zero
3. The left-hand side is a sign extension operation (SIGN_EXTEND or
SIGN_EXTEND_INREG)
4. The sign-extended value has only one use (hasOneUse())
5. The original type is an integer type
Commit: 97367d1046a2ec81e9b4e708ae7acdc83d99dcf7
https://github.com/llvm/llvm-project/commit/97367d1046a2ec81e9b4e708ae7acdc83d99dcf7
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__algorithm/find.h
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/module.modulemap.in
M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
Log Message:
-----------
[libc++] Vectorize std::find (#156431)
```
Apple M4:
-----------------------------------------------------------------------------
Benchmark old new
-----------------------------------------------------------------------------
std::find(vector<char>) (bail 25%)/8 1.43 ns 1.44 ns
std::find(vector<char>) (bail 25%)/1024 5.54 ns 5.59 ns
std::find(vector<char>) (bail 25%)/8192 38.4 ns 39.1 ns
std::find(vector<char>) (bail 25%)/32768 134 ns 136 ns
std::find(vector<int>) (bail 25%)/8 1.56 ns 1.57 ns
std::find(vector<int>) (bail 25%)/1024 65.3 ns 65.4 ns
std::find(vector<int>) (bail 25%)/8192 465 ns 464 ns
std::find(vector<int>) (bail 25%)/32768 1832 ns 1832 ns
std::find(vector<long long>) (bail 25%)/8 0.920 ns 1.20 ns
std::find(vector<long long>) (bail 25%)/1024 65.2 ns 31.2 ns
std::find(vector<long long>) (bail 25%)/8192 464 ns 255 ns
std::find(vector<long long>) (bail 25%)/32768 1833 ns 992 ns
std::find(vector<char>) (process all)/8 1.21 ns 1.22 ns
std::find(vector<char>) (process all)/50 1.92 ns 1.93 ns
std::find(vector<char>) (process all)/1024 16.6 ns 16.9 ns
std::find(vector<char>) (process all)/8192 134 ns 136 ns
std::find(vector<char>) (process all)/32768 488 ns 503 ns
std::find(vector<int>) (process all)/8 2.45 ns 2.48 ns
std::find(vector<int>) (process all)/50 12.7 ns 12.7 ns
std::find(vector<int>) (process all)/1024 236 ns 236 ns
std::find(vector<int>) (process all)/8192 1830 ns 1834 ns
std::find(vector<int>) (process all)/32768 7351 ns 7346 ns
std::find(vector<long long>) (process all)/8 2.02 ns 1.45 ns
std::find(vector<long long>) (process all)/50 12.0 ns 6.12 ns
std::find(vector<long long>) (process all)/1024 235 ns 123 ns
std::find(vector<long long>) (process all)/8192 1830 ns 983 ns
std::find(vector<long long>) (process all)/32768 7306 ns 3969 ns
std::find(vector<bool>) (process all)/8 1.14 ns 1.15 ns
std::find(vector<bool>) (process all)/50 1.16 ns 1.17 ns
std::find(vector<bool>) (process all)/1024 4.51 ns 4.53 ns
std::find(vector<bool>) (process all)/8192 33.6 ns 33.5 ns
std::find(vector<bool>) (process all)/1048576 3660 ns 3660 ns
```
Commit: 585fd4cea00b4502a435420d5193a6a2b945e93e
https://github.com/llvm/llvm-project/commit/585fd4cea00b4502a435420d5193a6a2b945e93e
Author: Fraser Cormack <frasercrmck at pm.me>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M libclc/Maintainers.md
Log Message:
-----------
[libclc] Propose new libclc maintainer (#161141)
Wenju He has been active on the libclc project for a while now and has
been contributing to the overall health and steering the future of the
project.
Commit: 2ab2ffefc726095aaf1b2875d14267e35fbfbec5
https://github.com/llvm/llvm-project/commit/2ab2ffefc726095aaf1b2875d14267e35fbfbec5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/dpbusd.ll
M llvm/test/CodeGen/X86/dpbusd_const.ll
Log Message:
-----------
[X86] createVPDPBUSD - only use 512-bit X86ISD::VPDPBUSD on AVX512VNNI targets (#161152)
Inspired by #160928 - if we have a AVX512 target capable of AVXVNNI but not AVX512VNNI then we must split 512-bit (or larger) types to 256-bits
Commit: f1b4a3bde510ce4990b93681458339f2183ab147
https://github.com/llvm/llvm-project/commit/f1b4a3bde510ce4990b93681458339f2183ab147
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/tools/llvm-cov/CoverageExporterJson.cpp
Log Message:
-----------
[llvm-cov] Fix MSVC "not all control paths return a value" warning. NFC. (#161150)
Commit: ce70773cff2ab6b5d9b8d7a97ee62c75762a51d2
https://github.com/llvm/llvm-project/commit/ce70773cff2ab6b5d9b8d7a97ee62c75762a51d2
Author: DST <danstadelmann at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/test/MachineVerifier/test_g_build_vector.mir
Log Message:
-----------
Fix some typos in machine verifier comments and trace output (#160049)
Stumbled across a typo in the `MachineVerifier` file and since I had it
open, I changed some other comments.
Not important but why not leave it a bit cleaner :slightly_smiling_face:
---------
Signed-off-by: Daniel Stadelmann <dasta_7 at hotmail.com>
Commit: f628a5467addf2f8a597141ab01f7e7453e6d9a7
https://github.com/llvm/llvm-project/commit/f628a5467addf2f8a597141ab01f7e7453e6d9a7
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/IR/Instructions.cpp
A llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[ConstantFold] Fold inttoptr, ptrtoaddr to bitcast (#161087)
Fixes #157334.
Commit: 9552e899e494e619093e8685173a4af0ba73e049
https://github.com/llvm/llvm-project/commit/9552e899e494e619093e8685173a4af0ba73e049
Author: Ye Tian <939808194 at qq.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
Log Message:
-----------
[X86] Remove X86ISD::VSHLDV/VSHRDV and use ISD::FSHL/FSHR opcodes directly (#157616)
Fixes [issue](https://github.com/llvm/llvm-project/issues/155591)
Commit: 3c98be41465e16038aec7b5e088a2d0fbbcf8647
https://github.com/llvm/llvm-project/commit/3c98be41465e16038aec7b5e088a2d0fbbcf8647
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Pointer.h
Log Message:
-----------
[clang][bytecode] Pointer::isZero - fix MSVC "not all control paths return a value" warning. NFC. (#161168)
Commit: c20ef94b3f9365020a9bd39293b92f79745c3f05
https://github.com/llvm/llvm-project/commit/c20ef94b3f9365020a9bd39293b92f79745c3f05
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/test/CodeGen/X86/tbm-builtins.c
Log Message:
-----------
[clang][x86] tbm-builtins.c - add i386 test coverage (#161169)
Commit: 84e4c0686e38e27f1e72171e0be2549fff6fb113
https://github.com/llvm/llvm-project/commit/84e4c0686e38e27f1e72171e0be2549fff6fb113
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
M llvm/test/CodeGen/X86/vec_unsafe-fp-math.ll
Log Message:
-----------
[DAGCombiner] Remove NoSignedZerosFPMath uses in visitFSUB (#160974)
Remove NoSignedZerosFPMath in visitFSUB part, we should always use
instruction level fast math flags.
Commit: 7b25cef4ce5837548ed45a27a49b5d2df955754c
https://github.com/llvm/llvm-project/commit/7b25cef4ce5837548ed45a27a49b5d2df955754c
Author: kper <kevin.per at protonmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/docs/GlobalISel/InstructionSelect.rst
Log Message:
-----------
[DOC][GlobalISel] Add more explanation to InstructionSelect (#160510)
Commit: 3253ec0082661fda9b37b426c7d1a2edcc5e5a6b
https://github.com/llvm/llvm-project/commit/3253ec0082661fda9b37b426c7d1a2edcc5e5a6b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/test/CodeGen/X86/bmi-builtins.c
Log Message:
-----------
[clang][x86] bmi-builtins.c - add i386 test coverage (#161171)
Commit: 2d30392e85c6c4c17c59c020a07917277ce36f14
https://github.com/llvm/llvm-project/commit/2d30392e85c6c4c17c59c020a07917277ce36f14
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/test/CodeGen/X86/bmi2-builtins.c
Log Message:
-----------
[clang][X86] bmi2-builtins.c - add -fexperimental-new-constant-interpreter bytecode test coverage (#161172)
Part of #155814
Commit: 9d33b99fdb83ee2313ccd4b3a2faabbb13202c5e
https://github.com/llvm/llvm-project/commit/9d33b99fdb83ee2313ccd4b3a2faabbb13202c5e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/test/CodeGen/X86/tbm-builtins.c
Log Message:
-----------
[clang][X86] tbm-builtins.c - add -fexperimental-new-constant-interpreter bytecode test coverage (#161174)
Part of #155814
Commit: 23d08af3d422f10d180af1e0b6261b65f76dfeed
https://github.com/llvm/llvm-project/commit/23d08af3d422f10d180af1e0b6261b65f76dfeed
Author: Piotr Balcer <piotr.balcer at intel.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
Log Message:
-----------
[Offload][NFC] use unique ptrs for platforms (#160888)
Currently, devices store a raw pointer to back to their owning Platform.
Platforms are stored directly inside of a vector. Modifying this vector
risks invalidating all the platform pointers stored in devices.
This patch allocates platforms individually, and changes devices to
store a reference to its platform instead of a pointer. This is safe,
because platforms are guaranteed to outlive the devices they contain.
Commit: cd9403551a622868fc9c1712cf926eff5eebe938
https://github.com/llvm/llvm-project/commit/cd9403551a622868fc9c1712cf926eff5eebe938
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/test/CodeGen/X86/bmi-builtins.c
Log Message:
-----------
[clang][X86] bmi-builtins.c - add -fexperimental-new-constant-interpreter bytecode test coverage (#161182)
Part of #155814
Commit: 8df643f66374fc3fc16523a2d6a63d14d4a560a5
https://github.com/llvm/llvm-project/commit/8df643f66374fc3fc16523a2d6a63d14d4a560a5
Author: Leon Clark <Leon4116 at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AMDGPU/narrow-phi-of-shuffles.ll
M llvm/test/Transforms/VectorCombine/X86/narrow-phi-of-shuffles.ll
Log Message:
-----------
[VectorCombine] Fix rotation in phi narrowing. (#160465)
Fix bug in #140188 where incoming vectors are rotated in the wrong
direction.
Co-authored-by: Leon Clark <leoclark at amd.com>
Commit: 5ff9f7b886290f7b6efc9aba33c632c2f1aac9e6
https://github.com/llvm/llvm-project/commit/5ff9f7b886290f7b6efc9aba33c632c2f1aac9e6
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll
Log Message:
-----------
[SimplifyCFG] Ensure selects have not been constant folded in `foldSwitchToSelect`
Make sure selects do exist prior to assigning weights to edges.
Fixes: https://github.com/llvm/llvm-project/issues/161137.
Commit: 2d1f9c95d9f82217e8e35df0b2f622fa227fe53a
https://github.com/llvm/llvm-project/commit/2d1f9c95d9f82217e8e35df0b2f622fa227fe53a
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/DebugHandlerBase.h
M llvm/include/llvm/CodeGen/LexicalScopes.h
M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
M llvm/lib/CodeGen/AsmPrinter/DwarfFile.h
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/CodeGen/LexicalScopes.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/test/CodeGen/X86/dbg-distringtype-uint.ll
A llvm/test/DebugInfo/AArch64/abstract-sp-unit.ll
A llvm/test/DebugInfo/AArch64/debug-types.ll
A llvm/test/DebugInfo/AArch64/populate-abstract-sp-once.ll
A llvm/test/DebugInfo/Generic/inlined-static-var.ll
M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
M llvm/unittests/CodeGen/LexicalScopesTest.cpp
M llvm/unittests/CodeGen/MFCommon.inc
Log Message:
-----------
Reland "[DebugInfo][DwarfDebug] Separate creation and population of abstract subprogram DIEs" (#160786)
This is an attempt to reland
https://github.com/llvm/llvm-project/pull/159104 with the fix for
https://github.com/llvm/llvm-project/issues/160197.
The original patch had the following problem: when an abstract
subprogram DIE is constructed from within
`DwarfDebug::endFunctionImpl()`,
`DwarfDebug::constructAbstractSubprogramScopeDIE()` acknowledges `unit:`
field of DISubprogram. But an abstract subprogram DIE constructed from
`DwarfDebug::beginModule()` was put in the same compile unit to which
global variable referencing the subprogram belonged, regardless of
subprogram's `unit:`.
This is fixed by adding `DwarfDebug::getOrCreateAbstractSubprogramCU()`
used by both`DwarfDebug:: constructAbstractSubprogramScopeDIE()` and
`DwarfCompileUnit::getOrCreateSubprogramDIE()` when abstract subprogram
is queried during the creation of DIEs for globals in
`DwarfDebug::beginModule()`.
The fix and the already-reviewed code from
https://github.com/llvm/llvm-project/pull/159104 are two separate
commits in this PR.
=====
The original commit message follows:
With this change, construction of abstract subprogram DIEs is split in
two stages/functions: creation of DIE (in
DwarfCompileUnit::getOrCreateAbstractSubprogramDIE) and its population
with children (in
DwarfCompileUnit::constructAbstractSubprogramScopeDIE).
With that, abstract subprograms can be created/referenced from
DwarfDebug::beginModule, which should solve the issue with static local
variables DIE creation of inlined functons with optimized-out
definitions. It fixes https://github.com/llvm/llvm-project/issues/29985.
LexicalScopes class now stores mapping from DISubprograms to their
corresponding llvm::Function's. It is supposed to be built before
processing of each function (so, now LexicalScopes class has a method
for "module initialization" alongside the method for "function
initialization"). It is used by DwarfCompileUnit to determine whether a
DISubprogram needs an abstract DIE before DwarfDebug::beginFunction is
invoked.
DwarfCompileUnit::getOrCreateSubprogramDIE method is added, which can
create an abstract or a concrete DIE for a subprogram. It accepts
llvm::Function* argument to determine whether a concrete DIE must be
created.
This is a temporary fix for
https://github.com/llvm/llvm-project/issues/29985. Ideally, it will be
fixed by moving global variables and types emission to
DwarfDebug::endModule (https://reviews.llvm.org/D144007,
https://reviews.llvm.org/D144005).
Some code proposed by Ellis Hoag <ellis.sparky.hoag at gmail.com> in
https://github.com/llvm/llvm-project/pull/90523 was taken for this
commit.
Commit: b555c991e4208cd4829b2dfd0bcb8b2afd0c1292
https://github.com/llvm/llvm-project/commit/b555c991e4208cd4829b2dfd0bcb8b2afd0c1292
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/modules-print-library-module-manifest-path.cpp
Log Message:
-----------
[clang][modules] Ensure -nostdlib causes no manifest to be reported (#161110)
When -nostdlib is specified, Clang should not report any
library‑provided module manifest, even if a manifest for the default
standard library is present.
Commit: 492bcffea4c2fb1d5e0b0c273166f2b3c847e4f8
https://github.com/llvm/llvm-project/commit/492bcffea4c2fb1d5e0b0c273166f2b3c847e4f8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/ftrunc.ll
Log Message:
-----------
[X86] ftrunc.ll - add nounwind to silence cfi noise (#161186)
Commit: 99f296d2a8119fabbc9cbf6e16a3521d920a44e5
https://github.com/llvm/llvm-project/commit/99f296d2a8119fabbc9cbf6e16a3521d920a44e5
Author: A. Jiang <de34 at live.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/unittests/CodeGen/TypeTraitsTest.cpp
Log Message:
-----------
[CodeGen][test] Fix Buildbot failure due to uninitialized variables (#161085)
Under some options used by LLVM Buildbot, an uninitialized variable
(recently added to the test suite) caused constant evaluation failure,
despite the type of that variable is an empty class.
This PR explicitly initializes the variables with `{}` to fix the error.
Follows-up a558d656043734cc4d02e0a0a12e4c308c28f8c7.
Commit: 4fe1a8736b198a7cbbad4885f5ad01b3855b263d
https://github.com/llvm/llvm-project/commit/4fe1a8736b198a7cbbad4885f5ad01b3855b263d
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/test/CodeGen/X86/apx/ndd-neg-addr-index.ll
M llvm/test/CodeGen/X86/lea-16bit.ll
M llvm/test/CodeGen/X86/lea-8bit.ll
Log Message:
-----------
[X86][APX] Promote 8/16-bit LEA to 32-bit to avoid partial dependence (#161051)
Commit: 31818fb5f59184dfb44cc504d43c86da0b234cb1
https://github.com/llvm/llvm-project/commit/31818fb5f59184dfb44cc504d43c86da0b234cb1
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
Log Message:
-----------
Reland "[clang][DebugInfo][NFC] Simplify CollectRecordLambdaFields"
This reverts commit 99a29f640809f32d1271ed5cac9764b839daeed1.
Original change was reverted because following assertion started firing:
```
clang++: clang/include/clang/AST/LambdaCapture.h:105: ValueDecl
*clang::LambdaCapture::getCapturedVar() const: Assertion
`capturesVariable() && "No variable available for capture"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.Program arguments: ../../prebuilt/third_party/clang/custom/bin/clang++ -MD -MF host_x64/obj/third_party/android/platform/system/libbase/libbase.logging.cpp.o.d -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -I../.. -Ihost_x64/gen -I../../third_party/android/platform/system/libbase/include -I../../third_party/fmtlib/src/include -I../../third_party/android/platfo...com
1.<eof> parser at end of file
2.Per-file LLVM IR generation
clang++: error: clang frontend command failed with exit code 134 (use -v
to see invocation)
Fuchsia clang version 22.0.0git
(https://llvm.googlesource.com/llvm-project
8553bd2b29ad2b17a9a884f14da6c43b606ec776)
********************
```
The relanded patch just adds a `Capture.capturesVariable()` check before calling `getCapturedVar`. That's what the code did before the refactor.
Commit: 766c90f43966fe9eb438e5a6f6378f4e3e0bc37e
https://github.com/llvm/llvm-project/commit/766c90f43966fe9eb438e5a6f6378f4e3e0bc37e
Author: Chaitanya Koparkar <ckoparkar at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AArch64/combine-shuffle-ext.ll
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
Log Message:
-----------
[VectorCombine] foldShuffleOfCastops - handle unary shuffles (#160009)
Fixes #156853.
Commit: d8a8d1fc56a6d8ad71157f087548bef31864cb45
https://github.com/llvm/llvm-project/commit/d8a8d1fc56a6d8ad71157f087548bef31864cb45
Author: jiang1997 <jieke at live.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateMaskedLoadStore.cpp
Log Message:
-----------
[MLIR][MemRef] Change builders with `int` alignment params to `llvm::MaybeAlign` (#159449)
Change remaining OpBuilder methods to use `llvm::MaybeAlign` instead of
`uint64_t` for alignment parameters.
---------
Co-authored-by: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Commit: 41bce81820314933714f8301723185d2a5a10eba
https://github.com/llvm/llvm-project/commit/41bce81820314933714f8301723185d2a5a10eba
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_salu_lit64.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_valu_lit64.txt
Log Message:
-----------
[AMDGPU][Disassembler][NFC] Regenerate check lines of some tests using the update script. (#161190)
Commit: 668f56d0033333901345e14a0efad39aede0cc90
https://github.com/llvm/llvm-project/commit/668f56d0033333901345e14a0efad39aede0cc90
Author: guillem-bartrina-sonarsource <guillem.bartrina at sonarsource.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
A clang/test/Analysis/buffer-overlap-decls.c
M clang/test/Analysis/buffer-overlap.c
Log Message:
-----------
[analyzer] CStringChecker: Fix crash in `CheckOverlap` when arguments are not pointers (#160511)
https://github.com/llvm/llvm-project/blob/main/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp#L675-L678
mistakenly assumes that target expressions are of pointer type.
`CheckOverlap` has multiple call sites, most of which do not verify this
assumption. Therefore, the simplest solution is to verify it just before
that point.
Commit: 36d9e10a7dbe1ade257c2aec8623f048e20b4b28
https://github.com/llvm/llvm-project/commit/36d9e10a7dbe1ade257c2aec8623f048e20b4b28
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate08.f90
M flang/test/Semantics/OpenMP/allocators04.f90
M flang/test/Semantics/OpenMP/allocators05.f90
Log Message:
-----------
[flang][OpenMP] Fix scope checks for ALLOCATE directive (#160948)
Make sure that the ALLOCATE directive adds its source span to the
current scope, and that the scope checks compare scoping units, not the
specific scopes.
Commit: b285bac972354f961e611b46ee9fde1b3d760730
https://github.com/llvm/llvm-project/commit/b285bac972354f961e611b46ee9fde1b3d760730
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
Log Message:
-----------
[libc++][NFC] In documentation, fix path to benchmark that has now moved
Commit: e5bbc9feae3c6b7f377f89abae47fc3819c73f95
https://github.com/llvm/llvm-project/commit/e5bbc9feae3c6b7f377f89abae47fc3819c73f95
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/type-traits.cpp
Log Message:
-----------
[Clang] Fixes __builtin_is_implicit_lifetime for types with deleted ctrs (#161163)
We failed to check that the trivial constructor where eligible (this
implies non deleted).
Fixes #160610
Commit: 3408e6af75b6b93bdad05cfe3ed296e58d55fb60
https://github.com/llvm/llvm-project/commit/3408e6af75b6b93bdad05cfe3ed296e58d55fb60
Author: Marco Elver <elver at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/SipHash.h
M llvm/lib/Support/SipHash.cpp
M llvm/unittests/Support/SipHashTest.cpp
Log Message:
-----------
[Support] Add SipHash-based 64-bit stable hash function (#160945)
Factor out the 64-bit hash calculation in getPointerAuthStableSipHash()
as getStableSipHash(). This allows using the full 64-bit hash where we
require a stable hash.
Similar to getPointerAuthStableSipHash(), the new hash function is meant
to be stable across platforms and compiler versions.
Commit: e4d94f4f7f657bf932a86c6719ac2bf851bfbfdc
https://github.com/llvm/llvm-project/commit/e4d94f4f7f657bf932a86c6719ac2bf851bfbfdc
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M offload/test/offloading/fortran/target-no-loop.f90
Log Message:
-----------
[OpenMP][Flang] Fix no-loop test (#161162)
Fortran no-loop test is supported only for GPU.
Commit: 7af31bf7016e3a8c9082cdd620de23561245b9b5
https://github.com/llvm/llvm-project/commit/7af31bf7016e3a8c9082cdd620de23561245b9b5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/setoeq.ll
Log Message:
-----------
[X86] setoeq.ll - add f<->i64, uint and AVX1/AVX512 test coverage (#161197)
Commit: 1ad31d923d2504ba7127833f957c7020d0372324
https://github.com/llvm/llvm-project/commit/1ad31d923d2504ba7127833f957c7020d0372324
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
Exclude from profcheck some tests (#161207)
- Commit f9c2565
- PR #155349
LoopVectorize ones.
Commit: b79f4eb6b79dde33d34488a38e571ee65010ac1f
https://github.com/llvm/llvm-project/commit/b79f4eb6b79dde33d34488a38e571ee65010ac1f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/isint.ll
Log Message:
-----------
[X86] isint.ll - cleanup prefixes (#161198)
Use X86 for 32-bit targets, and X64 for 64-bit targets
Commit: f7aa472800a26e3bed11e49834f446fd43385df7
https://github.com/llvm/llvm-project/commit/f7aa472800a26e3bed11e49834f446fd43385df7
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
Add test to profcheck exclusion list (#161209)
Introduced in PR #160443
Commit: c4a55190a50a986da985d586631979653d679275
https://github.com/llvm/llvm-project/commit/c4a55190a50a986da985d586631979653d679275
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/EquivalenceClasses.h
Log Message:
-----------
[ADT] Use DenseMap::contains in EquivalenceClasses.h (NFC) (#161120)
While I am at it, this patch adds [[nodiscard]].
Commit: 57f2a2ef33e03fd3e15b0104d56c0db6c91657a9
https://github.com/llvm/llvm-project/commit/57f2a2ef33e03fd3e15b0104d56c0db6c91657a9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PackedVector.h
Log Message:
-----------
[ADT] Inline PackedVectorBase into PackedVector (NFC) (#161122)
This patch "inlines" PackedVectorBase into its sole user PackedVector.
The two variants of PackedVectorBase are dispatched with "if
constexpr". getValue and setValue are now non-static methods of
PackedVector.
We could further simplify getValue and setValue by storing signed
integers as two's complement, but that's a change for another day.
This patch focuses on the code organization, like removing the
template trick and inheritance and making the two methods non-static.
Commit: 41cce3b92efe7ec41df1ed757d5d037f6f0a8421
https://github.com/llvm/llvm-project/commit/41cce3b92efe7ec41df1ed757d5d037f6f0a8421
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Remove DenseMapBase::getHashValue (NFC) (#161123)
This patch removes:
static unsigned getHashValue(const KeyT &Val) {
return KeyInfoT::getHashValue(Val);
}
This function is redundant given the templated overload:
template <typename LookupKeyT>
static unsigned getHashValue(const LookupKeyT &Val) {
return KeyInfoT::getHashValue(Val);
}
Note that the callers doFind and LookupBucketFor are themselves
templated on LookupKeyT.
Commit: 4a9041b138d8cb07f10da42454e578977db461e9
https://github.com/llvm/llvm-project/commit/4a9041b138d8cb07f10da42454e578977db461e9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
[llvm] Proofread GettingInvolved.rst (#161124)
Commit: 27fa1d0cf96469c268c46684ced2fbb7663c7713
https://github.com/llvm/llvm-project/commit/27fa1d0cf96469c268c46684ced2fbb7663c7713
Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Basic/Builtins.def
M clang/lib/AST/ASTContext.cpp
A clang/test/CodeGen/amdgpu-image-rsrc-type-debug-info.c
A clang/test/CodeGenCXX/amdgpu-image-rsrc-typeinfo.cpp
A clang/test/SemaCXX/amdgpu-image-rsrc.cpp
A clang/test/SemaOpenCL/amdgpu-image-rsrc.cl
A clang/test/SemaOpenMP/amdgpu-image-rsrc.cpp
Log Message:
-----------
[AMDGPU] Add a new builtin type for image descriptor rsrc (#160258)
Adding a new builtin type for AMDGPU's image descriptor rsrc data type
This requires for https://github.com/llvm/llvm-project/pull/140210
Commit: c2fbd12f11f5936cae9be2ebbc45c1721e554766
https://github.com/llvm/llvm-project/commit/c2fbd12f11f5936cae9be2ebbc45c1721e554766
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaOpenACCAtomic.cpp
Log Message:
-----------
[clang][NFC] Remove const_casts from diagnostic emissions (#161211)
This is apparently not necessary anymore. Not sure when exactly it
changed though.
Commit: 637bfb7ea6d58c1daaa82dc39f7b9ad40870e422
https://github.com/llvm/llvm-project/commit/637bfb7ea6d58c1daaa82dc39f7b9ad40870e422
Author: Jan André Reuter <j.reuter at fz-juelich.de>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M compiler-rt/include/xray/xray_interface.h
A compiler-rt/test/xray/TestCases/Posix/patching-unpatching.c
Log Message:
-----------
Reapply "[compiler-rt][XRay] Make xray_interface.h C compliant" (#141728)
Changes to initial PR (#140068):
- Mark failing test as unsupported for powerpc64le, as test failure is
unrelated to PR changes. See
https://github.com/llvm/llvm-project/issues/141598
---
Original description (from #140068)
The XRay interface header uses no C++ specific features aside from using
the std namespace and including the C++ variant of C headers. Yet, these
changes prevent using `xray_interface.h` in external tools relying on C
for different reasons. Make this header C compliant by using C headers,
removing the std namespace from std::size_t and guard `extern "C"`.
To make sure that further changes to not break the interface
accidentially, port one test from C++ to C. This requires the C23
standard to officially support the attribute syntax used in this test
case.
Note that this only resolves this issue for `xray_interface.h`.
`xray_records.h` is also not C compliant, but requires more work to
port.
Fixes #139902
Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>
Commit: 01a7c880d27b7b594910e03d173819d90d14c421
https://github.com/llvm/llvm-project/commit/01a7c880d27b7b594910e03d173819d90d14c421
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-dead-intrinsics.ll
Log Message:
-----------
[AMDGPU][LowerBufferFatPointers] Erase dead ptr(7) intrinsics (#160798)
Fix a crash that would arise when intrinsics like llvm.masked.load.T.p7
were left in the module when AMDGPULowerBufferFatPointers was applied
and so a captures(none) annotation would be applied to a non-pointer
value, triggering a verifier failure.
---------
Co-authored-by: Shilei Tian <i at tianshilei.me>
Commit: edca510555fd6c2adfe15dba6993f4e64575e647
https://github.com/llvm/llvm-project/commit/edca510555fd6c2adfe15dba6993f4e64575e647
Author: Valery Dmitriev <valeryd at nvidia.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
A flang/test/HLFIR/simplify-hlfir-intrinsics-index.fir
Log Message:
-----------
[flang] Simplify hlfir.index in a few limited cases. (#157883)
Primarily targeted simplification case of substring being
a singleton by inlining a search loop (with an exception
where runtime function performs better).
Few trivial simplifications also covered.
Commit: 2e3f2523e624a4a922c386f6f1264c19f25a2e26
https://github.com/llvm/llvm-project/commit/2e3f2523e624a4a922c386f6f1264c19f25a2e26
Author: David Green <david.green at arm.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/fp16-v4-instructions.ll
M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/strict-fp-opt.ll
Log Message:
-----------
[AArch64] Add global isel coverage for fp16 tests and strict-fp. NFC
Commit: 617854f81900d1776c11796dd4aacc82375e56ba
https://github.com/llvm/llvm-project/commit/617854f81900d1776c11796dd4aacc82375e56ba
Author: michaelselehov <michael.selehov at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
A llvm/test/CodeGen/AMDGPU/lro-phi-samebb-nonlookthrough-store.ll
Log Message:
-----------
[AMDGPU] LRO: allow same-BB non-lookthrough users for PHI (#160909)
Loop headers frequently consume the loop-carried value in the header
block via non-lookthrough ops (e.g. byte-wise vector binops).
LiveRegOptimizer’s same-BB filter currently prunes these users, so the
loop-carried PHI is not coerced to i32 and the intended packed form is
lost.
Relax the filter: when the def is a PHI, allow same-BB non-lookthrough
users. Also fix the check to look at the user (CII) rather than the def
(II) so the walk does not terminate prematurely.
Commit: 1ef1175b309804b3ce8ee91ee72a3498f9a9a115
https://github.com/llvm/llvm-project/commit/1ef1175b309804b3ce8ee91ee72a3498f9a9a115
Author: Marcos Maronas <marcos.maronas at intel.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
Log Message:
-----------
[SPIRV] Fix code quality issues. (#160752)
Address issues reported by a static analysis tool.
Commit: dd3507b6c021eb77c3b256dc88d6a07fb7d6734e
https://github.com/llvm/llvm-project/commit/dd3507b6c021eb77c3b256dc88d6a07fb7d6734e
Author: Alina Sbirlea <asbirlea at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Analysis/LazyValueInfo.cpp
A llvm/test/Transforms/CorrelatedValuePropagation/track-predecessor-ranges.ll
Log Message:
-----------
Extend LVI to cache ranges per BB predecessor. (#159432)
Currently LVI does the union of value ranges from block predecessors.
When storing the ranges per predecessor, the resulting ranges may be
more restricted and enable additional optimizations.
However this is costly (memory + compile time), so place this under a
flag disabled by default.
See: https://github.com/llvm/llvm-project/issues/158139.
Commit: f9dbf738d81492eb7891655c5d4b2f481215eee0
https://github.com/llvm/llvm-project/commit/f9dbf738d81492eb7891655c5d4b2f481215eee0
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Support/FileCollector.cpp
Log Message:
-----------
[llvm] Use the VFS to get the real path in `FileCollector` (#160943)
This PR starts using the correct VFS for getting file's real path in
`FileCollector` instead of using the real FS directly. This matches
compiler's behavior for other input files.
Commit: a615249d02549c82913dc8c744d769ab41e7385e
https://github.com/llvm/llvm-project/commit/a615249d02549c82913dc8c744d769ab41e7385e
Author: Billy Zhu <billyzhu at modular.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/Bindings/Python/Rewrite.cpp
Log Message:
-----------
[MLIR][Python] Fix PDLResultList bindings (#161102)
Adds argument names to the method stubs for PDLResultList (from
https://github.com/llvm/llvm-project/pull/159926).
Commit: 3b299af92383cb7558224482ccfa714f0162f772
https://github.com/llvm/llvm-project/commit/3b299af92383cb7558224482ccfa714f0162f772
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/MarkLive.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
ELF: Store EhInputSection relocations to simplify code. NFC
Store relocations directly as `SmallVector<Relocation, 0>` within
EhInputSection to avoid processing different relocation formats
(REL/RELA/CREL) throughout the codebase.
Next: Refactor RelocationScanner to utilize EhInputSection::rels
Pull Request: https://github.com/llvm/llvm-project/pull/161041
Commit: 30b0215519428ef264d010c60e36dbfea2ab107c
https://github.com/llvm/llvm-project/commit/30b0215519428ef264d010c60e36dbfea2ab107c
Author: Ryan Mansfield <ryan_mansfield at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-size.rst
A llvm/test/tools/llvm-size/macho-pagezero.test
M llvm/tools/llvm-size/Opts.td
M llvm/tools/llvm-size/llvm-size.cpp
Log Message:
-----------
[llvm-size] Add --exclude-pagezero option for Mach-O to exclude __PAGEZERO size. (#159574)
Do not include the ``__PAGEZERO`` segment when calculating size information
for Mach-O files when `--exclude-pagezero` is used. The ``__PAGEZERO``
segment is a virtual memory region used for memory protection that does not
contribute to actual size, and excluding can provide a better representation of
actual size.
Fixes #86644
Commit: 2dd743187655261815a95477d3956051e7cf5b04
https://github.com/llvm/llvm-project/commit/2dd743187655261815a95477d3956051e7cf5b04
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Frontend/ModuleDependencyCollector.cpp
M llvm/include/llvm/Support/FileCollector.h
Log Message:
-----------
[clang] Use the VFS in `ModuleDependencyCollector` (#160944)
This PR starts using the correct VFS in `ModuleDependencyCollector`
instead of using the real FS directly. This matches compiler's behavior
for other input files.
Commit: 3e54505b439923a34fe5cbf27743d883fb62ad9f
https://github.com/llvm/llvm-project/commit/3e54505b439923a34fe5cbf27743d883fb62ad9f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/EquivalenceClasses.h
M llvm/unittests/ADT/EquivalenceClassesTest.cpp
Log Message:
-----------
[ADT] Fix a bug in EquivalenceClasses::erase (#161121)
This patch fixes a bug in EquivalenceClasses::erase, where we lose a
leader bit in a certain scenario.
Here is some background. In EquivalenceClasses, each equivalence
class is maintained as a singly linked list over its members. When we
join two classes, we concatenate the two singly linked lists. To
support path compression, each member points to the leader (through
lazy updates). This is implemented with the two members:
class ECValue {
mutable const ECValue *Leader, *Next;
:
};
Each member stores its leader in Leader and its sibling in Next. Now,
the leader uses the Leader field to to point the last element of the
singly linked list to accommodate the list concatenation. We use the
LSB of the Next field to indicate whether a given member is a leader
or not.
Now, imagine we have an equivalence class:
Elem 1 -> Elem 2 -> nullptr
Leader
and wish to remove Elem 2. We would like to end up with:
Elem 1 -> nullptr
Leader
but we mistakenly drop the leader bit when we update the Next field of
Elem 1 with:
Pre->Next = nullptr;
This makes Elem 1 the end of the singly linked list, as intended, but
mistakenly clears its leader bit stored in the LSB of Next, so we end
up with an equivalence class with no leader.
This patch fixes the problem by preserving the leader bit:
Pre->Next = reinterpret_cast<const ECValue *>(
static_cast<intptr_t>(Pre->isLeader()));
The unit test closely follows the scenario above.
Commit: b51b967671884b6d308c5f7b659a8f459517f541
https://github.com/llvm/llvm-project/commit/b51b967671884b6d308c5f7b659a8f459517f541
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
Log Message:
-----------
[LV] Add test for more precise no-free checks.
Commit: 44f392e999dcf6718d7dceaa7ccb39306b1c1feb
https://github.com/llvm/llvm-project/commit/44f392e999dcf6718d7dceaa7ccb39306b1c1feb
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
R offload/DeviceRTL/CMakeLists.txt
M openmp/device/CMakeLists.txt
Log Message:
-----------
[OpenMP] Fix 'libc' configuration when building OpenMP
Summary:
Forgot to port this option's old handling from offload. It's not way
easier since they're built in the same CMake project. Also delete the
leftover directory that's not used anymore, don't know how that was
still there.
Commit: 47b8bc46989b99dc3f68ee5e3ab1d9887bbbd076
https://github.com/llvm/llvm-project/commit/47b8bc46989b99dc3f68ee5e3ab1d9887bbbd076
Author: Chaitanya Koparkar <ckoparkar at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Headers/avxintrin.h
M clang/test/CodeGen/X86/avx-builtins.c
Log Message:
-----------
[Headers][X86] Allow AVX1 fixed extraction intrinsics to be used in constexpr (#161218)
Fixes #161204.
Commit: 0fc972d242f732766b2dc0590d9f241f47427578
https://github.com/llvm/llvm-project/commit/0fc972d242f732766b2dc0590d9f241f47427578
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Support/VirtualFileSystem.cpp
M llvm/unittests/Support/VirtualFileSystemTest.cpp
Log Message:
-----------
[llvm] Use the underlying VFS when constructing `RedirectingFileSystem` (#160942)
When the root node of the `RedirectingFileSystem` is to be resolved to
the current working directory, we previously consulted the real FS
instead of the provided underlying VFS. This PR fixes that issue.
Commit: e5d925faa931174b8e415448cc80e8b4b3e55621
https://github.com/llvm/llvm-project/commit/e5d925faa931174b8e415448cc80e8b4b3e55621
Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/OpenMP/for_reduction_codegen.cpp
Log Message:
-----------
[clang][OpenMP] Support for reduction clause with array elements as modifier (#160846)
Changes to support for array elements in reduction clause e.g.
"reduction (+:a[1])"
---------
Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>
Commit: 0251fd9a72c550bcab4906d9223c96aeb593ce57
https://github.com/llvm/llvm-project/commit/0251fd9a72c550bcab4906d9223c96aeb593ce57
Author: jiang1997 <jieke at live.cn>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][x86][bytecode] Refactor BMI intrinsic wrappers to use interp__builtin_elementwise_int_binop (#160362)
Fixes #160281
Commit: 782ab835dcc8f6b55c6053cc38dd299830e4ffed
https://github.com/llvm/llvm-project/commit/782ab835dcc8f6b55c6053cc38dd299830e4ffed
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/test/CIR/CodeGen/lang-c-cpp.cpp
A clang/test/CIR/CodeGen/module-filename.cpp
M clang/test/CIR/CodeGen/opt-info-attr.cpp
Log Message:
-----------
[CIR] Set the module name to the input filename (#160934)
This sets the MLIR module name to the main filename (according to the
SourceManager), if one is available. The module name gets used when
creating global init functions, so we will need it to be set.
Commit: 38953f4d66a43a6a09b3c782e9efd12d2ca4d0d2
https://github.com/llvm/llvm-project/commit/38953f4d66a43a6a09b3c782e9efd12d2ca4d0d2
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
A clang/test/CIR/CodeGen/delete.cpp
Log Message:
-----------
[CIR] Add initial support for operator delete (#160574)
This adds basic operator delete handling in CIR. This does not yet
handle destroying delete or array delete, which will be added later. It
also does not insert non-null checks when not optimizing for size.
Commit: 87bd7825902ec378d4f6372c2463e51f5df69fc3
https://github.com/llvm/llvm-project/commit/87bd7825902ec378d4f6372c2463e51f5df69fc3
Author: Marcos Maronas <marcos.maronas at intel.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/TextAPI/SymbolSet.h
M llvm/lib/CAS/InMemoryCAS.cpp
Log Message:
-----------
[LLVM][NFC] Fix Rule of Three/Five issues. (#160851)
Fix Rule of Three/Five issues reported by static analysis tool.
Commit: 301259a6b1c8146a185e7c1bea46ec02d028243e
https://github.com/llvm/llvm-project/commit/301259a6b1c8146a185e7c1bea46ec02d028243e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/and-negpow2-cmp.ll
Log Message:
-----------
[RISCV] Teach getIntImmCostInst about (X & -(1 << C1) & 0xffffffff) == C2 << C1 (#160163)
We can rewrite this to (srai(w)/srli X, C1) == C2 so the AND immediate
is free. This transform is done by performSETCCCombine in
RISCVISelLowering.cpp.
This fixes the opaque constant case mentioned in #157416.
Commit: 0457644dfb0465cde08d25f4bd704b4b8e7a355c
https://github.com/llvm/llvm-project/commit/0457644dfb0465cde08d25f4bd704b4b8e7a355c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/xor-combined-opcode.ll
Log Message:
-----------
[SLP][NFC]Add a test with the incorrect combination of Xor/Mul vector instructions, NFC
Commit: f7352505ca32d05d3e219bc86e7241bbb8687f21
https://github.com/llvm/llvm-project/commit/f7352505ca32d05d3e219bc86e7241bbb8687f21
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/lit.cfg.py
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] Exclude LoopVectorize, temporarily (#161243)
LV is under active development, new tests are added. Bulk-excluding it
from `profcheck`, for the moment.
Issue #161235 (see also its parent)
Commit: 8d48d69911c1c9a212a0f129a15fc92e803b135e
https://github.com/llvm/llvm-project/commit/8d48d69911c1c9a212a0f129a15fc92e803b135e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode/isGuaranteedNotToBeUndefOrPoisonForTargetNode - add X86ISD::INSERTPS handling (#161234)
X86ISD::INSERTPS shuffles can't create undef/poison itself, allowing us to fold freeze(insertps(x,y,i)) -> insertps(freeze(x),freeze(y),i)
Commit: 68c3b5363d64b15962be18ebb3a59e7713437922
https://github.com/llvm/llvm-project/commit/68c3b5363d64b15962be18ebb3a59e7713437922
Author: Joseph Bak <36170953+josephbak at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/docs/Tutorials/Toy/Ch-6.md
Log Message:
-----------
[mlir][doc] Fix typo in Ch6 tutorial: 'toy.cpp' → 'toyc.cpp' (NFC) (#161245)
This patch fixes a documentation typo in the MLIR Toy tutorial (Ch6).
The tutorial currently refers to `examples/toy/Ch6/toy.cpp`, but the
correct
file name is `examples/toy/Ch6/toyc.cpp`.
Commit: 7b96dfbb7d8cdadc2caf04fecc1060b9eeb1f4e3
https://github.com/llvm/llvm-project/commit/7b96dfbb7d8cdadc2caf04fecc1060b9eeb1f4e3
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
Log Message:
-----------
[llvm][mustache] Align standalone partial indentation with spec (#159185)
The current implementaion did not correctly handle indentation for
standalone partial tags. It was only applied to lines following a
newline, instead of the first line of a partial's content. This was
fixed by updating the AddIndentation implementaion to prepend the
indentation to the first line of the partial.
Commit: 1f82553e385f449efee92da3dca43facb4a1ee66
https://github.com/llvm/llvm-project/commit/1f82553e385f449efee92da3dca43facb4a1ee66
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/xor-combined-opcode.ll
Log Message:
-----------
[SLP]Fix mixing xor instructions in the same opcode analysis
Xor with 0 operand should not be compatible with multiplications-based
instructions, only with or/xor/add/sub.
Fixes #161140
Commit: df77a86f9b491afd9816277bcff60c1c9014631d
https://github.com/llvm/llvm-project/commit/df77a86f9b491afd9816277bcff60c1c9014631d
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
Log Message:
-----------
[RISCV][NFC] Rename getOppositeBranchCondition (#160972)
Commit: 8dde784135afcbbf4aaca64db163f3e726cff339
https://github.com/llvm/llvm-project/commit/8dde784135afcbbf4aaca64db163f3e726cff339
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
Log Message:
-----------
[LV] Add test for more precise no-free checks w/o nosync attribute.
Also filter out uninteresting parts from check lines.
Commit: 2522a953546dbbf1cc4ad45c3e5218b8c08c0620
https://github.com/llvm/llvm-project/commit/2522a953546dbbf1cc4ad45c3e5218b8c08c0620
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/unittests/Support/MustacheTest.cpp
Log Message:
-----------
[llvm][mustache] Precommit test for Set Delimiter (#159186)
Adds a new unit test for the Mustache Set Delimiter feature.
This test is written with inverted logic (`EXPECT_NE`) so that it
passes with the current implementation, which does not support
the feature. Once the feature is implemented, this test will fail,
signaling that the test logic should be flipped to `EXPECT_EQ`.
Commit: 0f70b440160fb92be3536d26d6d97f4c61de23bd
https://github.com/llvm/llvm-project/commit/0f70b440160fb92be3536d26d6d97f4c61de23bd
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-dwarfdump/verify_stmt_seq.yaml
Log Message:
-----------
[DWARFVerifier] Fix test verify_stmt_seq.yaml to write output files to temp directory. (#161247)
Commit: 5da28bd331b243b62f30a211927b4e33b8dd943b
https://github.com/llvm/llvm-project/commit/5da28bd331b243b62f30a211927b4e33b8dd943b
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.h
Log Message:
-----------
[clang-tidy][NFC] Make a few `std::string`s into `StringRef`s (#160961)
Following up 12cb540. Also, that commit left behind a few cases where a
temporary `StringRef` was being constructed from those variables just to
use its `.split()` function, so this PR cleans those up too.
Commit: 7de73c4e9d5ee1ec00bb57427ac04746ce858c3c
https://github.com/llvm/llvm-project/commit/7de73c4e9d5ee1ec00bb57427ac04746ce858c3c
Author: Abhinav Gaba <abhinav.gaba at intel.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M offload/libomptarget/omptarget.cpp
Log Message:
-----------
[OpenMP][Offload] Support `PRIVATE | ATTACH` maps for corresponding-pointer-initialization. (#160760)
`PRIVATE | ATTACH` maps can be used to represent firstprivate pointers
that should be initialized by doing doing the pointee's device address,
if its lookup succeeds, or retain the original host pointee's address
otherwise.
With this, for a test like the following:
```f90
integer, pointer :: p(:)
!$omp target map(p(1))
... print*, p(1)
!$omp end target
```
The codegen can look like:
```llvm
; maps for p:
; &p(1), &p(1), sizeof(p(1)), TO|FROM //(1)
; &ref_ptr(p), &p(1), sizeof(ref_ptr(p)), ATTACH //(2)
; &ref_ptr(p), &p(1), sizeof(ref_ptr(p)), PRIVATE|ATTACH|PARAM //(3)
call... @__omp_outlined...(ptr %ref_ptr_of_p)
```
* `(1)` maps the pointee `p(1)`.
* `(2)` attaches it to the (previously) mapped `ref_ptr(p)`, if present.
It can be controlled via OpenMP 6.1's `attach(auto/always/never)`
map-type modifiers.
* `(3)` privatizes and initializes the local `ref_ptr(p)`, which gets
passed
in as the kernel argument `%ref_ptr_of_p`. Can be skipped if p is not
referenced directly within the region.
While similar mapping can be used for C/C++, it's more important/useful
for Fortran as we can avoid creating another argument for passing the
descriptor, and use that to initialize the private copy in the body of
the kernel.
Commit: 74aa2b7ad59466a12c5e3e4d0bfd5b1dcec8232b
https://github.com/llvm/llvm-project/commit/74aa2b7ad59466a12c5e3e4d0bfd5b1dcec8232b
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Implement UO real on result from imag with type promotion (#160996)
Implement UO real on the result from imag with type promotion
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: 62e7e8d66d1aa54d231b3005fb0d842ede2cce7b
https://github.com/llvm/llvm-project/commit/62e7e8d66d1aa54d231b3005fb0d842ede2cce7b
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR] Upstream UnaryExtension for Scalar Expr (#160997)
Upstream UnaryExtension for Scalar Expr
Commit: b54250940c2cd70f911386b02239b50c165e5354
https://github.com/llvm/llvm-project/commit/b54250940c2cd70f911386b02239b50c165e5354
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Fix declarations of builtins in test files (#161222)
Replace `long double` and `long double _Complex` with `fp_t` and
`Qcomplex` in the test files.
This prepares for reapplying 656707086e5f6fccd2eb57f5aaf987c328c0f4f1
and running tests on targets where `fp_t` is not `long double`.
Commit: 7e4678270fa90aacacb21efb93775754bfd04bf1
https://github.com/llvm/llvm-project/commit/7e4678270fa90aacacb21efb93775754bfd04bf1
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
A clang/test/CodeGenCXX/gh56652.cpp
M clang/test/SemaCXX/decltype.cpp
Log Message:
-----------
[Clang] Instantiate variables referenced in `decltype` with an undeduced type. (#161231)
Fixes #160497
Fixes #56652
Fixes #116319
Fixes #161196
Commit: 786358a3d70561f2b2cf7d7ec239c1058818236b
https://github.com/llvm/llvm-project/commit/786358a3d70561f2b2cf7d7ec239c1058818236b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M offload/tools/deviceinfo/llvm-offload-device-info.cpp
Log Message:
-----------
[Offload] Fix incorrect size used in llvm-offload-device-info tool
Summary:
This was not using the size previously queried and would fail when the
implementation actually verified it.
Commit: 38a4c9c639f6067c3aa4c88a7578d55efd236819
https://github.com/llvm/llvm-project/commit/38a4c9c639f6067c3aa4c88a7578d55efd236819
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M libc/src/string/memory_utils/op_generic.h
M libc/test/UnitTest/FEnvSafeTest.cpp
Log Message:
-----------
[libc][msvc] fix mathlib build on WoA (#161258)
Fix build errors encountered when building math library on WoA.
1. Skip FEnv equality check for MSVC
2. Provide a placeholder type for vector types.
Commit: 2936a2c882d76c719f9a96e443ad3f75b366bc8f
https://github.com/llvm/llvm-project/commit/2936a2c882d76c719f9a96e443ad3f75b366bc8f
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
A llvm/include/llvm/CAS/FileOffset.h
A llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
M llvm/lib/CAS/CMakeLists.txt
A llvm/lib/CAS/DatabaseFile.cpp
A llvm/lib/CAS/DatabaseFile.h
A llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
M llvm/unittests/CAS/CMakeLists.txt
A llvm/unittests/CAS/OnDiskTrieRawHashMapTest.cpp
Log Message:
-----------
[CAS] Add OnDiskTrieRawHashMap (#114100)
Add OnDiskTrieRawHashMap. This is a on-disk persistent hash map that
uses a Trie data structure that is similar to TrieRawHashMap.
OnDiskTrieRawHashMap is thread safe and process safe. It is mostly lock
free, except it internally coordinates cross process creation and
closing using file lock.
Commit: eef7a7663d2701c4fb073f749a6b9b7da1adc9b8
https://github.com/llvm/llvm-project/commit/eef7a7663d2701c4fb073f749a6b9b7da1adc9b8
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
A lldb/test/Shell/SymbolFile/DWARF/incomplete-member-beyond-parent-bounds.yaml
A lldb/test/Shell/SymbolFile/DWARF/member-beyond-parent-bounds.yaml
A lldb/test/Shell/SymbolFile/DWARF/member-on-parent-bounds.yaml
M lldb/test/Shell/SymbolFile/DWARF/union-types-no-member-location.yaml
A lldb/test/Shell/SymbolFile/DWARF/zero-sized-member-in-parent-bounds.yaml
Log Message:
-----------
[lldb][DWARFASTParserClang] Simplify obsolete error condition for malformed array member type offsets (#160132)
First time check was introduced in
`fa3ab4599d717feedbb83e08e7f654913942520b` to work around a debug-info
generation bug in Clang. This bug was fixed in Clang-4. The check has
since been adjusted (first in
`808ff186f6a6ba1fd38cc7e00697cd82f4afe540`, and then most recently in
`370db9c62910195e664e82dde6f0adb3e255a4fd`).
This check is getting quite convoluted, and all it does is turn an
`array[1]` into an `array[0]` type when it is deemed correct. At this
point the workaround probably never fires, apart from actually valid
codegen. This patch removes the special conditions and emits the error
specifically in those cases where we know the DWARF is malformed.
Added some shell tests for the error case.
Commit: b629981a6daf397375ff1fcadad286883dcaf0ea
https://github.com/llvm/llvm-project/commit/b629981a6daf397375ff1fcadad286883dcaf0ea
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/test/CIR/CodeGen/vbase.cpp
Log Message:
-----------
[CIR] Add virtual base support to getAddressOfBaseClass (#159162)
This patch enables calling virtual functions of virtual base classes of
a derived class.
Commit: 0fcce4fb7b85ed42feb2f2291405fe4a2292b2b4
https://github.com/llvm/llvm-project/commit/0fcce4fb7b85ed42feb2f2291405fe4a2292b2b4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M offload/test/mapping/lambda_by_value.cpp
M offload/test/mapping/map_back_race.cpp
M offload/test/mapping/map_both_pointer_pointee.c
M offload/test/mapping/map_ptr_and_star_local.c
M offload/test/mapping/map_structptr_and_member_global.c
M offload/test/mapping/map_structptr_and_member_local.c
M offload/test/offloading/CUDA/basic_launch_multi_arg.cu
M offload/test/offloading/bug51781.c
M offload/test/offloading/fortran/declare-target-automap.f90
M offload/test/offloading/interop.c
M offload/test/offloading/single_threaded_for_barrier_hang_1.c
M offload/test/offloading/single_threaded_for_barrier_hang_2.c
M offload/test/offloading/spmdization.c
M offload/test/sanitizer/ptr_outside_alloc_1.c
M offload/test/sanitizer/ptr_outside_alloc_2.c
M offload/test/sanitizer/use_after_free_1.c
M offload/test/sanitizer/use_after_free_2.c
Log Message:
-----------
[OpenMP] Mark problematic tests as XFAIL / UNSUPPORTED (#161267)
Summary:
Several of these tests have been failing for literal years. Ideally we
make efforts to fix this, but keeping these broken has had serious
consequences on our testing infrastructure where failures are the norm
so almost all test failures are disregarded. I made a tracking issue for
the ones that have been disabled.
https://github.com/llvm/llvm-project/issues/161265
Commit: 9df1099ba7d92f921333753941360a9b9f5ed0e6
https://github.com/llvm/llvm-project/commit/9df1099ba7d92f921333753941360a9b9f5ed0e6
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
Log Message:
-----------
[CAS] Fix a build failure on 32 bit system from #114100 (#161268)
Fix a build failure on 32 bit system that caused by a warning of
narrowing `uint64_t` to `size_t`.
Commit: 045e09f22b6149bb8288e458a465f1b16cb88b77
https://github.com/llvm/llvm-project/commit/045e09f22b6149bb8288e458a465f1b16cb88b77
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/preserve-profile.ll
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[InstCombine] Set !prof metadata on Selects identified by add.ll test (#158743)
These select instructions are created from non-branching instructions,
so their branch weights are unknown.
Tracking issue: #147390
Commit: 07f8f088b4b3d1c58e73f13a288ff2c088d15ad6
https://github.com/llvm/llvm-project/commit/07f8f088b4b3d1c58e73f13a288ff2c088d15ad6
Author: David Salinas <dsalinas at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-readelf.rst
M llvm/docs/CommandGuide/llvm-readobj.rst
M llvm/include/llvm/Object/OffloadBundle.h
M llvm/lib/Object/OffloadBundle.cpp
A llvm/test/tools/llvm-readobj/ELF/AMDGPU/offloading-fail.test
A llvm/test/tools/llvm-readobj/ELF/AMDGPU/offloading.test
M llvm/tools/llvm-readobj/ObjDumper.cpp
M llvm/tools/llvm-readobj/ObjDumper.h
M llvm/tools/llvm-readobj/Opts.td
M llvm/tools/llvm-readobj/llvm-readobj.cpp
Log Message:
-----------
Add --offoading option to llvm-readobj (#143342)
Utilize new extensions to LLVM Offloading API to
handle offloading fatbin Bundles.
The tool will output a list of available offload bundles
using URI syntax.
---------
Co-authored-by: dsalinas_amdeng <david.salinas at amd.com>
Commit: 12a5854a51c99635dd72b26a73d6ff89d6a5bc81
https://github.com/llvm/llvm-project/commit/12a5854a51c99635dd72b26a73d6ff89d6a5bc81
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Disable tests for unavailable builtins (#161275)
The builtins `__fixunstfdi` and `__multc3` may be removed by the
preprocessor depending on configuration flags. When this happens, the
corresponding tests fail at link time due to missing definitions.
Disable these tests when the builtins are not available.
Also remove the XFAILs for aarch64 windows. As this test now became a
no-op on platforms that lack CRT_HAS_128BIT or CRT_HAS_F128 (aarch64
windows lacks the latter), it no longer fails.
This reapplies e9e166e54354330c474457711a8e7a7ca2efd731 and
656707086e5f6fccd2eb57f5aaf987c328c0f4f1 after fixing declarations of
the builtins in the tests in b54250940c2cd70f911386b02239b50c165e5354.
rdar://159705803
rdar://159705705
---------
Co-authored-by: Martin Storsjö <martin at martin.st>
Commit: cbfe89f0ecf6c9dfc047b39f3b12f0532d8ddeb2
https://github.com/llvm/llvm-project/commit/cbfe89f0ecf6c9dfc047b39f3b12f0532d8ddeb2
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
Log Message:
-----------
[llvm][clang] Use the VFS in `GCOVProfilerPass` (#161260)
This PR starts using the correct VFS in `GCOVProfilerPass` instead of
using the real FS directly. This matches compiler's behavior for other
input files.
Commit: af5c1a696cffb48712526cc862dc1cafc9ce6e3c
https://github.com/llvm/llvm-project/commit/af5c1a696cffb48712526cc862dc1cafc9ce6e3c
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
Log Message:
-----------
[CIR] fix enumeration value 'OMPFuseDirectiveClass' not handled in switch (#161278)
Commit: d481e5f9b7f4bde74fc4909a8a67bbd758991b33
https://github.com/llvm/llvm-project/commit/d481e5f9b7f4bde74fc4909a8a67bbd758991b33
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-atomic-inc-dec.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-fence.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
Log Message:
-----------
[AMDGPU][SPIRV] Use SPIR-V syncscopes for some AMDGCN BIs (#154867)
AMDGCN flavoured SPIR-V allows AMDGCN specific builtins, including those
for scoped fences and some specific RMWs. However, at present we don't
map syncscopes to their SPIR-V equivalents, but rather use the AMDGCN
ones. This ends up pessimising the resulting code as system scope is
used instead of device (agent) or subgroup (wavefront), so we correct
the behaviour, to ensure that we do the right thing during reverse
translation.
Commit: 63e45504abebeccb93365e089916abea1bd53eae
https://github.com/llvm/llvm-project/commit/63e45504abebeccb93365e089916abea1bd53eae
Author: Vladimir Vuksanovic <109677816+vvuksanovic at users.noreply.github.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp
A clang-tools-extra/test/clang-reorder-fields/FlexibleArrayMember.c
Log Message:
-----------
[clang-reorder-fields] Check for flexible array member (#160262)
A flexible array member must remain the last field in the struct.
Commit: 0ab9ffe1bf557cd3a7ebb0c03beb3cb45dcbe077
https://github.com/llvm/llvm-project/commit/0ab9ffe1bf557cd3a7ebb0c03beb3cb45dcbe077
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/CAS/CMakeLists.txt
Log Message:
-----------
[CAS][CMake] Fix rhel bots missing symbol failure from #114100 (#161283)
Link LLVM_PTHREAD_LIB from LLVMCAS library to fix rhel bots.
Commit: d28c07b7550af47ff7adc068d6078388cdeed61d
https://github.com/llvm/llvm-project/commit/d28c07b7550af47ff7adc068d6078388cdeed61d
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[clang-scan-deps] Remove const from ModuleDeps loop to enable move. (#161109)
This changes the iteration from const to non-const so that std::move
results in a true move rather than a copy.
Commit: 5d739cf4186e333770a11d1376eb2ea947cc70e8
https://github.com/llvm/llvm-project/commit/5d739cf4186e333770a11d1376eb2ea947cc70e8
Author: Renaud Kauffmann <rkauffmann at nvidia.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
A mlir/test/Dialect/GPU/memref-to-llvm.mlir
Log Message:
-----------
Create function declaration in the proper module (#161281)
Using `memref.dealloc` in the gpu module would add a function definition
for `@free` in the the top level module instead of the gpu module. The
fix is to do what is already done for memref.alloc which is to use
`op->getParentWithTrait<OpTrait::SymbolTable>()` instead of
`op->getParentOfType<ModuleOp>()` to create the call in the proper
module.
Commit: d23f78175ca64ce4b6d92dead490970e64ca2f4c
https://github.com/llvm/llvm-project/commit/d23f78175ca64ce4b6d92dead490970e64ca2f4c
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M lld/test/wasm/archive-export.test
M lld/test/wasm/comdats.ll
M lld/test/wasm/visibility-hidden.ll
M lld/wasm/Driver.cpp
Log Message:
-----------
[lld][WebAssembly] Fix visibility of `__stack_pointer` global (#161284)
The stack pointer should be global, not hidden / dso-local. Marking it
as global allows it to be exported from the main module and imported
into side modules.
Commit: 1d614a9702973aa9b099a61a6a5992c1de1d8de1
https://github.com/llvm/llvm-project/commit/1d614a9702973aa9b099a61a6a5992c1de1d8de1
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
A clang/test/CIR/IR/global-init.cir
Log Message:
-----------
[CIR] Add GlobalOp ctor and dtor regions (#160779)
This adds support for ctor and dtor regions in cir::GlobalOp. These
regions are used to capture the code that initializes and cleans up the
variable, keeping this initialization and cleanup code with the variable
definition.
This change only adds the CIR dialect support for these regions. Support
for generating the code in these regions from source and lowering these
to LLVM IR will be added in a later change, as will LoweringPrepare
support to move the code into the __cxx_global_var_init() function.
Commit: 7166bc7dbf299b92de193424edfb8d1841fd1ea0
https://github.com/llvm/llvm-project/commit/7166bc7dbf299b92de193424edfb8d1841fd1ea0
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/lib/Parse/ParseExprCXX.cpp
M clang/test/Parser/cxx2b-lambdas-ext-warns.cpp
Log Message:
-----------
[Clang] Avoid null deref in lambda attribute compat warning (#161096)
Fixes #161070
---
This PR addresses the issue in `ext_decl_attrs_on_lambda` by using
`%0`=_attribute name_ and `%1`=_selector_, which prevents a null
`IdentifierInfo*`.
https://github.com/llvm/llvm-project/blob/48a6f2f85c8269d8326c185016801a4eb8d5dfd6/clang/lib/Parse/ParseExprCXX.cpp#L1299-L1302
https://github.com/llvm/llvm-project/blob/48a6f2f85c8269d8326c185016801a4eb8d5dfd6/clang/include/clang/Basic/DiagnosticParseKinds.td#L1143-L1145
https://github.com/llvm/llvm-project/blob/48a6f2f85c8269d8326c185016801a4eb8d5dfd6/clang/include/clang/Basic/DiagnosticParseKinds.td#L1149-L1152
Commit: 18136c249610ce8bb1e4b2b543a605b1221730bd
https://github.com/llvm/llvm-project/commit/18136c249610ce8bb1e4b2b543a605b1221730bd
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M lld/docs/ReleaseNotes.rst
Log Message:
-----------
[lld][macho][NFC] Add release note for #158720 (#161295)
I forgot to add a release note for
https://github.com/llvm/llvm-project/pull/158720 so I'll add it here.
Commit: 1fcf481631b5521732d99963bcb69a81d19e9f79
https://github.com/llvm/llvm-project/commit/1fcf481631b5521732d99963bcb69a81d19e9f79
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm][mustache] Support setting delimiters in templates (#159187)
The base mustache spec allows setting custom delimiters, which slightly
change parsing of partials. This patch implements that feature by adding
a new token type, and changing the tokenizer's behavior to allow setting
custom delimiters.
Commit: 39f292ffa13d7ca0d1edff27ac8fd55024bb4d19
https://github.com/llvm/llvm-project/commit/39f292ffa13d7ca0d1edff27ac8fd55024bb4d19
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/memchr.ll
Log Message:
-----------
[profcheck] Add unknown branch weight for inlined memchr calls. (#160964)
The memchr inliner creates new switch branches but was failling to add
profile metada. This patch fixes the issue by explicitly adding unknown
branch weights to these branches.
Issue [#147390](https://github.com/llvm/llvm-project/issues/147390)
Commit: 6ffacae996b7eecf3859d7c83c95e7d7d95bc03f
https://github.com/llvm/llvm-project/commit/6ffacae996b7eecf3859d7c83c95e7d7d95bc03f
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Refactor tokenizer for clarity (#159188)
This patch refactors the Mustache tokenizer by breaking the logic up
with helper functions to improve clarity and simplify the code.
Commit: dc6e4e97fe5b9414b9597587670b5dfdd7c49b55
https://github.com/llvm/llvm-project/commit/dc6e4e97fe5b9414b9597587670b5dfdd7c49b55
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvinsve0.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit tests for `xvinsve0.{w/d}` (#160829)
Commit: d2e3389abb3a2e4ee27e40f353c5eec476a229f6
https://github.com/llvm/llvm-project/commit/d2e3389abb3a2e4ee27e40f353c5eec476a229f6
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.h
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-hip.mlir
Log Message:
-----------
[mlir][GPU] Generalize gpu.printf to not need gpu.module (#161266)
In order to make the gpu.printf => [various LLVM calls] passes less
order-dependent and to allow downstreams that don't use gpu.module to
use gpu.printf, allow the flowerings for such prints to target the
nearest `SymbolTable` instead.
Commit: 781baf76fb4d9fbfc24bafe5f46946043c265074
https://github.com/llvm/llvm-project/commit/781baf76fb4d9fbfc24bafe5f46946043c265074
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Refactor template rendering (#159189)
Move the rendering logic into the ASTNode, and break the logic down into
individual methods.
Commit: 0f80f18977060cdb315f50d0365507d8497a1a03
https://github.com/llvm/llvm-project/commit/0f80f18977060cdb315f50d0365507d8497a1a03
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvinsve0.ll
Log Message:
-----------
[LoongArch] Custom legalize vector_shuffle to `xvinsve0.{w/d}` when possible (#161156)
Commit: a8034d1809cb39c977f47bb25e190c04b243dfd2
https://github.com/llvm/llvm-project/commit/a8034d1809cb39c977f47bb25e190c04b243dfd2
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-file-diagnostics.c.sarif
M clang/test/Analysis/lit.local.cfg
Log Message:
-----------
[analyzer] Use sed from the ToolBox on AIX (NFC) (#161242)
The change in commit 30402c7 breaks the tests on AIX. This patch
is to change to use the `sed` from AIX Toolbox instead of the default
one which does not support `-r` and `-E`.
Commit: 6b23f4fc4d7cf035dbf9a1af419148b991ddaf2c
https://github.com/llvm/llvm-project/commit/6b23f4fc4d7cf035dbf9a1af419148b991ddaf2c
Author: wanglei <wanglei at loongson.cn>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/test/MC/LoongArch/Macros/macros-la.s
Log Message:
-----------
[LoongArch] Add R_LARCH_MARK_LA relocation for la.abs
Match gas behavior: generate `R_LARCH_MARK_LA` relocation for `la.abs`.
Reviewers: heiher, SixWeining
Reviewed By: SixWeining, heiher
Pull Request: https://github.com/llvm/llvm-project/pull/161062
Commit: 978644c29f40536909b4ecabb58468e25fe6d14d
https://github.com/llvm/llvm-project/commit/978644c29f40536909b4ecabb58468e25fe6d14d
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Remove out parameters from processTags() (#159190)
We can construct the return values directly and simplify the interface.
Commit: eb1960c4812ca8ed4ef0e413f9b68178789c0f7a
https://github.com/llvm/llvm-project/commit/eb1960c4812ca8ed4ef0e413f9b68178789c0f7a
Author: woruyu <1214539920 at qq.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp
Log Message:
-----------
[sanitizer] Handle nullptr name in prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME) (#160824)
### Summary
This PR resolves https://github.com/llvm/llvm-project/issues/160562
Commit: d96c32cdaf588903917a9e7db172729759e34c9d
https://github.com/llvm/llvm-project/commit/d96c32cdaf588903917a9e7db172729759e34c9d
Author: Luo, Yuanke <lyk_03 at hotmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCUDA/vararg.cu
Log Message:
-----------
[CUDA] Enable variadic argument support in front-end (#161305)
Variadice argument for NVPTX as been support in
https://github.com/llvm/llvm-project/commit/486d00eca6b6ab470e8324b52cdf9f32023c1c9a
We can enable it in front-end.
Co-authored-by: Yuanke Luo <ykluo at birentech.com>
Commit: 2f9ae0b603c6d2ccd8e5792e6d16e99a33bd02ff
https://github.com/llvm/llvm-project/commit/2f9ae0b603c6d2ccd8e5792e6d16e99a33bd02ff
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M lld/ELF/Relocations.cpp
Log Message:
-----------
ELF: Rename Relocations.cpp functions and rewrite the file-level comment. NFC
Pull Request: https://github.com/llvm/llvm-project/pull/161229
Commit: 3554c78d973477835b0b062a8aa16ecbc62446dd
https://github.com/llvm/llvm-project/commit/3554c78d973477835b0b062a8aa16ecbc62446dd
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
Log Message:
-----------
ELF: Use preprocessed relocations for EhInputSection scanning
.eh_frame sections require special sub-section processing, specifically,
CIEs are de-duplicated and FDEs are garbage collected. Create a
specialized scanEhSection() function utilizing the just-added
EhInputSection::rels. OffsetGetter is moved to scanEhSection.
This improves separation of concerns between InputSection and
EhInputSection processing.
This removes another `relsOrRelas` call using `supportsCrel=false`.
DWARF.cpp now has the last call.
Pull Request: https://github.com/llvm/llvm-project/pull/161091
Commit: aa42b6455ac1836f4f08c67f1f0870cb178dc02a
https://github.com/llvm/llvm-project/commit/aa42b6455ac1836f4f08c67f1f0870cb178dc02a
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Mustache.h
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Introduce MustacheContext to simplify mustache APIs (#159191)
Commit: c6d3b517ee41c05d99aee6b90a862d6121116d1d
https://github.com/llvm/llvm-project/commit/c6d3b517ee41c05d99aee6b90a862d6121116d1d
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmax_legacy.ll
M llvm/test/CodeGen/AMDGPU/fmin_fmax_legacy.amdgcn.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.ll
M llvm/test/CodeGen/NVPTX/bug22322.ll
M llvm/test/CodeGen/PowerPC/scalar-min-max.ll
M llvm/test/CodeGen/VE/Scalar/max.ll
M llvm/test/CodeGen/VE/Scalar/min.ll
Log Message:
-----------
[DAGCombiner] Remove most `NoSignedZerosFPMath` uses (#161180)
Remained two uses are related to fneg and foldFPToIntToFP, some AMDGPU
tests are duplicated and regenerated.
Commit: 56d920d5868596f48a3a779dc88825594a646af3
https://github.com/llvm/llvm-project/commit/56d920d5868596f48a3a779dc88825594a646af3
Author: owenca <owenpiano at gmail.com>
Date: 2025-09-29 (Mon, 29 Sep 2025)
Changed paths:
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in wrapping { after else (#161048)
Fixes #160775
Commit: 32baec4483d8723f594e04918d6a22d9d1423606
https://github.com/llvm/llvm-project/commit/32baec4483d8723f594e04918d6a22d9d1423606
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/bitfield-layout.cpp
Log Message:
-----------
[clang][Diags] Automatically format AP(S)Int values with separators (#161047)
This adds an `operator<<` overload for `StreamingDiagnostic` that takes
an `APInt`/`APSInt` and formats it with default options, including
adding separators.
This is still an opt-in mechanism since all callers that want to use
this feature need to be changed from
```c++
Diag() << toString(MyInt, 10);
```
to
```c++
Diag() << MyInt;
```
This patch contains one example of a diagnostic making use of this.
Commit: 46ea03997da6b07dda451be7e15ec7f13ebbe3ea
https://github.com/llvm/llvm-project/commit/46ea03997da6b07dda451be7e15ec7f13ebbe3ea
Author: quic_hchandel <hchandel at qti.qualcomm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/select-bare.ll
M llvm/test/CodeGen/RISCV/select-cc.ll
M llvm/test/CodeGen/RISCV/select-cond.ll
M llvm/test/CodeGen/RISCV/select.ll
M llvm/test/CodeGen/RISCV/xqcicm.ll
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Add commutative support for Qualcomm uC Xqcicm extension (#160653)
This is a follow-up to #145643. See
https://github.com/llvm/llvm-project/pull/145643#issuecomment-3009300419.
Commit: e911eba3ef6990da2c4620c573b99a4f20f53da4
https://github.com/llvm/llvm-project/commit/e911eba3ef6990da2c4620c573b99a4f20f53da4
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
Log Message:
-----------
[MLIR][Python] Fix stubgen/PYTHONPATH collision/bug (#161307)
If `PYTHONPATH` is set and points to the build location of the python
bindings package then when stubgen runs, `_mlir` will get imported twice
and bad things will happen (e.g., `Assertion !instance && “PyGlobals
already constructed”’`). This happens because `mlir` is a namespace
package and the importer/loader can't distinguish between
`mlir._mlir_libs._mlir` and `_mlir_libs._mlir` imported from `CWD`. Or
something like that. The fix is to filter out any entries in
`PYTHONPATH` that end in `MLIR_BINDINGS_PYTHON_INSTALL_PREFIX/..` (e.g.,
`python_packages/mlir_core/`).
Commit: b9e41ae6f9efb068e1fe137357c3d8ded31cdd02
https://github.com/llvm/llvm-project/commit/b9e41ae6f9efb068e1fe137357c3d8ded31cdd02
Author: halbi2 <hehiralbi at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/TokenKinds.def
M clang/lib/Sema/SemaTypeTraits.cpp
R clang/test/SemaCXX/type-trait-synthesises-from-spaceship.cpp
A clang/test/SemaCXX/type-trait-synthesizes-from-spaceship.cpp
M libcxx/include/__utility/default_three_way_comparator.h
M libcxx/include/string
M libcxx/test/libcxx/utilities/utility/has_default_three_way.compile.pass.cpp
Log Message:
-----------
[clang][libc++] Fix spelling of "synthesize" (#158523)
There is a tradition to use U.S. English spellings for APIs. For
example, it's uninitialized_fill and not uninitialised_fill,
specialization not specialisation, etcetera.
Commit: ea452c0a020a7ad35bde86c0accabe1c994941aa
https://github.com/llvm/llvm-project/commit/ea452c0a020a7ad35bde86c0accabe1c994941aa
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
Log Message:
-----------
[clangd] Fix off-by-one error in CommandMangler (#160029)
SawInput() is intended to be called for every argument after a `--`, but
it was mistakenly being called for the `--` itself.
Partially fixes https://github.com/clangd/clangd/issues/1850
Commit: 156e9b4b6989043024ea8c5d15360a716af51631
https://github.com/llvm/llvm-project/commit/156e9b4b6989043024ea8c5d15360a716af51631
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/partial-reduce-accumulate.ll
Log Message:
-----------
[WebAssembly] Use partial_reduce_mla ISD nodes (#161184)
Addresssing issue #160847.
Move away from combining the intrinsic call and instead lower the ISD
nodes, using tablegen for pattern matching.
Commit: 635910d14e3f4be1921c5c130cfe7aed7237c619
https://github.com/llvm/llvm-project/commit/635910d14e3f4be1921c5c130cfe7aed7237c619
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
Log Message:
-----------
[clang][Tooling] Support 'c++latest' in InterpolatingCompilationDatabase (#160030)
Fixes https://github.com/clangd/clangd/issues/527
Fixes https://github.com/clangd/clangd/issues/1850
Commit: 170b5fde8fc23525049ebbde8377f59971ee9b3f
https://github.com/llvm/llvm-project/commit/170b5fde8fc23525049ebbde8377f59971ee9b3f
Author: Hans Wennborg <hans at hanshq.net>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/lib/Frontend/FrontendActions.cpp
M clang/test/Modules/cxx20-module-file-info-macros.cpp
Log Message:
-----------
[Modules] Make -module-file-info print macro names in deterministic order (#161332)
Developers reported non-deterministic output from `-module-file-info`,
thinking this reflected non-determinism in the .pcm files themselves.
However, it turned out it was the printing that was non-deterministic:
```
$ cat /tmp/a.h
#define FOO 1
#define BAR 2
$ build/bin/clang -cc1 -std=c++20 -x c++ -emit-header-unit /tmp/a.h -o /tmp/a.pcm
$ build/bin/clang -cc1 -module-file-info /tmp/a.pcm | grep -A2 Definitions
Macro Definitions:
FOO
BAR
$ build/bin/clang -cc1 -module-file-info /tmp/a.pcm | grep -A2 Definitions
Macro Definitions:
BAR
FOO
```
Making the output deterministic also simplifies the test.
This is a follow-up to 360c5fe54c0758c73bf85453fd2913f371adc7d5
Commit: ff130f293dd7f9e280698b02066e8bf7116bcc3a
https://github.com/llvm/llvm-project/commit/ff130f293dd7f9e280698b02066e8bf7116bcc3a
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/lib/ExecutionEngine/LevelZeroRuntimeWrappers.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in LevelZeroRuntimeWrappers.cpp (NFC)
Commit: f2c9abc2be79f4dab0103c79e5582cb6936e253f
https://github.com/llvm/llvm-project/commit/f2c9abc2be79f4dab0103c79e5582cb6936e253f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-container-size-empty in Vectorization.cpp (NFC)
Commit: 87bc0f7431891b3f5d83205f856be7362911790e
https://github.com/llvm/llvm-project/commit/87bc0f7431891b3f5d83205f856be7362911790e
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/X86/bitop-of-castops.ll
Log Message:
-----------
[VectorCombine] Preserve cast flags in foldBitOpOfCastConstant (#161237)
Follow-up of #157822.
Commit: 55054db762af3a177b89487a0c6aebf3efec5786
https://github.com/llvm/llvm-project/commit/55054db762af3a177b89487a0c6aebf3efec5786
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/GenericUniformityImpl.h
Log Message:
-----------
[Unifomity] Remove unused PhiInput definition (NFC) (#161116)
This appears to have no users.
Commit: 048922edbb9d5d319622956d91ef062a08039949
https://github.com/llvm/llvm-project/commit/048922edbb9d5d319622956d91ef062a08039949
Author: Jack Frankland <jack.frankland at arm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
Log Message:
-----------
[mlir][memref-to-spirv]: Remap Image Load Coordinates (#160495)
When converting a `memref.load` from the image address space to a
`spirv.ImageFetch` ensure that we correctly map the load indices to
width, height and depth.
The lowering currently assumes a linear image tiling, that is row-major
memory layout. This allows us to support any memref layout that is a
permutation of the dimensions, more complex layouts are not currently
supported. Because the ordering of the dimensions in the vector passed
to image fetch is the opposite to that in the memref directions a final
reversal of the mapped dimensions is always required.
---------
Signed-off-by: Jack Frankland <jack.frankland at arm.com>
Commit: 5123dfb51722a5075b3515c49930216869f595d6
https://github.com/llvm/llvm-project/commit/5123dfb51722a5075b3515c49930216869f595d6
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/Transforms/Transforms.h
M mlir/lib/Dialect/Arith/Transforms/ReifyValueBounds.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in ReifyValueBounds.cpp (NFC)
Commit: 88658dbbc510c78bce62005bf7cf35d5b869113c
https://github.com/llvm/llvm-project/commit/88658dbbc510c78bce62005bf7cf35d5b869113c
Author: Sam Tebbs <samuel.tebbs at arm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
Log Message:
-----------
[LV] Add ExtNegatedMulAccReduction expression type (#160154)
This PR adds the ExtNegatedMulAccReduction expression type for
VPExpressionRecipe so that extend-multiply-accumulate reductions with a
negated multiply can be bundled.
Stacked PRs:
1. https://github.com/llvm/llvm-project/pull/156976
2. -> https://github.com/llvm/llvm-project/pull/160154
3. https://github.com/llvm/llvm-project/pull/147302
Commit: 6b19ccdf64a0022b9665b61e4003b4e87643829b
https://github.com/llvm/llvm-project/commit/6b19ccdf64a0022b9665b61e4003b4e87643829b
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/isinf.ll
A llvm/test/CodeGen/AArch64/masked-integer-compare.ll
Log Message:
-----------
[AArch64] Simplify some masked integer comparisons. (#153783)
Specifically, `X & M ?= C --> (C << clz(M)) ?= (X << clz(M))` where M is
a non-empty sequence of ones starting at the least significant bit with
the remainder zero and C is a constant subset of M that cannot be
materialised into a SUBS (immediate). Proof:
https://alive2.llvm.org/ce/z/haqdJ4.
This improves the comparison in isinf, for example:
```cpp
int isinf(float x) {
return __builtin_isinf(x);
}
```
Before:
```
isinf:
fmov w9, s0
mov w8, #2139095040
and w9, w9, #0x7fffffff
cmp w9, w8
cset w0, eq
ret
```
After:
```
isinf:
fmov w9, s0
mov w8, #-16777216
cmp w8, w9, lsl #1
cset w0, eq
ret
```
Commit: 0d9dd60815e9b802cd2a02f0eec13941660e8fb7
https://github.com/llvm/llvm-project/commit/0d9dd60815e9b802cd2a02f0eec13941660e8fb7
Author: BaiXilin <x53bai at uwaterloo.ca>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/Headers/avx10_2_512niintrin.h
M clang/lib/Headers/avxvnniint8intrin.h
M clang/test/CodeGen/X86/avxvnniint8-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
A llvm/test/CodeGen/X86/avx10.2-intrinsic-upgrade.ll
M llvm/test/CodeGen/X86/avx10_2_512ni-intrinsics.ll
M llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
A llvm/test/CodeGen/X86/avxvnniint8-intrinsics-upgrade.ll
M llvm/test/CodeGen/X86/avxvnniint8-intrinsics.ll
M llvm/test/CodeGen/X86/stack-folding-int-avxvnniint8.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx10_2_512ni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx10_2ni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avxvnniint8-intrinsics.ll
M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
Log Message:
-----------
[x86][AVX-VNNI] Fix VPDPBXXD Argument Type (#159222)
Fixed intrinsic VPDP[SS,SU,UU]D[,S]_128/256/512's argument types to match with the ISA.
Fixes part of #97271.
Commit: da315a3528807574d1c9ba44758d35bfc515e709
https://github.com/llvm/llvm-project/commit/da315a3528807574d1c9ba44758d35bfc515e709
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
A bolt/include/bolt/Core/MCInstUtils.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Core/CMakeLists.txt
A bolt/lib/Core/MCInstUtils.cpp
M bolt/lib/Passes/PAuthGadgetScanner.cpp
Log Message:
-----------
[BOLT] Refactor MCInstReference and move it to Core (NFC) (#155846)
Refactor MCInstReference class and move it from PAuth gadget scanner to
Core.
MCInstReference is a class representing a reference to a constant
instruction inside a parent entity - either inside a basic block (which
has a reference to its parent function) or directly inside a function
(when CFG information is not available).
This patch reapplies #138655 with a fix for iterator usage and multiple
minor issues fixed during the second round of review.
Commit: 45ce88758d24df7c2c322b152cf4894f3e8ee45a
https://github.com/llvm/llvm-project/commit/45ce88758d24df7c2c322b152cf4894f3e8ee45a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/X86/cleanup-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/pr45259.ll
M llvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
Log Message:
-----------
[LV] Don't preserve LCSSA in SCEVExpander for runtime checks. (#159556)
LV does not preserve LCSSA, it constructs it just before processing a
loop to vectorize. Runtime check expressions are invariant to that loop,
so expanding them should not break LCSSA form for the loop we are about
to vectorize.
This fixes a crash when discarding instructions generated when expanding
runtime checks, if the expansion introduces LCSSA phis for values from
other loops which are not in LCSSA form: we would introduce new LCSSA
phis and update all outside users, some of which are not created by the
expander and cannot be cleaned up.
Fixes https://github.com/llvm/llvm-project/issues/158259.
PR: https://github.com/llvm/llvm-project/pull/159556
Commit: ec91d6ba6abdb678730fa1007230d05dc4bc09e8
https://github.com/llvm/llvm-project/commit/ec91d6ba6abdb678730fa1007230d05dc4bc09e8
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do13.f90
A flang/test/Semantics/OpenMP/do22.f90
Log Message:
-----------
[Flang] Add perfect-nest and rectangular-loop semantic tests (#160283)
Add semantic tests of currently unsupported OpenMP canonical loops:
* non-perfectly nested canonical loop nests
* non-rectangular canonical loop nests
Both were introduced in OpenMP 5.0 and are not yet supported by Flang.
The message "Trip count must be computable and invariant" is the same
that OpenACC emits for non-rectangular loops in
`AccAttributeVisitor::CheckAssociatedLoop`. I considered reusing the
code, but calls OpenACC-only methods and has different behavior (e.g.
symbol resolution and does not check the step operand)
Commit: 2f7252a8412fed7be8df218a8c5ecad1fd18fe43
https://github.com/llvm/llvm-project/commit/2f7252a8412fed7be8df218a8c5ecad1fd18fe43
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/reverse-induction-gep-nowrap-flags.ll
Log Message:
-----------
[LV] Preserve GEP nusw when widening memory (#160885)
Commit: 709a74dfb3b5e965479760af8bd29a84c89e1d2e
https://github.com/llvm/llvm-project/commit/709a74dfb3b5e965479760af8bd29a84c89e1d2e
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
Log Message:
-----------
AMDGPU: Fix s_barrier_leave to write to scc (#161221)
s_barrier_leave implicitly defines $scc
and does not use imm that represents type of barrier,
isel pattern ignores imm operand from llvm intrinsic.
Test if SIInsertWaitcnts tracks this scc write.
Commit: 065cd64af3166da430bd03067514f9c9ac09e8e1
https://github.com/llvm/llvm-project/commit/065cd64af3166da430bd03067514f9c9ac09e8e1
Author: Jeaye Wilkerson <contact at jeaye.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/Interpreter/IncrementalAction.cpp
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Interpreter/Interpreter.cpp
A clang/test/Interpreter/execute-pch.cpp
M clang/test/lit.cfg.py
M clang/tools/clang-repl/ClangRepl.cpp
Log Message:
-----------
[clang-repl] Teach clang-repl how to load PCHs (reprise) (#157359)
This is an updated version of @vgvassilev's PR from last year here:
https://github.com/llvm/llvm-project/pull/94166
In short, it includes:
1. The fix for a blocking issue where `clang::Interpreter` (and thus
`clang-repl`) cannot resolve symbols defined in a PCH
2. A test to prove this is working
3. A new hidden flag for `clang-repl` so that `llvm-lit` can match the
host JIT triple between the PCH and `clang-repl`; previously, they may
differ in some cases
4. Everything based on the latest LLVM main
Shout out to @kylc for finding a logic issue which had us stumped for a
while (and securing the
[bounty](https://github.com/jank-lang/jank/issues/446)).
---------
Co-authored-by: Vassil Vassilev <v.g.vassilev at gmail.com>
Co-authored-by: Kyle Cesare <kcesare at gmail.com>
Commit: c389f5008bb836655a2367fe5ca906b34b65dc18
https://github.com/llvm/llvm-project/commit/c389f5008bb836655a2367fe5ca906b34b65dc18
Author: Liao Chunyu <chunyu at iscas.ac.cn>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/docs/RISCVUsage.rst
Log Message:
-----------
[Docs][RISCV]Remove experimental from Smctr, Ssctr,Sdext and Sdtrig (#161058)
Commit: 1553b3de71112f7faf2c5d25227b322978bab9c0
https://github.com/llvm/llvm-project/commit/1553b3de71112f7faf2c5d25227b322978bab9c0
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
Log Message:
-----------
AMDGPU: Fix gcc build break (#161354)
Commit: 0d2b404a352e1e1abe0c51e636755f1fc8352107
https://github.com/llvm/llvm-project/commit/0d2b404a352e1e1abe0c51e636755f1fc8352107
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/unittests/IR/IntrinsicsTest.cpp
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[LLVM] Fix a bug in `Intrinsic::getFnAttributes` (#161248)
Commit: 0d91e6daa1a3361138a964733c6ec1610760da71
https://github.com/llvm/llvm-project/commit/0d91e6daa1a3361138a964733c6ec1610760da71
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
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-array-recipes-int.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
Log Message:
-----------
[OpenACC][CIR] Generate private recipe pointer/array 'alloca's (#160911)
As a next step to generating pointer/array recipes, this patch generates
just the 'alloca' lines that are necessary. Copying pointers over to
restore the structure is held off to the next patch.
In the case of a pointer, we need to allocate the level 'below' it (if
we index into it), then copy the values into the pointers. In the case
of an array, we skip the alloca (since the array's alloca contains the
value).
After this, we'll need a patch that copies the pointers into place, and
finally one that does the initialization of these values.
Commit: ff149531281270d217b80a099232f947be9ac622
https://github.com/llvm/llvm-project/commit/ff149531281270d217b80a099232f947be9ac622
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/PPCTypes.def
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/test/AST/ast-dump-ppc-types.c
M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
M clang/test/CodeGen/PowerPC/ppc-dmf-mma-builtin-err.c
M clang/test/CodeGen/PowerPC/ppc-dmf-types.c
M clang/test/CodeGenCXX/ppc-mangle-mma-types.cpp
M clang/test/Sema/ppc-dmf-types.c
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[Clang][PowerPC] Add __dmr2048 type and DMF crypto builtins (#157152)
Define the __dmr2048 type to represent the DMR pair introduced by the
Dense Math Facility on PowerPC, and add three Clang builtins
corresponding to DMF cryptography:
__builtin_mma_dmsha2hash
__builtin_mma_dmsha3hash
__builtin_mma_dmxxshapad
The __dmr2048 type is required for the dmsha3hash crypto builtin, and,
as withother PPC MMA and DMR types, its use is strongly restricted.
Commit: 8ae0a20f533cc5fe8a48798159d0a38b722082b5
https://github.com/llvm/llvm-project/commit/8ae0a20f533cc5fe8a48798159d0a38b722082b5
Author: Liao Chunyu <chunyu at iscas.ac.cn>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
Log Message:
-----------
[RISCV][NFC] Update ratified extensions list in riscv-target-features.c
Commit: 5e4eb334afd2e3dc12f9bd53dd9d92c12b40b164
https://github.com/llvm/llvm-project/commit/5e4eb334afd2e3dc12f9bd53dd9d92c12b40b164
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/RISCV/basic-strided-loads.ll
Log Message:
-----------
[SLPVectorizer] Remove `align 16` in a test. (#161251)
It is not necessary.
Commit: 6f1f00c24368512cf39db68d585f38662c6f65ea
https://github.com/llvm/llvm-project/commit/6f1f00c24368512cf39db68d585f38662c6f65ea
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/allocate-align01.f90
M flang/test/Semantics/OpenMP/allocate01.f90
Log Message:
-----------
[flang][OpenMP] Move semantic checks for ALLOCATE to check-omp-structure (#161249)
The checks were previously in resolve-directives, which is mostly
intended for determining symbol properties, not performing semantic
checks.
Commit: e485d5e77a16fe5b775dc57e2ea4df9eade737cd
https://github.com/llvm/llvm-project/commit/e485d5e77a16fe5b775dc57e2ea4df9eade737cd
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/test-delete-tree.ll
Log Message:
-----------
[SLPVectorizer] Clear `TreeEntryToStridedPtrInfoMap`. (#160544)
We need to clear `TreeEntryToStridedPtrInfoMap` in `deleteTree`.
Commit: c2188168cab442192121b34052a4edbf4b439f60
https://github.com/llvm/llvm-project/commit/c2188168cab442192121b34052a4edbf4b439f60
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/test/Integration/debug-split-dwarf.f90
A flang/test/Transforms/debug-split-dwarf.fir
Log Message:
-----------
[flang][debug] Generate splitDebugFilename field in DICompileUnitAttr. (#161214)
This PR builds on https://github.com/llvm/llvm-project/pull/160540 and
allows us to set the `splitDebugFilename` field in `DICompileUnitAttr`.
The changes are mostly mechanical.
I saw some spurious white space in a test that I have cleaned up.
Commit: 343476e12648c8e4afadff55f74ff95a36cfa8e3
https://github.com/llvm/llvm-project/commit/343476e12648c8e4afadff55f74ff95a36cfa8e3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-container-size-empty in LinalgTransformOps.cpp (NFC)
Commit: cf50bbf983c6ff032c7ad0de27ffaff412947ffb
https://github.com/llvm/llvm-project/commit/cf50bbf983c6ff032c7ad0de27ffaff412947ffb
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/TypeSize.h
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
M llvm/unittests/Support/TypeSizeTest.cpp
Log Message:
-----------
[AArch64][SVE2p1] Allow more uses of mask in performActiveLaneMaskCombine (#159360)
The combine replaces a get_active_lane_mask used by two extract
subvectors with a single paired whilelo intrinsic. When the instruction
is used for control flow in a vector loop, an additional extract of element
0 may introduce other uses of the intrinsic such as ptest and reinterpret
cast, which is currently not supported.
This patch changes performActiveLaneMaskCombine to count the number
of extract subvectors using the mask instead of the total number of uses,
and returns the concatenated results of get_active_lane_mask.
Commit: 4a873d58df755d220889b994f59cbdea2cdefc49
https://github.com/llvm/llvm-project/commit/4a873d58df755d220889b994f59cbdea2cdefc49
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/IR/Value.cpp
Log Message:
-----------
[IR] Don't create ptrtoint expression to determine alignment (NFCI) (#161364)
We try to determine the alignment of a constant by creating a ptrtoint
expression and seeing if it folds. I believe the only case this can
actually handle is where the constant is an inttoptr expression. Handle
that directly instead of going through another ptrtoint expression.
I ran into this while trying to clean up our isEliminableCastPair()
mess, which is going to disable ptrtoint(inttoptr) folding without
DataLayout, breaking this code.
Commit: 98d43ef2d842eb8b552b244a4ed6218d757682a1
https://github.com/llvm/llvm-project/commit/98d43ef2d842eb8b552b244a4ed6218d757682a1
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
Log Message:
-----------
AMDGPU: Use srcvalue and delete Ignore complex pattern (#161359)
Commit: 82efd72ed505c6ec183eca700290a29051c2d6e6
https://github.com/llvm/llvm-project/commit/82efd72ed505c6ec183eca700290a29051c2d6e6
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Math/IR/MathOps.td
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
M mlir/lib/Dialect/Math/IR/MathOps.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/MathToLLVM/math-to-llvm.mlir
M mlir/test/Dialect/Math/ops.mlir
Log Message:
-----------
[MLIR] Add sincos op to math dialect (#160772)
Now that `sincos` is a supported intrinsic in the LLVM dialect
(#160561) we are able to add the corresponding operation in
the math dialect and add conversion patterns for LLVM and NVVM.
We have several benchmarks that use sine and cosine in hot-loops, and
saving some calculations by performing them together can benefit
performance. We would like to have a way to represent sincos in the math
dialect.
Commit: afe73f4db8f6e9d87ed07be64493dfe2fdaa92c8
https://github.com/llvm/llvm-project/commit/afe73f4db8f6e9d87ed07be64493dfe2fdaa92c8
Author: Balázs Benics <108414871+balazs-benics-sonarsource at users.noreply.github.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/test/Analysis/cxxctr-evalcall-analysis-order.cpp
Log Message:
-----------
[analyzer][NFC] Explain why operator new/delete should never be eval-called (#161370)
Downstream, some change triggered an investigation if we could move a
checker callback from check::PostCall to eval::Call. After a lengthy
investigation that lead to ExprEngine::VisitCXXNewExpr we realized that
CXXNewExprs only trigger a PreCall and PostCall, but never an EvalCall.
It also had a FIXME that maybe it should trigger it.
Remember, it called `defaultEvalCall` which either inlines or
conservatively evaluates aka. invalidates the call. But never probes the
checker eval-calls to see if any would step in.
After implementing the changes to trigger the eval call for the
checkers, I realized that it doesn't really make sense because we are
eval-calling user-provided functions, that we can't be really sure about
their semantics, thus there is no generic way to properly implement the
eval call callback.
This touches on an important point. It only ever makes sense to eval
call functions that has a clear spec. such as standard functions, as
implementing the callback would prevent the inlining of that function,
risking regressing analysis quality if the implemented model is not
complete/correct enough.
As a conclusion, I opted for not exposing the eval call event to
checkers, in other words, keep everything as-is, but document my
journey.
CPP-6585
Commit: 296af382c814539348b2aac797e73169355c5b8c
https://github.com/llvm/llvm-project/commit/296af382c814539348b2aac797e73169355c5b8c
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[NFC][LV] Fix warning of unused SubConst variable
https://github.com/llvm/llvm-project/pull/160154 added an assertion
using a new variable, which caused a warning in builds without asserts.
This patch adds [[maybe_unused]] to prevent that warning.
Commit: e9ffd2ac13ea09a9df50427ec7f28312244fba60
https://github.com/llvm/llvm-project/commit/e9ffd2ac13ea09a9df50427ec7f28312244fba60
Author: Valery Dmitriev <valeryd at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
R flang/test/HLFIR/simplify-hlfir-intrinsics-index.fir
Log Message:
-----------
Revert "[flang] Simplify hlfir.index in a few limited cases. (#157883)" (#161387)
This reverts commit edca510555fd6c2adfe15dba6993f4e64575e647 due to reported failures.
Commit: 7ce73ab169257509336b0a3f6042c3ab7807b760
https://github.com/llvm/llvm-project/commit/7ce73ab169257509336b0a3f6042c3ab7807b760
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
Log Message:
-----------
[AArch64][SME] Fix typo in docs "block" -> "bundle" (NFC) (#161383)
Commit: 310db2068259ec79336b5b117ad6c5fdf4f7edf7
https://github.com/llvm/llvm-project/commit/310db2068259ec79336b5b117ad6c5fdf4f7edf7
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add RegBankLegalize support for buffer loads with formats (#161291)
Commit: e6425a764f039f29dfc4096567d64d529930d026
https://github.com/llvm/llvm-project/commit/e6425a764f039f29dfc4096567d64d529930d026
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Integration/debug-complex-1.f90
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-1.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-ref-type.fir
M flang/test/Transforms/debug-tuple-type.fir
M flang/test/Transforms/debug-vector-type.fir
Log Message:
-----------
[flang][debug] Improve name generation for basic types. (#161361)
For basic types, currently, we use the type name (e.g., `integer`,
`real`) as the debug name. This results in types of different sizes
having the same name. This patch improves the naming by appending the
size in bytes to the type name (e.g., `integer*8`, `real*8`).
Fixes https://github.com/llvm/llvm-project/issues/160890
Commit: ebcf025e2e84da7557350e46891125f6f34fbbfe
https://github.com/llvm/llvm-project/commit/ebcf025e2e84da7557350e46891125f6f34fbbfe
Author: Marcos Maronas <marcos.maronas at intel.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/test/CodeGen/SPIRV/capability-FloatControl2.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/decoration.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/exec_mode.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/exec_mode2.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/exec_mode3.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/replacements.ll
Log Message:
-----------
[SPIR-V] Implement SPV_KHR_float_controls2 (#146941)
Implementation of
[SPV_KHR_float_controls2](https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_float_controls2.html)
extension, and corresponding tests.
Some of the tests make use of `!spirv.ExecutionMode` LLVM named
metadata. This is because some SPIR-V instructions don't have a direct
equivalent in LLVM IR, so the SPIR-V Target uses different LLVM named
metadata to convey the necessary information. Below, you will find an
example from one of the newly added tests:
```
!spirv.ExecutionMode = !{!19, !20, !21, !22, !23, !24, !25, !26, !27}
!19 = !{ptr @k_float_controls_float, i32 6028, float poison, i32 131079}
!20 = !{ptr @k_float_controls_all, i32 6028, float poison, i32 131079}
!21 = !{ptr @k_float_controls_float, i32 31}
!22 = !{ptr @k_float_controls_all, i32 31}
!23 = !{ptr @k_float_controls_float, i32 4461, i32 32}
!24 = !{ptr @k_float_controls_all, i32 4461, i32 16}
!25 = !{ptr @k_float_controls_all, i32 4461, i32 32}
!26 = !{ptr @k_float_controls_all, i32 4461, i32 64}
!27 = !{ptr @k_float_controls_all, i32 4461, i32 128}
```
`!spirv.ExecutionMode` contains a list of metadata nodes, and each of
them specifies the required operands for expressing a particular
`OpExecutionMode` instruction in SPIR-V. For example, `!19 = !{ptr
@k_float_controls_float, i32 6028, float poison, i32 131079}` will be
lowered to `OpExecutionMode [[k_float_controls_float_ID]]
FPFastMathDefault [[float_type_ID]] 131079`.
---------
Co-authored-by: Dmitry Sidorov <dmitry.sidorov at intel.com>
Commit: 8b445ab68452fc81a1f0e662c11c3989ca98928c
https://github.com/llvm/llvm-project/commit/8b445ab68452fc81a1f0e662c11c3989ca98928c
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
Log Message:
-----------
[CodeGen] Fix performance regression introduced in b05101b
The isNormalValueType = false flag was not set for this pseudo value
type, which caused significant size increases for some classes: the
size of the TargetLoweringBase class to 1.5 MB, because the size of
that class is quadratic in MVT::VALUETYPE_SIZE, and this commit
increased that from 256 to 504.
Reported by: abadams
Fixes: b05101b ("[TableGen, CodeGen, CHERI] Add support for the cPTR wildcard value type.")
Reviewed By: nikic
Pull Request: https://github.com/llvm/llvm-project/pull/161313
Commit: 58b4951726aa1cf92ca08f9b87f5ea7d28700e75
https://github.com/llvm/llvm-project/commit/58b4951726aa1cf92ca08f9b87f5ea7d28700e75
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
A llvm/test/CodeGen/AArch64/seh-minimal-prologue-epilogue.ll
A llvm/test/CodeGen/AArch64/wincfi-minimal-seh-prologue.ll
R llvm/test/CodeGen/AArch64/wincfi-seh-only-in-epilogue.ll
Log Message:
-----------
Aarch64: Emit a minimal SEH prologue when needed (#158173)
In some cases, with very simple thunks, it is possible that the
`.seh_endprologue` is not emitted. This causes issues in the assembler
because the epilogue ends up starting before the prologue has ended.
Bug: swiftlang/llvm-project#11377
Commit: 981122696701d3c3897af267afd73bbefa61c3d4
https://github.com/llvm/llvm-project/commit/981122696701d3c3897af267afd73bbefa61c3d4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
A llvm/test/CodeGen/ARM/issue159343.ll
A llvm/test/CodeGen/ARM/pr159343.mir
M llvm/test/CodeGen/ARM/shouldRewriteCopySrc.ll
Log Message:
-----------
PeepholeOpt: Try to constrain uses to support subregister (#161338)
This allows removing a special case hack in ARM. ARM's implementation
of getExtractSubregLikeInputs has the strange property that it reports
a register with a class that does not support the reported subregister
index. We can however reconstrain the register to support this usage.
This is an alternative to #159600. I've included the test, but
the output is different. In this case version the VMOVSR is
replaced with an ordinary subregister extract copy.
Commit: 870e4f9a525d07d39b1e43db6c872d6c34c1bcd8
https://github.com/llvm/llvm-project/commit/870e4f9a525d07d39b1e43db6c872d6c34c1bcd8
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M libcxx/test/std/containers/sequences/vector/common.h
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.append.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.concat.pass.cpp
M libcxx/test/support/count_new.h
Log Message:
-----------
[libc++][test] Use ASSERT_WITH_LIBRARY_INTERNAL_ALLOCATIONS in more places (#144339)
ASSERT_WITH_LIBRARY_INTERNAL_ALLOCATIONS allows waiving asserts, for
cases when we can't count allocations that happen within the libc++
shared library.
When compiling with optimization, it is possible that some calls end up
generated inline, where the overridden operator new/delete do get called
(counting those calls), whereas the compiler may decide to leave some
calls to the external definition (inside the shared library, where we
can't count the calls).
In particular, in one case, a non-optimized build calls
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev from
the DLL, while it gets inlined (including direct calls to operator
delete) when built with optimization.
Therefore; for the cases where we can't count allocations internally
within the library, waive these asserts.
This fixes all testcases in mingw mode, when built with optimization
enabled.
Commit: e8e0b3dcd0657a75df00ff12769b9837985b385a
https://github.com/llvm/llvm-project/commit/e8e0b3dcd0657a75df00ff12769b9837985b385a
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/array_types.ll
M llvm/test/Instrumentation/MemorySanitizer/bmi.ll
M llvm/test/Instrumentation/MemorySanitizer/byval.ll
Log Message:
-----------
[MemorySanitizer] Generate some test checks (NFC)
Commit: ccd06e48098b826cafcc2e553a8cb9081e0a06dc
https://github.com/llvm/llvm-project/commit/ccd06e48098b826cafcc2e553a8cb9081e0a06dc
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/istream
A libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/ignore.char_type.pass.cpp
Log Message:
-----------
[libc++][istream] P3223R2: Making `std::istream::ignore` less surprising (#147007)
Implements https://wg21.link/P3223R2 as a DR as, as recommended in
https://github.com/cplusplus/papers/issues/1871#issuecomment-2993018698.
Resolves -1L ambiguity.
Closes #148178
Commit: 042540ab66e5ebee650e45ba6bfa4e68a045ff0a
https://github.com/llvm/llvm-project/commit/042540ab66e5ebee650e45ba6bfa4e68a045ff0a
Author: Félix-Antoine Constantin <felix-antoine.constantin at comact.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/invalid-enum-default-initialization.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
Log Message:
-----------
[clang-tidy] New Option Invalid Enum Default Initialization (#159220)
Added a new Option IgnoredEnums to bugprone invalid enum default
initialization to limit the scope of the analysis. This is needed to
remove warnings on enums like std::errc where the enum doesn't define a
value of 0, but is still used to check if some function calls like
std::from_chars are executed correctly.
The C++ Standard section 22.13.2 mentions the following : "[...] If the
member ec of the return value is such that the value is equal to the
value of a value-initialized errc, the conversion was successful [...]"
This means that a call to `std::errc{}` is clearly defined by the
standard and should not raise any warning under this check.
Commit: 95069c119668a190afe766cab912a17a432a6f0f
https://github.com/llvm/llvm-project/commit/95069c119668a190afe766cab912a17a432a6f0f
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
Log Message:
-----------
[flang][OpenMP] Remove unused DECLARE REDUCTION from openmp-utils.h, NFC (#161390)
DECLARE REDUCTION is now handled by the generic code, and the special
handling no longer applies.
Commit: 552ee3c160fe619e86e796b2fde2cc51592c3b5a
https://github.com/llvm/llvm-project/commit/552ee3c160fe619e86e796b2fde2cc51592c3b5a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/AllocatorList.h
Log Message:
-----------
[ADT] Add const to AllocatorList::{empty,size} (#161320)
While I am at it, this patch adds [[nodiscard]].
Commit: 0db995e60b6b52aa1debc685d364afa5bbfd220c
https://github.com/llvm/llvm-project/commit/0db995e60b6b52aa1debc685d364afa5bbfd220c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/ArrayRef.h
Log Message:
-----------
[ADT] Add const to operator== in ArrayRef.h (#161321)
While I am at it, this patch adds [[nodiscard]].
Commit: e457307b8aedbcb70430f2f907057589fa363600
https://github.com/llvm/llvm-project/commit/e457307b8aedbcb70430f2f907057589fa363600
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/TrailingObjects.h
Log Message:
-----------
[ADT] Make non-const functions forward to const versions (NFC) (#161323)
These functions all correspond to their respective const versions.
This patch uses the "const_cast" trick to forward to the const
versions.
Commit: d7421e6a28594b4d43a67fad68cffa801474c98a
https://github.com/llvm/llvm-project/commit/d7421e6a28594b4d43a67fad68cffa801474c98a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/docs/CIBestPractices.rst
Log Message:
-----------
[llvm] Proofread CIBestPractices.rst (#161324)
Commit: ab645f1dff323569ffe8a6fabedbae259101b1a7
https://github.com/llvm/llvm-project/commit/ab645f1dff323569ffe8a6fabedbae259101b1a7
Author: YixingZhang007 <yixing.zhang at intel.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/test/CodeGen/SPIRV/instructions/integer-casts.ll
A llvm/test/CodeGen/SPIRV/instructions/quantizeto16.ll
Log Message:
-----------
[SPIRV] Avoid OpQuantizeToF16 in SPIR-V kernel test (#158086)
This PR resolves the current failure in the `integer-casts.ll` SPIR-V
test during CI runs in `llvm-project`.
The failure occurs because the SPIR-V instruction `OpQuantizeToF16`
requires the `Capability::Shader`. However, the function in
`integer-casts.ll` is written as a kernel function and executed in a
kernel environment. Therefore, `Capability::Kernel` is emitted instead
of `Capability::Shader`. To fix this, we remove the `QuantizeToF16` test
from`integer-casts.ll` in this PR.
Commit: 0898348abd388de716e527d4454fbe874334f53c
https://github.com/llvm/llvm-project/commit/0898348abd388de716e527d4454fbe874334f53c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Make blockNeedsPredication arguments const (NFC).
The arguments aren't modified, mark them as const. This prepares for new
users in a follow-up, which only have access to const versions of the
arguments.
Commit: 2802ab673e1613bd158bd2a0998c7604001fc7fb
https://github.com/llvm/llvm-project/commit/2802ab673e1613bd158bd2a0998c7604001fc7fb
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
Log Message:
-----------
[PowerPC] Implement Elliptic Curve Cryptography (ECC) Instructions (#158362)
New instructions added:
* xxmulmul
* xxmulmulhiadd
* xxmulmulloadd
* xxssumudm
* xxssumudmc
* xxssumudmcext
* xsaddadduqm
* xsaddaddsuqm
* xsaddsubuqm
* xsaddsubsuqm
* xsmerge2t1uqm
* xsmerge2t2uqm
* xsmerge2t3uqm
* xsmerge3t1uqm
* xsrebase2t1uqm
* xsrebase2t2uqm
* xsrebase2t3uqm
* xsrebase2t4uqm
* xsrebase3t1uqm
* xsrebase3t2uqm
* xsrebase3t3uqm
Commit: ccf1fb00fee3a79b09adacdc95a32660546f9f14
https://github.com/llvm/llvm-project/commit/ccf1fb00fee3a79b09adacdc95a32660546f9f14
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M lld/MachO/SyntheticSections.cpp
Log Message:
-----------
[lld][macho][NFC] Factor count zeros into helper function (#161241)
Move `llvm::countr_zero()` into a helper function to reduce code
duplication between `CStringSection` and `DeduplicatedCStringSection`.
More importantly, this moves a giant comment to that helper function
since it pertains to both classes.
Commit: 71d8ddc78a9beeb307d7effab73f557c08b70a7e
https://github.com/llvm/llvm-project/commit/71d8ddc78a9beeb307d7effab73f557c08b70a7e
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/test/CIR/CodeGen/struct.cpp
Log Message:
-----------
[CIR] Upstream ParenExpr for AggregateExpr (#160998)
Upstream ParenExpr support for AggregateExpr
Commit: 178651ac872f4ca3b2d77e0ff6ff87e83a066f6f
https://github.com/llvm/llvm-project/commit/178651ac872f4ca3b2d77e0ff6ff87e83a066f6f
Author: sebvince <115461989+sebvince at users.noreply.github.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
Log Message:
-----------
[MLIR][SCF] Add loops as parameter to LoopTerminator callback when using CustomOp. (#161386)
This PR adds to the generateLoopTerminatorFn callback the loops
generated by GenerateLoopHeaderFn. This is needed to correctly set the
insertion point with scf.forall ops.
Commit: c4e7da3da5fe1c685b6789e34c4dcf23aec0158a
https://github.com/llvm/llvm-project/commit/c4e7da3da5fe1c685b6789e34c4dcf23aec0158a
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
A llvm/test/CodeGen/AArch64/and-mask-variable.ll
M llvm/test/CodeGen/AArch64/extract-bits.ll
M llvm/test/CodeGen/AArch64/extract-lowbits.ll
Log Message:
-----------
[AArch64] shouldFoldMaskToVariableShiftPair should be true for scalars up to the biggest legal type (#158069)
For AArch64, we want to do this up to 64-bits. Otherwise this results in
bloated code.
Commit: 9fd09f4bd9ae0ab48be3b8339527cef0806447d7
https://github.com/llvm/llvm-project/commit/9fd09f4bd9ae0ab48be3b8339527cef0806447d7
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[llvm-readobj][NFC] Restore and disable clang-format for machine type list (#160122)
The original code was more readable, just disable `clang-format` for
this code.
See https://github.com/llvm/llvm-project/pull/159793
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: dd43a79ed0662b23d963bbba032670a6c9a1beb1
https://github.com/llvm/llvm-project/commit/dd43a79ed0662b23d963bbba032670a6c9a1beb1
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M lld/MachO/SyntheticSections.cpp
M lld/MachO/SyntheticSections.h
Log Message:
-----------
[lld][MachO] Use llvm::Align and remove StringOffset type (#161253)
Use `llvm::Align` instead of directly storing the shift amount for
clarity. Also remove the `DeduplicatedCStringSection::StringOffset` in
favor of simply storing the `uint64_t` offset since `trailingZeros` is
not used outside of `finalizeContents()`. These two changes allow us to
refactor `finalizeContents()`.
No function change intended.
Depends on https://github.com/llvm/llvm-project/pull/161241.
Commit: 66af9423e882247ca2389d1d20c7ee9b21b50a82
https://github.com/llvm/llvm-project/commit/66af9423e882247ca2389d1d20c7ee9b21b50a82
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/XeVMOps.td
M mlir/test/Dialect/LLVMIR/xevm.mlir
Log Message:
-----------
[MLIR][XeVM] Add XeVM special id ops. (#160735)
Add special GPU id, index ops.
Commit: ee8394d9469a2946ffe2e7d192c593ecf3f93098
https://github.com/llvm/llvm-project/commit/ee8394d9469a2946ffe2e7d192c593ecf3f93098
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/test/CIR/CodeGen/struct.cpp
Log Message:
-----------
[CIR] Implement ChooseExpr for AggregateExpr (#160999)
Implement the ChooseExpr for aggregate expr
Commit: 2780c209e1e242fd9e7d71045f88fe4e824cee20
https://github.com/llvm/llvm-project/commit/2780c209e1e242fd9e7d71045f88fe4e824cee20
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/docs/Extensions.md
M flang/lib/Semantics/assignment.cpp
A flang/test/Semantics/bug133669.f90
Log Message:
-----------
[flang] Emit error on impossible-to-implement construct (#160384)
An assignment to a whole polymorphic allocatable changes its dynamic
type to the type of the right-hand side expression. But when the
assignment is under control of a WHERE statement, or a FORALL / DO
CONCURRENT with a mask expression, there is no interpretation of the
assignment, as the type of a variable must be the same for all of its
elements.
There is no restriction in the standard against this usage, and no other
Fortran compiler complains about it. But it is not possible to implement
it in general, and the behavior produced by other compilers is not
reasonable, much less worthy of emulating. It's best to simply disallow
it with an error message.
Fixes https://github.com/llvm/llvm-project/issues/133669, or more
accurately, resolves it.
Commit: 673e3051b0ededcf9e028a86faae6d2ba8b09daa
https://github.com/llvm/llvm-project/commit/673e3051b0ededcf9e028a86faae6d2ba8b09daa
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/io-error.h
M flang-rt/include/flang-rt/runtime/io-stmt.h
M flang-rt/lib/runtime/descriptor-io.cpp
M flang-rt/lib/runtime/edit-input.cpp
M flang-rt/lib/runtime/io-stmt.cpp
M flang/docs/Extensions.md
Log Message:
-----------
[flang][runtime] Let more list-directed child input advance (#160590)
Whether list-directed child READ statements should be allowed to advance
to further records is neither explicit in the standard nor consistent in
existing Fortran implementations. We allow child namelist READ
statements to advance, but not other list- directed child input.
This patch refines our interpretation of this case. Child namelist READ
statements continue to be able to advance; in addition, non-namelist
child READ statements can now advance if their parent READ statement is
a list-directed input statement at the top level, or a child that could.
But non-namelist list-directed child input taking place in a context
with explicit format control won't advance to following records, so that
the format-controlled parent READ statement can retain control over
record advancement.
Also corrects two cases of record repositioning in numeric input
editing, which were failing under child input because they weren't
allowing for left tab limits.
Fixes https://github.com/llvm/llvm-project/issues/160351.
Commit: 2c58d192a2a6e54080ac36e0626487747dc7be5c
https://github.com/llvm/llvm-project/commit/2c58d192a2a6e54080ac36e0626487747dc7be5c
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/format-implementation.h
M flang-rt/include/flang-rt/runtime/format.h
M flang-rt/include/flang-rt/runtime/io-stmt.h
M flang-rt/lib/runtime/descriptor-io.cpp
M flang-rt/unittests/Runtime/Format.cpp
Log Message:
-----------
[flang][runtime] Expand IOTYPE and V_LIST (#160744)
The IOTYPE and V_LIST dummy arguments to a defined formatted I/O
subroutine are extracted from a DT edit descriptor in a FORMAT. They are
currently stored in the DataEdit structure, and their maximum sizes are
rather small since DataEdits are sometimes returned or passed by value.
This patch moves their storage into the FormattedIoStatementState
structure and enlarges them a bit.
Fixes https://github.com/llvm/llvm-project/issues/154954.
Commit: 10a9ec88501fa260002245fcd4d0c6f6ccae4e17
https://github.com/llvm/llvm-project/commit/10a9ec88501fa260002245fcd4d0c6f6ccae4e17
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Evaluate/constant.cpp
A flang/test/Evaluate/Inputs/comporder1.mod
A flang/test/Evaluate/Inputs/comporder2.mod
A flang/test/Evaluate/comporder.f90
Log Message:
-----------
[flang] Fix crash in structure constructor lowering (#160769)
MLIR types created by lowering for structure constructors appear to be
sensitive to the ordering of their components in the typed expression
representation used for structure constructors and derived type constant
values.
At present, the components appear in source position order. When some
ancestral types are defined in modules, this ordering can cause their
components to be ordered after components defined in extended derived
types. This can lead to crashes from incompatible MLIR types.
To avoid this issue, sort structure constructor components first in
ascending order of derived type extension depth; retain source position
ordering for components in the same derived type and for error recovery
situations.
Fixes https://github.com/llvm/llvm-project/issues/143740.
Commit: 6399d4792d127520ed7281229755d18ff54da297
https://github.com/llvm/llvm-project/commit/6399d4792d127520ed7281229755d18ff54da297
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Support/VirtualFileSystem.cpp
M llvm/unittests/Support/VirtualFileSystemTest.cpp
Log Message:
-----------
[llvm] Use the VFS to make path absolute (#161271)
For the redirecting VFS, the `'overlay-relative'` option controls
whether external paths should be appended to the overlay directory. This
didn't always work as expected: when the overlay file path itself was
relative, its absolute path was decided by the real FS, not the
underlying VFS, and the resulting external path didn't exist in the
underlying VFS. This PR fixes this issue.
Commit: 52afb8dd112d52b620003998b5348b45b214e828
https://github.com/llvm/llvm-project/commit/52afb8dd112d52b620003998b5348b45b214e828
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/prescan.h
A flang/test/Preprocessing/fixed-free.f
Log Message:
-----------
[flang] Don't retain FIXED/FREE compiler directives (#160780)
Some old code in the prescanner, antedating the current -E output
mechanisms, retains the !DIR$ FIXED and !DIR$ FREE directives in the
input, and will even generate them to append to the scanned source from
source and include files to restore the fixed/free source form
distinction. But these directives have not been needed since the -E
output generator began generating source form insensitive output, and
they can confuse the parser's error recovery when the appended
directives follow the END statement. Change their handling so that
they're read and respected by the prescanner but no longer retained in
either the -E output or the cooked character stream passed on to the
parser.
Fixes a regression reported by @danielcchen after PR 159834.
Commit: ed5e6b87013485c7b16d825e0cbf556a1e7e3e19
https://github.com/llvm/llvm-project/commit/ed5e6b87013485c7b16d825e0cbf556a1e7e3e19
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Evaluate/intrinsics.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/bug157124.f90
Log Message:
-----------
[flang] Catch calls to impure intrinsics from PURE subprograms (#160947)
The code in expression semantics that catches a call to an impure
procedure in a PURE context misses calls to impure intrinsics, since
their designators have a SpecificIntrinsic rather than a Symbol. Replace
the current check with a new one that uses the characteristics of the
called procedure, which works for both intrinsic and non-intrinsic
cases.
Testing this change revealed that an explicit INTRINSIC statement wasn't
doing the right thing for extension "dual" intrinsics that can be called
as either a function or as a subroutine; the use of an INTRINSIC
statement would disallow its use as a subroutine. I've fixed that here
as well.
Fixes https://github.com/llvm/llvm-project/issues/157124.
Commit: 802530283a983a92d7848f26e6291c690667144e
https://github.com/llvm/llvm-project/commit/802530283a983a92d7848f26e6291c690667144e
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Parser/message.h
M flang/lib/Parser/basic-parsers.h
M flang/lib/Parser/message.cpp
A flang/test/Parser/recovery08.f90
Log Message:
-----------
[flang] Improve presentation of errors after last source line (#161391)
We don't emit source file names or line numbers for error messages at
EOF. Detect these and handle them a little better, pointing at the
newline at the end of the last source line instead.
Commit: b40feb9c54469928368705a724db8b9d032e8725
https://github.com/llvm/llvm-project/commit/b40feb9c54469928368705a724db8b9d032e8725
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h
Log Message:
-----------
[llvm] Fix build after #161260
The modular build was failing due to a missing include.
Commit: 72dafa1658d30395f626e08b1fddc034efe61eec
https://github.com/llvm/llvm-project/commit/72dafa1658d30395f626e08b1fddc034efe61eec
Author: Marco Elver <elver at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/test/TableGen/CPtrWildcard.td
Log Message:
-----------
[TableGen, CHERI] Make CPtrWildcard test tolerant to unrelated changes (#161406)
Changes to llvm/include/llvm/IR/Intrinsics.td may change the constants
that are embedded in this test. Use wildcards, so that unrelated changes
do not trip over this test failing.
Fixes: https://github.com/llvm/llvm-project/pull/158426
Commit: df7ac0ec32e00df9a6c6924224c166c3316724a9
https://github.com/llvm/llvm-project/commit/df7ac0ec32e00df9a6c6924224c166c3316724a9
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/Serialization/ModuleCache.h
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
[clang][modules] Virtualize module cache pruning (#149113)
This PR virtualizes module cache pruning via the new `ModuleCache`
interface. Currently this is an NFC, but I left a FIXME in
`InProcessModuleCache` to make this more efficient for the dependency
scanner.
Commit: ecea2b542b8bfb5e8244b3b1dd88a81014594797
https://github.com/llvm/llvm-project/commit/ecea2b542b8bfb5e8244b3b1dd88a81014594797
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/test/Dialect/GPU/ops.mlir
Log Message:
-----------
[MLIR] Fix gpu.launch attribution argument printing (#161408)
This was broken and never tested.
Not only this could crash for stack-use-after-scope, but it also would
have printed something like:
```
value <block argument> of type 'memref<7x8xf64, #gpu.address_space<workgroup>>' at index: 12
```
insted of the SSA value.
It turns out the gpu.func already have a very similar helper that we can
reuse here.
Fixes #161394
Commit: 4aba9f223fb79f08675d3f286602bf785553b4de
https://github.com/llvm/llvm-project/commit/4aba9f223fb79f08675d3f286602bf785553b4de
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/test/Driver/riscv-cpus.c
Log Message:
-----------
[RISCV] Add missing CHECK lines for Zkt to sifive-p450/p470/p670 test. NFC (#161393)
Commit: 0c1e7cc913cda9e473c8dea8f0f195bd63524abd
https://github.com/llvm/llvm-project/commit/0c1e7cc913cda9e473c8dea8f0f195bd63524abd
Author: Yury Plyakhin <yury.plyakhin at intel.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
Log Message:
-----------
[clang-sycl-linker] Generate SymbolTable for each image (#161287)
This PR adds extraction of kernel names for each image and stores them
to the Image's StringData field.
Commit: 98766d288f0d7cadcf34f355d36e4deaf233d046
https://github.com/llvm/llvm-project/commit/98766d288f0d7cadcf34f355d36e4deaf233d046
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
Log Message:
-----------
[clang] Cleanup docs and code for legacy no_sanitize attributes (NFC). (#161311)
Update generated docs for legacy attributes:
* no_sanitize_(address|thread|memory)
* no_address_safety_analysis
Those are older forms of no_sanitize("list", "of", "sanitizers")
attribute. They were previously as various spellings of the same
attribute, which made the auto-generated documentation confusing.
Fix this by explicitly making them three different attributes. This
would also allow to simplify the delegation to the new no_sanitize form
slightly, as we can instead rely on auto-generated code to check that
TSan and MSan can't be disabled for globals.
**HTML docs before:**
<img width="1004" height="1175" alt="rendered-docs-before"
src="https://github.com/user-attachments/assets/407b5fc1-799c-4882-8ff8-44a5ef3cf4f1"
/>
**HTML docs after:**
<img width="1098" height="1118" alt="rendered-docs-after"
src="https://github.com/user-attachments/assets/236ca93f-25f8-4d58-95ac-ede95ce18d01"
/>
---------
Co-authored-by: Erich Keane <ekeane at nvidia.com>
Commit: 6caa0d05c2282feafa1479141c0009257639e48f
https://github.com/llvm/llvm-project/commit/6caa0d05c2282feafa1479141c0009257639e48f
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/vtt.cpp
Log Message:
-----------
[CIR] Upstream RTTI Builder & RTTI for VTable Definitions (#160002)
Upstream the RTTI builder with helpers and used them in the VTable
Definitions
Issue https://github.com/llvm/llvm-project/issues/154992
Commit: d884b55ea40e455bcef162d6c6e3176c078f41ef
https://github.com/llvm/llvm-project/commit/d884b55ea40e455bcef162d6c6e3176c078f41ef
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M bolt/include/bolt/Core/MCInstUtils.h
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
Log Message:
-----------
[BOLT] Introduce helpers to match `MCInst`s one at a time (NFC) (#138883)
Introduce a low-level instruction matching DSL to capture and/or match
the operands of MCInst, single instruction at a time. Unlike the
existing `MCPlusBuilder::MCInstMatcher` machinery, this DSL is intended
for the use cases when the precise control over the instruction order is
required. For example, when validating PtrAuth hardening, all registers
are usually considered unsafe after a function call, even though
callee-saved registers should preserve their old
values _under normal operation_.
Usage example:
// Bring the short names into the local scope:
using namespace LowLevelInstMatcherDSL;
// Declare the registers to capture:
Reg Xn, Xm;
// Capture the 0th and 1st operands, match the 2nd operand against the
// just captured Xm register, match the 3rd operand against literal 0:
if (!matchInst(MaybeAdd, AArch64::ADDXrs, Xm, Xn, Xm, Imm(0))
return AArch64::NoRegister;
// Match the 0th operand against Xm:
if (!matchInst(MaybeBr, AArch64::BR, Xm))
return AArch64::NoRegister;
// Manually check that Xm and Xn did not match the same register:
if (Xm.get() == Xn.get())
return AArch64::NoRegister;
// Return the matched register:
return Xm.get();
Commit: 3a8d771612c6d9d95c2e020aa37dd3674279432f
https://github.com/llvm/llvm-project/commit/3a8d771612c6d9d95c2e020aa37dd3674279432f
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Casting.h
Log Message:
-----------
[llvm][NFC] Simplify implementation of `isa` (#161403)
Using a fold instead of template recursion.
Commit: 5665b1bf9da5c0918f8babec13f2ff537078a233
https://github.com/llvm/llvm-project/commit/5665b1bf9da5c0918f8babec13f2ff537078a233
Author: Julian Lettner <yln at users.noreply.github.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M lldb/tools/debugserver/source/MacOSX/MachTask.mm
Log Message:
-----------
[lldb][NFC] Fix spelling of function in log message (#161261)
Fix spelling of `GetMemoryRegionInfo` function in
log message and comment and reformat code.
Commit: 280abaf9da0121011863ad095991c7d95fc504ae
https://github.com/llvm/llvm-project/commit/280abaf9da0121011863ad095991c7d95fc504ae
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Handle scalar-VF in transforms (NFC) (#161365)
Commit: 4064c0eab46e34fd07dbca4b2f665582f4528afb
https://github.com/llvm/llvm-project/commit/4064c0eab46e34fd07dbca4b2f665582f4528afb
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/fold-logical.cpp
A flang/test/Semantics/contiguous-warn.f90
Log Message:
-----------
[flang] Implemented a warning about contiguity of compile time constant values (#161084)
Implemented `common::UsageWarning::ConstantIsContiguous` to warn about
the
following case:
```
integer, parameter :: num = 3
integer, parameter :: arr(num)=[(i, i=1,num)]
logical, parameter :: result=is_contiguous(arr(num:1:-1))
end
```
Here, while array section is discontiguous, `arr` is a compile time
constant,
so array section created at compile time will end up being contiguous
and
`result` will be "true". If `arr` wasn't a constant, the result at
runtime
would have been "false".
Commit: 4e5928689f2399dc6aede8dde2536a98a96a1802
https://github.com/llvm/llvm-project/commit/4e5928689f2399dc6aede8dde2536a98a96a1802
Author: Jeaye Wilkerson <contact at jeaye.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/test/lit.cfg.py
Log Message:
-----------
Fix `run_clang_repl` output when not present (#161412)
On the happy path, when `clang-repl` is present, we will invoke it in
order to determine if the host supports JIT features. That will return a
string containing "true". However, in cases where `clang-repl` is not
present or we fail to invoke it, we previously returned `False`, which
would then trigger a failure with our substring check. This PR updates
the function to return `""` instead, so the substring check is still
valid.
This is related to https://github.com/llvm/llvm-project/pull/157359,
where the original change was introduced.
Commit: fad2a4c00db68ee10b506b05531cdc6458d9be37
https://github.com/llvm/llvm-project/commit/fad2a4c00db68ee10b506b05531cdc6458d9be37
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/lib/Evaluate/constant.cpp
Log Message:
-----------
[flang] Add #include to fix MSVC build (#161415)
flang/lib/Evaluate/constant.cpp apparently needs this #include for MSVC
builds but somehow not for others.
Commit: 67141c74272838919985ce1931c42365b1790c6a
https://github.com/llvm/llvm-project/commit/67141c74272838919985ce1931c42365b1790c6a
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
Log Message:
-----------
[NFC] Remove trailing whitespaces from `clang/include/clang/Basic/Attr.td`
Commit: 9d42c752569f3141ca42b75dd37f45e771ffa7a0
https://github.com/llvm/llvm-project/commit/9d42c752569f3141ca42b75dd37f45e771ffa7a0
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/early-exit-runtime-checks.ll
Log Message:
-----------
[LAA] Fix picking context instr in evaluatePtrAddRec for multiple preds.
A loop may have more than one predecessor out of the loop. In that case,
just pick the first non-phi instruction in the loop header.
Commit: 6ca835b7f4349ad55c8e8afdf0669927b6b284b4
https://github.com/llvm/llvm-project/commit/6ca835b7f4349ad55c8e8afdf0669927b6b284b4
Author: Yixuan Cao <caoyixuan2019 at email.szu.edu.cn>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/asan/asan_interceptors.h
M compiler-rt/lib/asan/asan_win_static_runtime_thunk.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
A compiler-rt/test/asan/TestCases/wcscat.cpp
A compiler-rt/test/asan/TestCases/wcscpy.cpp
A compiler-rt/test/asan/TestCases/wcsncat.cpp
A compiler-rt/test/asan/TestCases/wcsncpy.cpp
Log Message:
-----------
[compiler-rt][asan] Add wcscpy/wcsncpy; enable wcscat/wcsncat on Windows (#160493)
Summary
- Add ASan interceptors for wcscpy/wcsncpy on all platforms.
- Enable wcscat/wcsncat on Windows (already enabled on POSIX via
sanitizer_common).
Motivation
- Use of wchar string APIs is common on Windows; improve parity with
char* string checks.
Changes
- Implement wcscpy/wcsncpy in asan_interceptors.cpp; check overlap and
mark read/write ranges in bytes.
- wcsncpy: compute write size in bytes (size * sizeof(wchar_t)) to avoid
missed overflows when sizeof(wchar_t) != 1.
- Use MaybeRealWcsnlen when available to bound reads.
- Register Windows static thunk for wcscpy/wcsncpy/wcscat/wcsncat; rely
on sanitizer_common interceptors for wcscat/wcsncat.
- Tests: add wcscpy/wcsncpy/wcscat/wcsncat; flush stdout before crash;
use resilient FileCheck patterns (reuse [[ADDR]], wildcard for function
suffixes and paths, flexible line numbers).
Testing
- AArch64 Linux: new tests pass with check-asan locally.
Follow-up to and based on prior work in PR #90909 (author: branh,
Microsoft); builds on that work and addresses review feedback. Thanks!
---------
Signed-off-by: Yixuan Cao <caoyixuan2019 at email.szu.edu.cn>
Commit: 8425004ce65abc34c6f55fbf751f101536e9c07d
https://github.com/llvm/llvm-project/commit/8425004ce65abc34c6f55fbf751f101536e9c07d
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang-tools-extra/test/clang-doc/long-name.cpp
Log Message:
-----------
[clang-doc] Suppress long-name test on windows (#161424)
This seems to have broken some buildbots for a long time, so just
suppress it for now until we determine how/why.
Commit: e27e9ca5d8cdf85f8c8466a792730ff1df313072
https://github.com/llvm/llvm-project/commit/e27e9ca5d8cdf85f8c8466a792730ff1df313072
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/constant.cpp
M flang/lib/Evaluate/tools.cpp
Log Message:
-----------
[flang] Attempt to work around MSVC build problem (#161426)
Move a function that seems to be running into an MSVC problem from the
source file where I created it to another one (tools.cpp) that is
already known to be able to access the semantics::Scope type.
Commit: 1ff3e2e2805fe4a8284a688fbd7b3863826d9629
https://github.com/llvm/llvm-project/commit/1ff3e2e2805fe4a8284a688fbd7b3863826d9629
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M mlir/test/Examples/standalone/lit.local.cfg
M mlir/test/Examples/standalone/test.wheel.toy
Log Message:
-----------
[MLIR][Standalone] gate wheel build behind MLIR_ENABLE_BINDINGS_PYTHON=ON (#161427)
If MLIR_ENABLE_BINDINGS_PYTHON=ON then
[StandalonePythonModules](https://github.com/llvm/llvm-project/blob/main/mlir/examples/standalone/pyproject.toml#L38)
isn't a valid target.
Commit: e83a3b8614afbb707a4f3492e0fccd7e4c1d99b7
https://github.com/llvm/llvm-project/commit/e83a3b8614afbb707a4f3492e0fccd7e4c1d99b7
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
Log Message:
-----------
[AMDGPU] Introduce and use NotUseRealTrue16Insts. NFC. (#161373)
This removes ~2000 lines from both AMDGPUGenDAGISel.inc and
AMDGPUGenGlobalISel.inc.
Commit: fe9fba8d24f4e7a0cca26fceb621cfa4276d793b
https://github.com/llvm/llvm-project/commit/fe9fba8d24f4e7a0cca26fceb621cfa4276d793b
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
Log Message:
-----------
[OpenACC][CIR] Fix transform inclusive scan init parameter (#161428)
This fixes macos build, where otherwise the compilation yields an error: `no viable conversion from 'bool' to 'typename iterator_traits<const QualType *>::value_type`
Commit: a099c91eb8e275c385859f7b3ddee3f0b08db558
https://github.com/llvm/llvm-project/commit/a099c91eb8e275c385859f7b3ddee3f0b08db558
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
Log Message:
-----------
[LAA] Add tests for using inbounds flags only used in predicated blocks.
Test for https://github.com/llvm/llvm-project/issues/160912.
Commit: f61be4352592639a0903e67a9b5d3ec664ad4d23
https://github.com/llvm/llvm-project/commit/f61be4352592639a0903e67a9b5d3ec664ad4d23
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
Revert "[VPlan] Compute cost of more replicating loads/stores in ::computeCost. (#160053)"
This reverts commit b4be7ecaf06bfcb4aa8d47c4fda1eed9bbe4ae77.
See https://github.com/llvm/llvm-project/issues/161404 for a crash
exposed by the change. Revert while I investigate.
Commit: ca84f2aa3be6e46a4dccb1bec56b93f2bb3d8ef0
https://github.com/llvm/llvm-project/commit/ca84f2aa3be6e46a4dccb1bec56b93f2bb3d8ef0
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
A clang/lib/CIR/CodeGen/CIRGenDeclCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGen/global-init.cpp
Log Message:
-----------
[CIR] Upstream support for generating global ctor regions (#161298)
This adds support for handling global variables with non-trivial
constructors. The constructor call is emitted in CIR as a 'ctor' region
associated with the global definition. This form of global definition
cannot be lowered to LLVM IR yet.
A later change will add support in LoweringPrepare to move the ctor code
into a __cxx_global_var_init() function and add that function to the
list of global global ctors, but for now we must stop at the initial CIR
generation.
Commit: b6dfa3d47db74e72a566e0605fb573a8fcea1234
https://github.com/llvm/llvm-project/commit/b6dfa3d47db74e72a566e0605fb573a8fcea1234
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
A clang/include/clang/AST/HLSLResource.h
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Sema/SemaHLSL.cpp
Log Message:
-----------
[HLSL][NFC] Add helper struct to simplify dealing with resource binding attributes (#161254)
Add new `ResourceBindingAttrs` struct that holds resource binding attributes `HLSLResourceBindingAttr` and `HLSLVkBindingAttr` and provides helper methods to simplify dealing with resource bindings. This code is placed in the AST library to be shared between Sema and CodeGen.
This change has been done in preparation of a third binding attribute coming soon to represent `[[vk::counter_binding()]]`. This new attribute and more helper member functions will be added to `ResourceBindingAttrs` and will be used in both Sema and in CodeGen to implement resource counter initialization.
Commit: f57b60ad2a72b64b75bc5422f67b46c625debbc6
https://github.com/llvm/llvm-project/commit/f57b60ad2a72b64b75bc5422f67b46c625debbc6
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/constant.cpp
M flang/lib/Evaluate/tools.cpp
Log Message:
-----------
[flang] Add missing #include for MSVC (#161437)
I moved a function to Evaluate/tools.cpp in an attempt to dodge some
MSVC compiler issue but didn't add an include directive for
Evaluate/tools.h to Evaluate/constant.cpp.
Commit: 96a1e559ccc472a9f8444c889bcfba3aee8c274d
https://github.com/llvm/llvm-project/commit/96a1e559ccc472a9f8444c889bcfba3aee8c274d
Author: CatherineMoore <catmoore at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
[OpenMP] Update 6.1 implementation status. (#161449)
@jhuber6: Please review
Commit: 739425b1342d53d0314b4970b91ff7d334428105
https://github.com/llvm/llvm-project/commit/739425b1342d53d0314b4970b91ff7d334428105
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/IR/AsmWriter.cpp
Log Message:
-----------
[NFC][LLVM] Use ListSeparator in AsmWriter (#161422)
Use `ListSeparator` instead of manual code when generating comma
separated lists. Also replace `FieldSeparator` with `ListSeparator` as
they both provide identical functionality.
Commit: 1c11f72344e8d2fdb29587572dd50db6b10fdd28
https://github.com/llvm/llvm-project/commit/1c11f72344e8d2fdb29587572dd50db6b10fdd28
Author: Florian Mayer <fmayer at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/test/Transforms/IndVarSimplify/X86/overflow-intrinsics.ll
Log Message:
-----------
[NFC] [IndVarSimplify] add overflowing tests (#159877)
Also use UTC for test instead.
Commit: b80b48d3e89eca606fde4443b603ba8fdd8f67c8
https://github.com/llvm/llvm-project/commit/b80b48d3e89eca606fde4443b603ba8fdd8f67c8
Author: David Salinas <dsalinas at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Object/OffloadBundle.cpp
Log Message:
-----------
Fix memory leak in Offloading API (#161430)
Fix or the failing Sanitizer buildbots from PR:
https://github.com/llvm/llvm-project/pull/143342
Commit: 4e404d0e5135ae7d0d4e7cc4c9b04d456eb50a01
https://github.com/llvm/llvm-project/commit/4e404d0e5135ae7d0d4e7cc4c9b04d456eb50a01
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/docs/CodingStandards.rst
Log Message:
-----------
[CodingStandard] Require Unix line endings for all files (#161228)
Require all files to use Unix line endings, formalizing an already
followed convention.
Commit: 69b0a479ac57b6c7ce2228e1944e8fc0997260ae
https://github.com/llvm/llvm-project/commit/69b0a479ac57b6c7ce2228e1944e8fc0997260ae
Author: Jon Chesterfield <jon at spectralcompute.co.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/lower-module-lds-precise-allocate-to-module-struct.ll
Log Message:
-----------
[AMDGPU] Precommit test for 160181
Commit: 0aa7da089aaab2b6e524c124701e645f2cdcab75
https://github.com/llvm/llvm-project/commit/0aa7da089aaab2b6e524c124701e645f2cdcab75
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm][mustache] Fix failing StandaloneIndentation test (#159192)
When rendering partials, we need to use an indentation stream,
but when part of the partial is a unescaped sequence, we cannot
indent those. To address this, we build a common MustacheStream
interface for all the output streams to use. This allows us to
further customize the AddIndentationStream implementation
and opt it out of indenting the UnescapeSequence.
Commit: 9ce0dae54e7d34ef4e0266069c0d3f1ae5968612
https://github.com/llvm/llvm-project/commit/9ce0dae54e7d34ef4e0266069c0d3f1ae5968612
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Simplify debug logging (#159193)
The existing logging was inconsistent, and we logged too many things.
This PR introduces a more principled schema, and eliminates many,
redundant log lines.
Commit: f29f1112f5cc467c0cdac05532770cdd15382c23
https://github.com/llvm/llvm-project/commit/f29f1112f5cc467c0cdac05532770cdd15382c23
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
Log Message:
-----------
[JITLink][MachO] Use Triple::isArm64e consistently.
Commit: d392563433316e310edacf35a40fb2f9aa477acc
https://github.com/llvm/llvm-project/commit/d392563433316e310edacf35a40fb2f9aa477acc
Author: ronlieb <ron.lieberman at amd.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Object/OffloadBundle.cpp
Log Message:
-----------
Revert "Fix memory leak in Offloading API" (#161465)
Reverts llvm/llvm-project#161430
Commit: 3e1d4d4144cc9d28ccd85cf49d6fc836c38ffbaa
https://github.com/llvm/llvm-project/commit/3e1d4d4144cc9d28ccd85cf49d6fc836c38ffbaa
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M clang/test/Driver/riscv-cpus.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Remove Zicntr from sifive-p450/p470/p670. (#161444)
These cores don't implement the `time` CSR. They require SBI to trap and
emulate it which is allowed by RVA20U.
Commit: 89ed5255b9ee88119e409a6d986eb1ad0e8f08e3
https://github.com/llvm/llvm-project/commit/89ed5255b9ee88119e409a6d986eb1ad0e8f08e3
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
Log Message:
-----------
[RISCV] Rename BFloatVectors -> BF16Vectors in tablegen. NFC (#161469)
Part of this rename is taken from #161158, but applies it more
consistently to more variables.
I think using BF16 makes it easier to not confuse BFloat and Float when
reading.
Commit: fd4e77cf333855a495a09277f951c0ccef557772
https://github.com/llvm/llvm-project/commit/fd4e77cf333855a495a09277f951c0ccef557772
Author: Shunsuke Watanabe <watanabe.shu-06 at fujitsu.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Driver/CommonArgs.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/docs/ComplexOperations.md
M flang/docs/FlangDriver.md
M flang/test/Driver/complex-range.f90
Log Message:
-----------
[flang][driver] Accelerate complex division when `-ffast-math` is specified (#159689)
This patch accelerates complex division by passing
`-complex-range=basic` to the frontend when the `-ffast-math` option is
specified. This behavior is the same as `-fcomplex-arithmetic=basic`. A
warning is issued if a different value is specified for
`-fcomplex-arithmetic=`. The warning conditions will be unified with
clang.
Commit: 133406e3d9afb845426898154ecf532a75056d37
https://github.com/llvm/llvm-project/commit/133406e3d9afb845426898154ecf532a75056d37
Author: Un1q32 <joey.t.reinhart at gmail.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/test/CodeGen/ARM/inline-asm-clobber.ll
Log Message:
-----------
Reserve R9 on armv6 iOS 2.x (#150835)
The iOS 2.x ABI had R9 as a reserved register, 3.0 made it available,
but support for the 2.x ABI was never added to LLVM. We only use the 2.x
ABI on armv6 since before 3.0 armv6 was the only architecture supported
by iOS.
Commit: 079d589f5a389d18b6277b31a61e471ec56b5b7e
https://github.com/llvm/llvm-project/commit/079d589f5a389d18b6277b31a61e471ec56b5b7e
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/AST/HLSLResource.h
Log Message:
-----------
[HLSL][NFC] Add missing includes for standalone header compilation (#161473)
HLSLResource.h added by #161254 builds in the context of a .cpp file
(e.g. CGHLSLRuntime.cpp) but not when doing a header compilation, e.g.:
```
clang/include/clang/AST/Attrs.inc:12:45: error: unknown type name 'raw_ostream'; did you mean 'clang::raw_ostream'?
12 | static inline void DelimitAttributeArgument(raw_ostream& OS, bool& IsFirst) {
```
Commit: a414c22f32fa08ab91d9d6fe06d6949b526bedb3
https://github.com/llvm/llvm-project/commit/a414c22f32fa08ab91d9d6fe06d6949b526bedb3
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[Support] Fix warnings
This patch fixes:
llvm/lib/Support/Mustache.cpp:332:20: error: unused function
'tagKindToString' [-Werror,-Wunused-function]
llvm/lib/Support/Mustache.cpp:344:20: error: unused function
'jsonKindToString' [-Werror,-Wunused-function]
Commit: 6e0d519b3937a2f96179e40f417bc5cc79f3adba
https://github.com/llvm/llvm-project/commit/6e0d519b3937a2f96179e40f417bc5cc79f3adba
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-30 (Tue, 30 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallVector.h
Log Message:
-----------
[ADT] Consolidate uninitialized_copy in SmallVector (NFC) (#161043)
This patch consolidates two implementations of uninitialized_copy into
a single template function.
Commit: d62776d03323e709abb8e4734e0ae36f76dba815
https://github.com/llvm/llvm-project/commit/d62776d03323e709abb8e4734e0ae36f76dba815
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Analysis/LazyValueInfo.cpp
A llvm/test/Transforms/CorrelatedValuePropagation/pr161367.ll
Log Message:
-----------
[LVI] Handle constant value lattice in `getEdgeValueLocal` (#161410)
Closes https://github.com/llvm/llvm-project/issues/161367.
In https://github.com/llvm/llvm-project/pull/157614, we ignored cases
where OpLatticeVal might be a constant or notconstant. Directly
returning the result causes a type mismatch. I apologize for the
oversight in the previous code review.
This patch applies the cast op to constants. For notconstant value
lattices, I'd leave it as a todo (it is similar to the constant case,
except for trunc without nsw/nuw).
Commit: 63ca8483d0efc544c5b8c4484d36a64c3b3ff210
https://github.com/llvm/llvm-project/commit/63ca8483d0efc544c5b8c4484d36a64c3b3ff210
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/Metadata.h
M llvm/lib/Analysis/CaptureTracking.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
A llvm/test/Verifier/captures-metadata.ll
Log Message:
-----------
[IR] Introduce !captures metadata (#160913)
This introduces `!captures` metadata on stores, which looks like this:
```
store ptr %x, ptr %y, !captures !{!"address", !"read_provenance"}
```
The semantics are the same as replacing the store with a call like this:
```
call void @llvm.store(ptr captures(address, read_provenance) %x, ptr %y)
```
This metadata is intended for annotation by frontends -- it's not
something we can feasibly infer at this point, as it would require
analyzing uses of the pointer stored in memory.
The motivating use case for this is Rust's `println!()` machinery, which
involves storing a reference to the value inside a structure. This means
that printing code (including conditional debugging code), can inhibit
optimizations because the pointer escapes. With the new metadata we can
annotate this as a read-only capture, which has less impact on
optimizations.
Commit: 1098a5cefd764eb58e8530e821eaa5d5a6c42310
https://github.com/llvm/llvm-project/commit/1098a5cefd764eb58e8530e821eaa5d5a6c42310
Author: quic_hchandel <hchandel at qti.qualcomm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Add commutative support for Qualcomm uC Xqcics extension (#161328)
This is a follow-up to #160653 doing similar changes for Xqcics.
Commit: 8c5c37582e909232dc5810c4809c2bd1a22fbe1b
https://github.com/llvm/llvm-project/commit/8c5c37582e909232dc5810c4809c2bd1a22fbe1b
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/unittests/Optimizer/Builder/FIRBuilderTest.cpp
Log Message:
-----------
[flang] add helper to create descriptor with new base address (#161347)
There is currently no helper to create a descriptor for a copy of a
Fortran entity based on the descriptor of the original entity and the
base address of the copy (most places that are doing this currently are
also doing allocation of the copy at the same time or using the
runtime).
Add a helper for this with a unit test.
Commit: 332b4deb0dfe9f4d11325513d4122e69024beea9
https://github.com/llvm/llvm-project/commit/332b4deb0dfe9f4d11325513d4122e69024beea9
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Expression/IRExecutionUnit.cpp
A lldb/test/API/lang/cpp/function-call-from-object-file/Makefile
A lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
A lldb/test/API/lang/cpp/function-call-from-object-file/common.h
A lldb/test/API/lang/cpp/function-call-from-object-file/lib1.cpp
A lldb/test/API/lang/cpp/function-call-from-object-file/lib2.cpp
A lldb/test/API/lang/cpp/function-call-from-object-file/main.cpp
Log Message:
-----------
[lldb][IRExecutionUnit] Return error on failure to resolve function address (#161363)
Starting with https://github.com/llvm/llvm-project/pull/148877 we
started encoding the module ID of the function DIE we are currently
parsing into its `AsmLabel` in the AST. When the JIT asks LLDB to
resolve our special mangled name, we would locate the module and resolve
the function/symbol we found in it.
If we are debugging with a `SymbolFileDWARFDebugMap`, the module ID we
encode is that of the `.o` file that is tracked by the debug-map. To
resolve the address of the DIE in that `.o` file, we have to ask
`SymbolFileDWARFDebugMap::LinkOSOAddress` to turn the address of the
`.o` DIE into a real address in the linked executable. This will only
work if the `.o` address was actually tracked by the debug-map. However,
if the function definition appears in multiple `.o` files (which is the
case for functions defined in headers), the linker will most likely
de-deuplicate that definition. So most `.o`'s definition DIEs for that
function won't have a contribution in the debug-map, and thus we fail to
resolve the address.
When debugging Clang on Darwin, e.g., you'd see:
```
(lldb) expr CXXDecl->getName()
error: Couldn't look up symbols:
$__lldb_func::0x1:0x4000d000002359da:_ZNK5clang9NamedDecl7getNameEv
Hint: The expression tried to call a function that is not present in the target, perhaps because it was optimized out by the compiler.
```
unless you were stopped in the `.o` file whose definition of `getName`
made it into the final executable.
The fix here is to error out if we fail to resolve the address, causing
us to fall back on the old flow which did a lookup by mangled name,
which the `SymbolFileDWARFDebugMap` will handle correctly.
An alternative fix to this would be to encode the
`SymbolFileDWARFDebugMap`'s module-id. And implement
`SymbolFileDWARFDebugMap::ResolveFunctionCallLabel` by doing a mangled
name lookup. The proposed approach doesn't stop us from implementing
that, so we could choose to do it in a follow-up.
rdar://161393045
Commit: 3c0f7b184d265281dfcd4fab73348bc0e72c9902
https://github.com/llvm/llvm-project/commit/3c0f7b184d265281dfcd4fab73348bc0e72c9902
Author: Hendrik_Klug <43926224+Jimmy2027 at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/python/mlir/dialects/transform/structured.py
A mlir/test/Dialect/Transform/test-promote-tensors.mlir
Log Message:
-----------
[mlir][transform] Add PromoteTensorOp (#158318)
Transform op to request a tensor value to live in a specific memory
space after bufferization
Co-authored-by: Nicolas Vasilache <Nico.Vasilache at amd.com>
Co-authored-by: Alex Zinenko <ftynse at gmail.com>
Commit: f2f0963f303be3b4b274a24aca70b51f10ea5112
https://github.com/llvm/llvm-project/commit/f2f0963f303be3b4b274a24aca70b51f10ea5112
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/LoongArch/vararg-loongarch64.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64el.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64le.ll
Log Message:
-----------
[MemorySanitizer] Generate check lines for some vararg tests (NFC)
Use UTC_ARGS: --disable to skip the tests with many arguments.
Commit: b0de7a6a53d7f3153ba5f6a74e379a96857c8692
https://github.com/llvm/llvm-project/commit/b0de7a6a53d7f3153ba5f6a74e379a96857c8692
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Integration/debug-complex-1.f90
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-1.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-ref-type.fir
M flang/test/Transforms/debug-tuple-type.fir
M flang/test/Transforms/debug-vector-type.fir
Log Message:
-----------
[flang][debug] Change type*N to type(kind=N). (#161432)
It was discussed in https://github.com/llvm/llvm-project/pull/161361.
Commit: 5baf1c14640cf580f4e65375a3f9b49420dad9c6
https://github.com/llvm/llvm-project/commit/5baf1c14640cf580f4e65375a3f9b49420dad9c6
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/msan_kernel_basic.ll
Log Message:
-----------
[MemorySanitizer] Generate test checks for kmsan test (NFC)
Commit: 69586331e868cef99fbcea74a061bd44f57c1904
https://github.com/llvm/llvm-project/commit/69586331e868cef99fbcea74a061bd44f57c1904
Author: mikael-nilsson-arm <mikael.nilsson at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
A llvm/test/Transforms/InstCombine/in-freeze-phi.ll
Log Message:
-----------
[InstCombine] Opt phi(freeze(undef), C) -> phi(C, C) (#161181)
Try to choose a value for freeze that enables the PHI to be replaced
with its input constants if they are equal.
Commit: 6c032fa60037cb995db87b956d172480ffb54723
https://github.com/llvm/llvm-project/commit/6c032fa60037cb995db87b956d172480ffb54723
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/exp10m1f16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp10m1f16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp10m1f16.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor exp10m1f16 implementation to header-only in src/__support/math folder. (#161119)
Part of #147386
in preparation for: https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 57b1b254297ed2d2fd9560e6a5eef0c44918223a
https://github.com/llvm/llvm-project/commit/57b1b254297ed2d2fd9560e6a5eef0c44918223a
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/aapcs-volatile-bitfields.c
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/assign-operator.cpp
M clang/test/CIR/CodeGen/basic.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/binassign.c
M clang/test/CIR/CodeGen/binop.c
M clang/test/CIR/CodeGen/binop.cpp
M clang/test/CIR/CodeGen/builtin_bit.cpp
M clang/test/CIR/CodeGen/builtin_call.cpp
M clang/test/CIR/CodeGen/builtin_printf.cpp
M clang/test/CIR/CodeGen/cast.cpp
M clang/test/CIR/CodeGen/cmp.cpp
M clang/test/CIR/CodeGen/comma.c
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-unary.cpp
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/cxx-default-init.cpp
M clang/test/CIR/CodeGen/delegating-ctor.cpp
M clang/test/CIR/CodeGen/delete.cpp
M clang/test/CIR/CodeGen/destructors.cpp
M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
M clang/test/CIR/CodeGen/if.cpp
M clang/test/CIR/CodeGen/int-to-bool.cpp
M clang/test/CIR/CodeGen/loop.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-prototype.c
M clang/test/CIR/CodeGen/opaque.c
M clang/test/CIR/CodeGen/opaque.cpp
M clang/test/CIR/CodeGen/pointers.cpp
M clang/test/CIR/CodeGen/ternary.cpp
M clang/test/CIR/CodeGen/unary.cpp
M clang/test/CIR/CodeGen/union.c
M clang/test/CIR/CodeGen/var_arg.c
M clang/test/CIR/CodeGen/variable-decomposition.cpp
M clang/test/CIR/CodeGen/vbase.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
M clang/test/CIR/CodeGen/vtt.cpp
M clang/test/CIR/CodeGenOpenACC/combined-copy.c
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/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
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/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/IR/alloca.cir
M clang/test/CIR/IR/binassign.cir
M clang/test/CIR/IR/cast.cir
M clang/test/CIR/IR/cmp.cir
M clang/test/CIR/IR/vtable-addrpt.cir
M clang/test/CIR/IR/vtt-addrpoint.cir
M clang/test/CIR/Lowering/cast.cir
M clang/test/CIR/Lowering/if.cir
M clang/test/CIR/Lowering/vtt-addrpoint.cir
M clang/test/CIR/Transforms/canonicalize.cir
M clang/test/CIR/Transforms/if.cir
M clang/test/CIR/Transforms/switch.cir
Log Message:
-----------
[CIR] Refactor cir.cast to use uniform assembly form w/o parens, commas (#161431)
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1922
Commit: f80e7e139e3e677638233037499f8cba50c66b9e
https://github.com/llvm/llvm-project/commit/f80e7e139e3e677638233037499f8cba50c66b9e
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/test/Transforms/GlobalOpt/fastcc.ll
Log Message:
-----------
[GlobalOpt] Check if users are CallBase when changing CC (#161399)
Fixes https://github.com/llvm/llvm-project/issues/156656
`hasChangeableCCImpl` guarantees the address of the function is not
taken, but it ignores assume-like calls.
This patch ignores assume-like calls when changing CC.
Commit: 14fcd81861aa1576d204b9146345c4426d81fc49
https://github.com/llvm/llvm-project/commit/14fcd81861aa1576d204b9146345c4426d81fc49
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU][InsertWaitCnts] Refactor some helper functions, NFC (#161160)
- Remove one-line wrappers around a simple function call when they're
only used once or twice.
- Move very generic helpers into SIInstrInfo
- Delete unused functions
The goal is simply to reduce the noise in SIInsertWaitCnts without
hiding functionality. I focused on moving trivial helpers, or helpers
with very descriptive/verbose names (so it doesn't hide too much logic
away from the pass), and that have some reusability potential.
I'm also trying to make the code style more consistent. It doesn't make
sense to see a function call `TII->isXXX` then suddenly call a random
`isY` method that just wraps around `TII->isY`.
The context of this work is that I'm trying to learn how this pass
works, and while going through the code I noticed some little things
here and there that I thought would be good to fix.
Commit: 88c668d050aceb27c161f82474efa0004eced9b2
https://github.com/llvm/llvm-project/commit/88c668d050aceb27c161f82474efa0004eced9b2
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU][SIInsertWaitCnts] De-duplicate code (NFC) (#161161)
I'm reading through the pass over and over again to try and learn how it works. I noticed some code duplication here and there while doing that.
Commit: e86b3386fda91c17add6ae25710399b832b8cb9e
https://github.com/llvm/llvm-project/commit/e86b3386fda91c17add6ae25710399b832b8cb9e
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
Log Message:
-----------
[DAGCombine] Support (shl %x, constant) in foldPartialReduceMLAMulOp. (#160663)
Support shifts in foldPartialReduceMLAMulOp by treating (shl %x, %c) as
(mul %x, (shl 1, %c)).
PR: https://github.com/llvm/llvm-project/pull/160663
Commit: da1eabd238d27c19ecc05580dff6361e5a0190d4
https://github.com/llvm/llvm-project/commit/da1eabd238d27c19ecc05580dff6361e5a0190d4
Author: pvanhout <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU] Remove duplicate definition of isGFX12CacheInvOrWBInst
Commit: 8c2cece14deaaa175bc665e20228280fbe6d019d
https://github.com/llvm/llvm-project/commit/8c2cece14deaaa175bc665e20228280fbe6d019d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
Log Message:
-----------
Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC. (#161496)
Commit: 5c50bdcea3977672d1183ee69cb840498f2fcf15
https://github.com/llvm/llvm-project/commit/5c50bdcea3977672d1183ee69cb840498f2fcf15
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/include/lldb/Core/Mangled.h
M lldb/source/Core/Mangled.cpp
Log Message:
-----------
[lldb][Mangled][NFC] Remove redundant const-qualifier on llvm::StringRef argument
Commit: a3f667bc08cb2f547ff2139c975dd684cf005885
https://github.com/llvm/llvm-project/commit/a3f667bc08cb2f547ff2139c975dd684cf005885
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitCnts] Remove redundant TII/TRI/MRI arguments (NFC) (#161357)
WaitCntBrackets already has a pointer to its SIInsertWaitCnt instance.
With a small change, it can directly access TII/TRI/MRI that way.
This simplifies a lot of call sites which make the code easier to
follow.
Commit: 0a0d4979935cc13ecafdb8c9b00dd74779651781
https://github.com/llvm/llvm-project/commit/0a0d4979935cc13ecafdb8c9b00dd74779651781
Author: Timur Golubovich <timur.golubovich at syntacore.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
A lldb/test/API/lang/cpp/floating-types-specialization/Makefile
A lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
A lldb/test/API/lang/cpp/floating-types-specialization/main.cpp
M lldb/test/API/lang/cpp/template-arguments/TestCppTemplateArguments.py
Log Message:
-----------
[lldb][TypeSystemClang] Added unique builtins types for __bf16 and _Float16 (#157674)
During debugging applization with __bf16 and _Float16 float types it was
discovered that lldb creates the same CompilerType for them. This can
cause an infinite recursion error, if one tries to create two struct
specializations with these types and then inherit one specialization
from another.
Commit: e95ed3352e5001a038d5fbf2989f2161fc526384
https://github.com/llvm/llvm-project/commit/e95ed3352e5001a038d5fbf2989f2161fc526384
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in OpenMPDialect.cpp (NFC)
Commit: 55bd45852cde2eeb0132767f54f48589d87ce2ad
https://github.com/llvm/llvm-project/commit/55bd45852cde2eeb0132767f54f48589d87ce2ad
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/test/binary-analysis/AArch64/cmdline-args.test
M bolt/test/binary-analysis/AArch64/gs-pauth-authentication-oracles.s
M bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
M bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
M bolt/test/binary-analysis/AArch64/gs-pauth-tail-calls.s
Log Message:
-----------
[BOLT] Gadget scanner: optionally assume auth traps on failure (#139778)
On AArch64 it is possible for an auth instruction to either return an
invalid address value on failure (without FEAT_FPAC) or generate an
error (with FEAT_FPAC). It thus may be possible to never emit explicit
pointer checks, if the target CPU is known to support FEAT_FPAC.
This commit implements an --auth-traps-on-failure command line option,
which essentially makes "safe-to-dereference" and "trusted" register
properties identical and disables scanning for authentication oracles
completely.
Commit: f7f37fb71ebe12721b9ad22f21ecd7e0823210d4
https://github.com/llvm/llvm-project/commit/f7f37fb71ebe12721b9ad22f21ecd7e0823210d4
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: make use of C++17 features and LLVM helpers (#141665)
Perform trivial syntactical cleanups:
- make use of structured binding declarations
- use LLVM utility functions when appropriate
- omit braces around single expression inside single-line LLVM_DEBUG()
This patch is NFC aside from minor debug output changes.
Commit: 65829ffd3eb92a1b2da2d204059da035c1a75197
https://github.com/llvm/llvm-project/commit/65829ffd3eb92a1b2da2d204059da035c1a75197
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/SimplifyAffineMinMax.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-move-const-arg in SimplifyAffineMinMax.cpp (NFC)
Commit: fef7753454a51f00d1300f30d1991696c00ba6f7
https://github.com/llvm/llvm-project/commit/fef7753454a51f00d1300f30d1991696c00ba6f7
Author: David Green <david.green at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/AArch64/cbz_wzr.mir
M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
Log Message:
-----------
[AArch64] Some tests for cbz/tbz with wzr. NFC
Commit: 0d0cc06afe07f288ae18cf26e8a66bcb204146cd
https://github.com/llvm/llvm-project/commit/0d0cc06afe07f288ae18cf26e8a66bcb204146cd
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Bindings/Python/Rewrite.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in Rewrite.cpp (NFC)
Commit: d5f98f3b01d8cece369d62366c180a5deb89e42f
https://github.com/llvm/llvm-project/commit/d5f98f3b01d8cece369d62366c180a5deb89e42f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Interfaces/Utils/InferIntRangeCommon.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-unnecessary-copy-initialization in InferIntRangeCommon.cpp (NFC)
Commit: 93c830597cd1c68059a165de3eabea3a0b8f4526
https://github.com/llvm/llvm-project/commit/93c830597cd1c68059a165de3eabea3a0b8f4526
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/literals.cpp
Log Message:
-----------
[clang][bytecode] Fix integral cast edge case (#161506)
We were converting the `ASInt` to as sign-less `APInt` too early and
losing the sign information.
Commit: a374017bbcc8191fa6b7b2939ffcb9bb831df419
https://github.com/llvm/llvm-project/commit/a374017bbcc8191fa6b7b2939ffcb9bb831df419
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Dialect/MemRef/invalid.mlir
M mlir/test/Dialect/MemRef/ops.mlir
Log Message:
-----------
[mlir][memref] Introduce `memref.distinct_objects` op (#156913)
The `distinct_objects` operation takes a list of memrefs and returns a
list of memrefs of the same types, with the additional assumption that
accesses to these memrefs will never alias with each other. This means
that loads and stores to different memrefs in the list can be safely
reordered.
The discussion
https://discourse.llvm.org/t/rfc-introducing-memref-aliasing-attributes/88049
Commit: 2a96d19ab01a4b5d992f492233f6a21d1e7cc4e0
https://github.com/llvm/llvm-project/commit/2a96d19ab01a4b5d992f492233f6a21d1e7cc4e0
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
Log Message:
-----------
[lldb][CPlusPlusLanguage] Avoid redundant const char* -> StringRef roundtrip (#161499)
We've been seen (very sporadic) lifetime issues around this area. Here's
an example backtrace:
```
[ 8] 0x0000000188e56743 libsystem_platform.dylib`_sigtramp + 55
[ 9] 0x00000001181e041f LLDB`lldb_private::CPlusPlusLanguage::SymbolNameFitsToLanguage(lldb_private::Mangled) const [inlined] unsigned long std::1::constexpr_strlen[abi:nn200100]<char>(char const*) + 7 at constexpr_c_functions.h:63:10
[ 9] 0x00000001181e0418 LLDB`lldb_private::CPlusPlusLanguage::SymbolNameFitsToLanguage(lldb_private::Mangled) const [inlined] std::__1::char_traits<char>::length[abi:nn200100](char const*) at char_traits.h:232:12
[ 9] 0x00000001181e0418 LLDB`lldb_private::CPlusPlusLanguage::SymbolNameFitsToLanguage(lldb_private::Mangled) const [inlined] llvm::StringRef::StringRef(char const*) at StringRef.h:90:33
[ 9] 0x00000001181e0418 LLDB`lldb_private::CPlusPlusLanguage::SymbolNameFitsToLanguage(lldb_private::Mangled) const [inlined] llvm::StringRef::StringRef(char const*) at StringRef.h:92:38
[ 9] 0x00000001181e0418 LLDB`lldb_private::CPlusPlusLanguage::SymbolNameFitsToLanguage(lldb_private::Mangled) const + 20 at CPlusPlusLanguage.cpp:68:62
```
Looks like we're calling `strlen` on a nullptr. I stared at this
codepath for a while but am still not sure how that could happen unless
the underlying `ConstString` somehow pointed to corrupted data.
But `SymbolNameFitsToLanguage` does some roundtripping through a `const
char*` before calling `GetManglingScheme`. No other callsite does this
and it just seems redundant.
This patch cleans this up.
rdar://161128180
Commit: da160574e0b28e279de4e06edfc66ff3c0a06c9a
https://github.com/llvm/llvm-project/commit/da160574e0b28e279de4e06edfc66ff3c0a06c9a
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[MLIR] Remove unused debug macros (NFC)
Commit: 3a34710157a14d2ea3375322f259ff4f5cf4dac8
https://github.com/llvm/llvm-project/commit/3a34710157a14d2ea3375322f259ff4f5cf4dac8
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/IR/AsmWriter.cpp
Log Message:
-----------
[NFC][LLVM][AsmWriter] Move type printing to `WriteAsOperandInternal` (#161456)
Add option to `WriteAsOperandInternal` to print the type and use that to
eliminate explicit type printing code in several places.
Commit: 372d3fb10c9dd0ff4e780d68b86220e30fd00b27
https://github.com/llvm/llvm-project/commit/372d3fb10c9dd0ff4e780d68b86220e30fd00b27
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[CodeGen] Remove `shouldExpandPartialReductionIntrinsic()` hook (NFC) (#161498)
This is unused. Targets can lower/expand the `PARTIAL_REDUCE_*` ISD
nodes.
Commit: b413ac1af3b884af98925a9b422582ca7ebcbecd
https://github.com/llvm/llvm-project/commit/b413ac1af3b884af98925a9b422582ca7ebcbecd
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
Log Message:
-----------
[NFC][AArch64][ISEL] Remove unnecessary predicates from partial_reduce_*mla patterns.
Commit: a33544b83c80dcaa851fabd2979def6f68dd6e7a
https://github.com/llvm/llvm-project/commit/a33544b83c80dcaa851fabd2979def6f68dd6e7a
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
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
Log Message:
-----------
[OpenACC][CIR] Implement 'alloca copying' for private lowering (#161382)
The previous patch ensured that we correctly got the allocas put in
place. This patch takes the address of each element of each alloca, and
copies it to the previous one. This allows us to re-form the
pointer-structure for a recipe.
Commit: f4d18c0ef8e3207b8ee2363fea60f21d4fa325bc
https://github.com/llvm/llvm-project/commit/f4d18c0ef8e3207b8ee2363fea60f21d4fa325bc
Author: Rolf Morel <rolf.morel at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Transform/TuneExtension/TuneExtensionOps.h
M mlir/include/mlir/Dialect/Transform/TuneExtension/TuneExtensionOps.td
M mlir/lib/Dialect/Transform/TuneExtension/TuneExtensionOps.cpp
M mlir/python/mlir/dialects/transform/tune.py
M mlir/test/Dialect/Transform/test-tune-extension-invalid.mlir
M mlir/test/Dialect/Transform/test-tune-extension.mlir
M mlir/test/python/dialects/transform_tune_ext.py
Log Message:
-----------
[MLIR][Transform][Tune] Introduce `transform.tune.alternatives` op (#160724)
This op enables expressing uncertainty regarding what should be
happening at particular places in transform-dialect schedules. In
particular, it enables representing a choice among alternative regions.
This choice is resolved through providing a `selected_region` argument.
When this argument is provided, the semantics are such that it is valid
to rewrite the op through substituting in the selected region -- with
the op's interpreted semantics corresponding to exactly this.
This op represents another piece of the puzzle w.r.t. a toolkit for
expressing autotuning problems with the transform dialect. Note that
this goes beyond tuning knobs _on_ transforms, going further by making
it tunable which (sequences of) transforms are to be applied.
Commit: 8df0575125c6f7575aff05a8a9effa07bedc7e92
https://github.com/llvm/llvm-project/commit/8df0575125c6f7575aff05a8a9effa07bedc7e92
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/peephole-opt-regseq-removal.mir
Log Message:
-----------
AMDGPU: Add peephole opt baseline tests (#161309)
Add tests which show missed folds of subregister extracts with
intermediate full copies.
Commit: 2e5a5fdd329073e3d4b174743dfc7fca655e9491
https://github.com/llvm/llvm-project/commit/2e5a5fdd329073e3d4b174743dfc7fca655e9491
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/X86/combine-pack.ll
Log Message:
-----------
[X86] Add test showing failure to remove sign splats from PACKSS intrinsics (#161518)
PACKSS intrinsic calls are only expanded to X86ISD::PACKSS nodes during
legalisation, after which time we fail to handle cases where ASHR sign
splats (now lowered to X86ISD::VSRAI) are unnecessary.
Add additional example of FREEZE(PACKSS()) as that's an issue as well.
Commit: c09054866a1ad6c250e6c972d369b9023abb4b3b
https://github.com/llvm/llvm-project/commit/c09054866a1ad6c250e6c972d369b9023abb4b3b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/funnel.ll
Log Message:
-----------
[InstCombine] Drop poison-generating flags when reusing existing or instruction (#161504)
Closes https://github.com/llvm/llvm-project/issues/161493.
Commit: 73d9974c91413f5a6dbe6f76f4b73ad226b6276b
https://github.com/llvm/llvm-project/commit/73d9974c91413f5a6dbe6f76f4b73ad226b6276b
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/freeze.ll
Log Message:
-----------
[InstCombine] Avoid self-replacing in `getUndefReplacement` (#161500)
Self-replacing has a different meaning in InstCombine. It will replace
all uses with poison.
Closes https://github.com/llvm/llvm-project/issues/161492.
Commit: a05e004b285af92f9bcef12d5ab5537c36002c13
https://github.com/llvm/llvm-project/commit/a05e004b285af92f9bcef12d5ab5537c36002c13
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
M llvm/test/Transforms/DFAJumpThreading/dfa-unfold-select.ll
Log Message:
-----------
[DFAJumpThreading] Unfold select to the incoming block of phi user (#160987)
Fixes #160250
We previously assumed the select to unfold is defined in the incoming
block of phi user, as `isValidSelectInst` filters other cases at the
initial stage. However, the selects not defined in the incoming block
may occur after unfolding the arms of the unfolded select.
This patch sinks the select into the incoming block of the phi user and
unfolds it at the incoming block.
Commit: ca1ff80a16f135306282cb8ef33d0af6ce20fa69
https://github.com/llvm/llvm-project/commit/ca1ff80a16f135306282cb8ef33d0af6ce20fa69
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Math/Transforms/Passes.td
M mlir/lib/Dialect/Math/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Math/Transforms/SincosFusion.cpp
A mlir/test/Dialect/Math/sincos-fusion.mlir
Log Message:
-----------
[MLIR] Add sincos fusion pass (#161413)
We see performance improvements from using sincos to reuse calculations
in hot loops that compute sin() and cos() of the same operand. Add a
pass to identify sin() and cos() calls in the same block with the same
operand and fast-math flags, and fuse them into a sincos op.
Follow-up to:
* #160561
* #160772
Commit: 58c959b4f79b0b0ea901c1e7b5051a16f598631e
https://github.com/llvm/llvm-project/commit/58c959b4f79b0b0ea901c1e7b5051a16f598631e
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
Log Message:
-----------
[AMDGPU] Use common allUsesAvailableAt implementation [nfc] (#161418)
Replace the target specific copy with a call to the generic routine. I
don't spot any differences by eye, and there's nothing in the original
review discussion (#124327) which makes it clear why this was
duplicated.
Commit: cd0f560cc7e88bffedc4c34e3eb3efbf00dcb3ef
https://github.com/llvm/llvm-project/commit/cd0f560cc7e88bffedc4c34e3eb3efbf00dcb3ef
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/AArch64/pr161420.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4-lane-x4.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4.ll
Log Message:
-----------
[AArch64][SME] Precommit tests for LUT4I `Chain` issues (NFC) (#161505)
These tests show that `luti4` intrinsics are currently incorrectly
CSD'd.
Commit: 8f77621574176387f906b8ceef9e1abb90bf22f6
https://github.com/llvm/llvm-project/commit/8f77621574176387f906b8ceef9e1abb90bf22f6
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaChecking.cpp
M clang/test/SemaCXX/builtin-assume-aligned.cpp
Log Message:
-----------
[clang] Convert second arg of __builtin_assume_aligned to ConstantExpr (#161314)
Since the second argument must be a constant integer, we can as well
convert it to a `ConstantExpr` in Sema.
Fixes https://github.com/llvm/llvm-project/issues/161272
Commit: 50c8e5d730ac55454ef5c1f58fbc9096e946240c
https://github.com/llvm/llvm-project/commit/50c8e5d730ac55454ef5c1f58fbc9096e946240c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-pack.ll
Log Message:
-----------
[X86] SimplifyDemandedBitsForTargetNode - generalize X86ISD::VSRAI handling when only demanding 'known signbits' (#161523)
If we only demand bits that already match the signbit then we don't need to shift.
Generalizes an existing pattern that just handled signbit-only demanded bits to match what we do for ISD::SRA.
Commit: 13ce5f249ed911971fe899e318d08765399d8ce1
https://github.com/llvm/llvm-project/commit/13ce5f249ed911971fe899e318d08765399d8ce1
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.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
Log Message:
-----------
[OpenACC] Remove unnecessary uses of `getResult`, fix cast tests (#161526)
A previous review comment pointed out that operations with only a single
result implicitly convert to `mlir::Value`. This patch removes the
explicit use of `getResult` where it is unnecessary in OpenACC lowering.
However, there ARE a few cases where it is necessary where the
`mlir::ValueRange` implicit constructor from a single value is being
used, so those are untouched.
Additionally, while the previous patch was being committed (#161382), a
second patch (#161431) changed the format of cir.casts, so this patch
fixes the additional test lines for that as well.
Commit: 9e0c0a09392ff7d3b196b17c77595e921e35d765
https://github.com/llvm/llvm-project/commit/9e0c0a09392ff7d3b196b17c77595e921e35d765
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
Log Message:
-----------
[LLVM][SCEV] udiv (mul nuw a, vscale), (mul nuw b, vscale) -> udiv a, b (#157836)
Commit: edb80a8d7fb2e1e29a4cb792148b4ffd441eb114
https://github.com/llvm/llvm-project/commit/edb80a8d7fb2e1e29a4cb792148b4ffd441eb114
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
M lldb/test/API/lang/cpp/template-arguments/TestCppTemplateArguments.py
Log Message:
-----------
[lldb][test] Fix bf16 test cases on Arm 32-bit (#161528)
Fixes #157674
On ARM, the presence of a specific bf16 type in the AST is gated by:
```
bool ARMTargetInfo::hasBFloat16Type() const {
// The __bf16 type is generally available so long as we have any fp registers.
return HasBFloat16 || (FPU && !SoftFloat);
}
```
And the target we use when evaluating symbols (derived from the program
file, I think, haven't found it yet) does not enable any of this.
This means that we fall back to __fp16.
So for parts of the testing we just need to expect __fp16 instead, and
others we need to skip because now a class looks like it inherits from
itself.
There's a proper fix here somewhere but I don't know what it is yet.
Commit: 664b227089a2d3a72b15018018c5e8e4e639f944
https://github.com/llvm/llvm-project/commit/664b227089a2d3a72b15018018c5e8e4e639f944
Author: Sam Tebbs <samuel.tebbs at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
Log Message:
-----------
[LV] Keep duplicate recipes in VPExpressionRecipe (#156976)
The VPExpressionRecipe class uses a set to store its bundled recipes. If
repeated recipes are bundled then the duplicates will be lost, causing
the following recipes to not be at the expected place in the set.
When printing a reduce.add(mul(ext, ext)) bundle, for example, if the
extends are the same then the 3rd element of the set will be the
reduction, rather than the expected mul, causing a cast error. With this
change, the recipes are at the expected index in the set.
Fixes #156464
Commit: 7ae3eca6572fe463ed51e82e63890eb7d77096d7
https://github.com/llvm/llvm-project/commit/7ae3eca6572fe463ed51e82e63890eb7d77096d7
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/test/Shell/lit.cfg.py
Log Message:
-----------
[lldb][test] Allow '.c' files to be used as shell tests (#161520)
Required for https://github.com/llvm/llvm-project/pull/161521
Commit: f33564b9afaa34ffd92b754db7a5ff8ff5e60897
https://github.com/llvm/llvm-project/commit/f33564b9afaa34ffd92b754db7a5ff8ff5e60897
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/include/lldb/Core/Mangled.h
Log Message:
-----------
[lldb][NFCI] Remove the non-const reference Mangled::GetMangledName accessor (#161495)
We've been seen (very sporadic) lifetime issues around this area. We
noticed that `GetMangledName` has two accessors, one of which returns a
non-const reference. I audited all the callsites and no users of this
overload actually mutate the `ConstString` itself (which is a suspicious
thing to do anyway since it's just a wrapper around a `const char*`).
This patch removes the redundant overload.
rdar://161128180
Commit: 0e17fb52da131a21ec5ad4878ee3b54b8deb5b59
https://github.com/llvm/llvm-project/commit/0e17fb52da131a21ec5ad4878ee3b54b8deb5b59
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/test/CIR/CodeGen/struct.cpp
Log Message:
-----------
[CIR] Implement GenericSelectionExpr for AggregateExpr (#161003)
Implement the GenericSelectionExpr for AggregateExpr
Commit: 1c7f40bf832222ed6b5435a6a19b4ef3c652bd9f
https://github.com/llvm/llvm-project/commit/1c7f40bf832222ed6b5435a6a19b4ef3c652bd9f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-pack.ll
Log Message:
-----------
[X86] X86ISD::PACKSS/US do not create undef/poison (#161534)
Commit: 825d82d0515d7d40c280547f6dcbf0aba9255289
https://github.com/llvm/llvm-project/commit/825d82d0515d7d40c280547f6dcbf0aba9255289
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/IR/AsmWriter.cpp
Log Message:
-----------
[NFC][LLVM] Misc code cleanup in AsmWriter.cpp (#161522)
- Change function/variable names to follow LLVM coding standard.
- Use `auto` for variables initialized using `dyn_cast`.
- Use `ArrayRef` instead of const vector references for function
arguments.
- Use `interleaved` to print comma separated lists of integers.
- Inline some instances of `incorporateFunction` lambda that have a
single use.
Commit: 9f7e7f7d9c9f46cfe83481b1e79d7c8a3e11580e
https://github.com/llvm/llvm-project/commit/9f7e7f7d9c9f46cfe83481b1e79d7c8a3e11580e
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
A lldb/test/Shell/Expr/TestGlobalSymbolObjCConflict.c
Log Message:
-----------
[lldb][MachO] Fix inspection of global variables that start with 'O' (#161521)
On Darwin C-symbols are prefixed with a '_'. The LLDB Macho-O parses
handles Objective-C metadata symbols starting with '_OBJC' specially.
Previously global symbols starting with a '_O' prefix were lost because
of incorrectly scoped if-guards. This patch removes those checks.
There is more cleanup that can be done in this file because there's a
bunch of duplicated checks for these ObjC symbols. I decided to leave
that for an NFC follow-up.
Depends on https://github.com/llvm/llvm-project/pull/161520
rdar://158159242
Commit: aee99e8015daa9f53ab1fd4e5b24cc4c694bdc4a
https://github.com/llvm/llvm-project/commit/aee99e8015daa9f53ab1fd4e5b24cc4c694bdc4a
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
A compiler-rt/lib/builtins/wasm/__c_longjmp.S
A compiler-rt/lib/builtins/wasm/__cpp_exception.S
Log Message:
-----------
[WebAssembly] Define llvm-internal WasmEH tags in compiler-rt (#160959)
The `__c_longjmp` and `__cpp_exceptions` tags are used internally by
llvm to implement setjmp/longjmp and C++ exception handling
respectively.
These symbols were previously defined weakly in each object file but
were recently converted to external references in #159143. They now need
to be defined somewhere in the runtime libraries. I think compiler-rt is
likely the most sensible place for them.
Commit: 23e081524fd9f64fb3430822e879b6dc36a1d3f1
https://github.com/llvm/llvm-project/commit/23e081524fd9f64fb3430822e879b6dc36a1d3f1
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Log Message:
-----------
[lldb][MachO][NFC] Extract ObjC metadata symbol parsing into helper function (#161536)
Just a simple de-duplication of the same code. We saw a bug here
recently (https://github.com/llvm/llvm-project/pull/161521). Might as
well isolate this all in one place.
rdar://158159242
Commit: 59fe8401f473dc77825b7bdfc82dc1628ddb82cc
https://github.com/llvm/llvm-project/commit/59fe8401f473dc77825b7bdfc82dc1628ddb82cc
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
Log Message:
-----------
[LV] Use StringRef::consume_front. NFC (#161454)
Commit: 0e124b9586b862e749a3c9ee8b43cf18ad9c2812
https://github.com/llvm/llvm-project/commit/0e124b9586b862e749a3c9ee8b43cf18ad9c2812
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/lib/Support/StringMap.cpp
Log Message:
-----------
[ADT] Use "if constexpr" with shouldReverseIterate (#161477)
This patch uses "if constexpr" whenever we call shouldReverseIterate
in "if" conditions. Note that shouldReverseIterate is a constexpr
function.
Commit: 190826c5df1ee34bf04823ba3b9d448e18b877ed
https://github.com/llvm/llvm-project/commit/190826c5df1ee34bf04823ba3b9d448e18b877ed
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/IntervalTree.h
M llvm/include/llvm/Support/FormatProviders.h
M llvm/include/llvm/Support/FormatVariadicDetails.h
M llvm/include/llvm/Support/HashBuilder.h
Log Message:
-----------
[ADT, Support] Drop extraneous std::bool_constant (NFC) (#161478)
This patch drops extraneous std::bool_constant, replacing:
std::bool_constant<std::is_foo_v<...>>
with:
std::is_foo<...>
Commit: 09dbb3e25444ec93b45320061932a1328f0d1ed8
https://github.com/llvm/llvm-project/commit/09dbb3e25444ec93b45320061932a1328f0d1ed8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/Format.h
Log Message:
-----------
[Support] Use a C++17 fold expression in a static_assert (NFC) (#161479)
This patch simplifies a recursive use of a type trait to a C++17 fold
expression.
Commit: 515660d843b04d62eed816e9fb191f31af805e4b
https://github.com/llvm/llvm-project/commit/515660d843b04d62eed816e9fb191f31af805e4b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/InstructionCost.h
Log Message:
-----------
[Support] Make getMaxValue and getMinValue constexpr variables (NFC) (#161480)
This patch makes getMaxValue and getMinValue constexpr variables and
"inlines" the calls to getMaxValue and getMinValue.
We could probably make InstructionCost constexpr also, but that's left
for another day.
Commit: a6bf271ffec9b4b68e5b1f5270b8d8d6f28dac79
https://github.com/llvm/llvm-project/commit/a6bf271ffec9b4b68e5b1f5270b8d8d6f28dac79
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/DirectXUsage.rst
Log Message:
-----------
[llvm] Proofread DirectXUsage.rst (#161481)
Commit: bb16c56019f16998235e8a8c43dc072b03fe1dc0
https://github.com/llvm/llvm-project/commit/bb16c56019f16998235e8a8c43dc072b03fe1dc0
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
A llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check-dl.ll
M llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check.ll
Log Message:
-----------
[LoopIdiom] Fix a DL-related crash in optimizeCRCLoop (#161509)
Commit: cbaf3c60184da7e89e0c6c342d04e94746bf72f0
https://github.com/llvm/llvm-project/commit/cbaf3c60184da7e89e0c6c342d04e94746bf72f0
Author: carlobertolli <carlo.bertolli at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A clang/test/OpenMP/amdgcn_save_temps.c
Log Message:
-----------
Add test to show save-temps is broken for amdgcn target. (#161472)
In response to request here
https://github.com/llvm/llvm-project/pull/160935
by @jansvoboda11
Commit: 91c35d6378910ae76b8e8644825d8458f5d44ca1
https://github.com/llvm/llvm-project/commit/91c35d6378910ae76b8e8644825d8458f5d44ca1
Author: Nico Weber <thakis at chromium.org>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/sources.gni
Log Message:
-----------
[gn] port aee99e8015da
Commit: a9b8dfe7b5f224e2d442352979cf2e0c1c0b539b
https://github.com/llvm/llvm-project/commit/a9b8dfe7b5f224e2d442352979cf2e0c1c0b539b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A libcxx/utils/find-rerun-candidates
M libcxx/utils/visualize-historical
Log Message:
-----------
[libc++] Add a script to find outliers and re-run candidates in LNT results
This allows selectively re-running benchmarks that are suspected to contain
a lot of noise.
Commit: 8907b6d39371d439461cdd3475d5590f87821377
https://github.com/llvm/llvm-project/commit/8907b6d39371d439461cdd3475d5590f87821377
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/call-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/invariant-replicate-region.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/multiple-result-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/struct-return-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/synthesize-mask-for-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-insertelt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
M llvm/test/Transforms/LoopVectorize/ARM/active-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-loop-hint.ll
M llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-masked-access.ll
M llvm/test/Transforms/LoopVectorize/RISCV/lmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-prune-vf.ll
M llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-basics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vector-loop-backedge-elimination-with-evl.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/addressing.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/scalar-steps-with-users-demanding-all-lanes-and-first-lane-only.ll
M llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-constant-known-via-scev.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
M llvm/test/Transforms/LoopVectorize/X86/fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/imprecise-through-phis.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
M llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll
M llvm/test/Transforms/LoopVectorize/X86/pr141968-instsimplifyfolder.ll
M llvm/test/Transforms/LoopVectorize/X86/pr34438.ll
M llvm/test/Transforms/LoopVectorize/X86/pr51366-sunk-instruction-used-outside-of-loop.ll
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
M llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/widened-value-used-as-scalar-and-first-lane.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll
M llvm/test/Transforms/LoopVectorize/bsd_regex.ll
M llvm/test/Transforms/LoopVectorize/check-prof-info.ll
M llvm/test/Transforms/LoopVectorize/constantfolder-infer-correct-gepty.ll
M llvm/test/Transforms/LoopVectorize/constantfolder.ll
M llvm/test/Transforms/LoopVectorize/create-induction-resume.ll
M llvm/test/Transforms/LoopVectorize/dead_instructions.ll
M llvm/test/Transforms/LoopVectorize/debugloc-optimize-vfuf-term.ll
M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-const-TC.ll
M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-multiply-recurrences.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/flags.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/induction-multiple-uses-in-same-instruction.ll
M llvm/test/Transforms/LoopVectorize/induction-step.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
M llvm/test/Transforms/LoopVectorize/interleave-with-i65-induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-metadata.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/is_fpclass.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-neg-off.ll
M llvm/test/Transforms/LoopVectorize/load-of-struct-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/loop-form.ll
M llvm/test/Transforms/LoopVectorize/make-followup-loop-id.ll
M llvm/test/Transforms/LoopVectorize/memdep-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/metadata.ll
M llvm/test/Transforms/LoopVectorize/minimumnum-maximumnum-reductions.ll
M llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll
M llvm/test/Transforms/LoopVectorize/multiple-result-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/noalias-scope-decl.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/phi-cost.ll
M llvm/test/Transforms/LoopVectorize/pr154045-dont-fold-extractelement-livein.ll
M llvm/test/Transforms/LoopVectorize/pr32859.ll
M llvm/test/Transforms/LoopVectorize/pr36983-multiple-lcssa.ll
M llvm/test/Transforms/LoopVectorize/pr44488-predication.ll
M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
M llvm/test/Transforms/LoopVectorize/pr51614-fold-tail-by-masking.ll
M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
M llvm/test/Transforms/LoopVectorize/pr66616.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-reduction-inloop.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-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/remarks-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reverse-induction-gep-nowrap-flags.ll
M llvm/test/Transforms/LoopVectorize/reverse_induction.ll
M llvm/test/Transforms/LoopVectorize/runtime-check.ll
M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
M llvm/test/Transforms/LoopVectorize/select-neg-cond.ll
M llvm/test/Transforms/LoopVectorize/select-reduction-start-value-may-be-undef-or-poison.ll
M llvm/test/Transforms/LoopVectorize/select-reduction.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/strided-accesses-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
M llvm/test/Transforms/LoopVectorize/trunc-extended-icmps.ll
M llvm/test/Transforms/LoopVectorize/trunc-loads-p16.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/LoopVectorize/trunc-shifts.ll
M llvm/test/Transforms/LoopVectorize/uitofp-preserve-nneg.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_and.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_lshr.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
M llvm/test/Transforms/LoopVectorize/unused-blend-mask-for-first-operand.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-outside-iv-users.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
M llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll
M llvm/test/Transforms/LoopVectorize/widen-intrinsic.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mean_q7.ll
Log Message:
-----------
[VPlan] Remove original loop blocks if dead. (#155497)
Build on top of https://github.com/llvm/llvm-project/pull/154510 to
completely remove the blocks of dead scalar loops.
Depends on https://github.com/llvm/llvm-project/pull/154510.
PR: https://github.com/llvm/llvm-project/pull/155497
Commit: 240b73e10f5c6549776cfd3847db2be14dc42776
https://github.com/llvm/llvm-project/commit/240b73e10f5c6549776cfd3847db2be14dc42776
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[SimplifyCFG][PGO] Reuse existing `setBranchWeights` (#160629)
The main difference between SimplifyCFG's `setBranchWeights` and the ProfDataUtils' is that the former doesn't propagate all-zero weights. That seems like a sensible thing to do, so updated the latter accordingly, and added a flag to control the behavior.
Also moved to ProfDataUtils the logic fitting 64-bit weights to 32-bit.
As side-effect, this fixes some profcheck failures.
Commit: 42ab473f518c5f180455c674cbaba70a0b2634b7
https://github.com/llvm/llvm-project/commit/42ab473f518c5f180455c674cbaba70a0b2634b7
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/cmov-branch-opt.ll
M llvm/test/CodeGen/RISCV/select-bare.ll
M llvm/test/CodeGen/RISCV/select-cc.ll
M llvm/test/CodeGen/RISCV/select-cond.ll
M llvm/test/CodeGen/RISCV/select-const.ll
M llvm/test/CodeGen/RISCV/select.ll
M llvm/test/CodeGen/RISCV/xqcicli.ll
M llvm/test/CodeGen/RISCV/xqcicm.ll
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Xqci with Short Forward Branches (#161407)
This change implements support for the combination of Xqci and the Short
Forward Branch optimisation.
In particular, we want to prioritise `Branch+ALU` (short forward
branches) over the equivalent `ALU+CMov`, when the compared values are
both registers, and the selected values come from registers (as this is
what `PseudoCCMOVGPR` supports).
However, when expanding `PseudoCCMOVGPR` (i.e., `Branch+MV`), we instead
want to expand it to a conditional move (for code size reasons), so I
have added `RISCVExpandPseudo::expandCCOpToCMov` to try to do so. This
mostly works, except if `PseudoCCMOVGPR` is comparing against zero and
gets commuted - as can be seen in one example in `foo` in
`select-cc.ll`.
This change:
- updates the attributes used for the XQCI RUN lines for the select
tests.
- modifies the CodeGen patterns and predicates to prioritise selecting
the SFB Pseudo.
- adds CodeGen patterns for MVLTI/MVLTUI/MVGEI/MVGEUI with imm=zero, to
prioritise over the equivalent `Select_GPR_Using_CC_GPR` patterns for
rhs=X0.
- adds a hook to attempt to turn the predicated-mov Pseudo back into a
Conditional Move from Xqcicm (which matches the pseudo in terms of tied
register operands).
Commit: 57a9f79336abebbdfffd52270bb615f7189758d2
https://github.com/llvm/llvm-project/commit/57a9f79336abebbdfffd52270bb615f7189758d2
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/freeze-phi.ll
Log Message:
-----------
[ValueTracking] Take PHI's poison-generating flags into account (#161530)
ninf/nnan in the phi node may produce poison values. They should be
considered in `isGuaranteedNotToBeUndefOrPoison`.
Closes https://github.com/llvm/llvm-project/issues/161524.
Commit: e1bd9afd648f7d697da64775a79b5bd0d434b909
https://github.com/llvm/llvm-project/commit/e1bd9afd648f7d697da64775a79b5bd0d434b909
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CAS/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CAS/BUILD.gn
Log Message:
-----------
[gn build] Port 2936a2c882d7
Commit: 03cb514abe018985387d3e39e9e78bcfe339e874
https://github.com/llvm/llvm-project/commit/03cb514abe018985387d3e39e9e78bcfe339e874
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/bolt/lib/Core/BUILD.gn
Log Message:
-----------
[gn build] Port da315a352880
Commit: 5a80fb9177e3c831c9c574400a13d77393397f2a
https://github.com/llvm/llvm-project/commit/5a80fb9177e3c831c9c574400a13d77393397f2a
Author: Augusto Noronha <anoronha at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Log Message:
-----------
Revert "[lldb][MachO][NFC] Extract ObjC metadata symbol parsing into helper function (#161536)"
This reverts commit 23e081524fd9f64fb3430822e879b6dc36a1d3f1.
Commit: 65fd44eb0d9211035c4aaee85bc78e49c4682fab
https://github.com/llvm/llvm-project/commit/65fd44eb0d9211035c4aaee85bc78e49c4682fab
Author: Alexey Bader <alexey.bader at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[clang-linker-wrapper][NFC] Invert condition for readability (#161557)
I find the positive expressions easier to read than negative.
Commit: 2d6e7ef567a80b887904221c4eb1320b4d5684b9
https://github.com/llvm/llvm-project/commit/2d6e7ef567a80b887904221c4eb1320b4d5684b9
Author: Alexey Bader <alexey.bader at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
A llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
Log Message:
-----------
[LV] Add additional tests for replicating load/store costs.
Includes test for https://github.com/llvm/llvm-project/issues/161404
Commit: fc6cc4009ff2dabd8e47d48009ca18609765c872
https://github.com/llvm/llvm-project/commit/fc6cc4009ff2dabd8e47d48009ca18609765c872
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Log Message:
-----------
[AsmPrinter] Remove unnecessary casts. NFC
Commit: 62c50fd7955a1b2b0678b97038832a155ca97723
https://github.com/llvm/llvm-project/commit/62c50fd7955a1b2b0678b97038832a155ca97723
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[VPlan] Retrieve canonical IV directly in preparePlanForEpilogue (NFCI).
Move code handling canonical IV out of the loop, simplifying the loop
body. Preparation for follow-up changes
Commit: 37637120af80672002a97c330077e31df7432261
https://github.com/llvm/llvm-project/commit/37637120af80672002a97c330077e31df7432261
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Update ComplexRealOp to work on scalar type (#161080)
Update cir::CreateRealOp to make it visible on scalars
Issue #160568
Commit: e84dcba9246d696715fe1daa4ddb218182580a70
https://github.com/llvm/llvm-project/commit/e84dcba9246d696715fe1daa4ddb218182580a70
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/IR/Builders.cpp
Log Message:
-----------
[MLIR] Remove leftover debug print code
This was incorrectly left and merged with #160615
Commit: 9e04291fd20489882259625ec327b87ecef6fa8c
https://github.com/llvm/llvm-project/commit/9e04291fd20489882259625ec327b87ecef6fa8c
Author: Princeton Ferro <pferro at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Log Message:
-----------
[InstCombine] linearize complexity of `findDemandedEltsByAllUsers()` (#161436)
Each call to `findemandedEltsBySingleUser()` returns a new APInt that
must be OR'd with the current APInt. For large vectors with many uses
this can be slow, if the total number of operations is `{# uses} x {size
of vector}`. Instead or OR'ing, use `setBit()` on the passed-in APInt.
Commit: 78c65545d4694e043b593e4cca7c7281a639247b
https://github.com/llvm/llvm-project/commit/78c65545d4694e043b593e4cca7c7281a639247b
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/AST/CharUnits.h
M clang/lib/AST/APValue.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/StaticAnalyzer/Core/Store.cpp
Log Message:
-----------
[AST] Give `CharUnits::operator%` a consistent type. NFC (#160781)
Update the `operator%` overload that accepts `CharUnits` to return
`CharUnits` to match the other `operator%`. This is more logical than
returning an `int64` and cleans up users that want to continue to do
math with the result.
Many users of this were explicitly comparing against 0. I considered
updating these to compare against `CharUnits::Zero` or even introducing
an `explicit operator bool()`, but they all feel clearer if we update
them to use the existing `isMultipleOf()` function instead.
Commit: 0e14973f3cff922549b472aebc4c3b0dc1fc4d76
https://github.com/llvm/llvm-project/commit/0e14973f3cff922549b472aebc4c3b0dc1fc4d76
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CMakeLists.txt
A llvm/test/Unit/CMakeLists.txt
Log Message:
-----------
[NFC][LLVM-Tests] Specialize test suite for LLVM unit tests (#161442)
Remove `UnitTests` from LLVM_TEST_DEPENDS_COMMON and create a
specialized lit suite for unit-tests and that depends only on
`UnitTests`.
Commit: ec982fac1d1d9968f5167c6dce244428bb590318
https://github.com/llvm/llvm-project/commit/ec982fac1d1d9968f5167c6dce244428bb590318
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] Change arguments of 'isStridedLoad' (NFC) (#160401)
This is needed to reduce the diff for the future work on widening
strided loads. Also, with this change we'll be able to re-use this for
the case when each pointer represents a start of a group of contiguous
loads.
Commit: 15dc80fda748b094c28942e0b360a8fc2db8fd20
https://github.com/llvm/llvm-project/commit/15dc80fda748b094c28942e0b360a8fc2db8fd20
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/RISCV/basic-strided-loads.ll
Log Message:
-----------
[SLPVectorizer][NFC] A test for widening constant strided loads. (#160552)
Precommit a test.
Commit: 9a30ada53d5ef8d651c75795af2f6e9c48a1eecb
https://github.com/llvm/llvm-project/commit/9a30ada53d5ef8d651c75795af2f6e9c48a1eecb
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
Log Message:
-----------
[CIR][NFC] Fix CIR build (#161577)
This fixes the CIR build after recent changes to CharUnits.
Commit: 71365c0b6b95eb6874b08f32fe58b5419979ff4c
https://github.com/llvm/llvm-project/commit/71365c0b6b95eb6874b08f32fe58b5419979ff4c
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
Log Message:
-----------
[CIR][NFC] Fix CIR build after CharUnits change (#161580)
My previous attempt to fix this missed one case.
Commit: 56ca23c46dfd3b4a8cfd5cff05680ffcb20dde44
https://github.com/llvm/llvm-project/commit/56ca23c46dfd3b4a8cfd5cff05680ffcb20dde44
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/CodeGenHLSL/RootSignature.hlsl
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-AddressU.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-AddressV.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-AddressW.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-BorderColor.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-ComparisonFunc.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-Filter.ll
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-Flag.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-MaxAnisotropy.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-MaxLod.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-MinLod.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-MinLopBias.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-ShaderRegister.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-ShaderVisibility.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers_V3.ll
M llvm/test/CodeGen/DirectX/rootsignature-validation-fail-sampler.ll
M llvm/test/CodeGen/DirectX/rootsignature-validation-fail-static-sampler-range.ll
Log Message:
-----------
[DirectX] Updating Root Signature Metadata to contain Static Sampler flags (#160210)
Root Signature 1.2 adds flags to static samplers. This requires us to
change the metadata representation to account for it when being
generated. This patch focus on the metadata changes required in the
backend, frontend changes will come in a future PR.
Commit: c4788bff8266497aafd526f887722982127a2e11
https://github.com/llvm/llvm-project/commit/c4788bff8266497aafd526f887722982127a2e11
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/ScopedPrinter.cpp
Log Message:
-----------
[NFC][LLVM][Support] Misc code cleanup in ScopedPrinter (#161462)
Add missing file header to ScopedPrinter.cpp and adjust the code to
conform to LLVM coding standards.
Commit: b389adf56a1610cbdf0aa0a7b0b70b2c6b049f83
https://github.com/llvm/llvm-project/commit/b389adf56a1610cbdf0aa0a7b0b70b2c6b049f83
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
Log Message:
-----------
[RISCV] Allow non-canonicalized splats in isProfitableToSinkOperands (#161586)
This isn't an optimization change - IR transforms should have remove the
operands and replaced them with poison. However, I noticed the
non-canonical splat structure in a couple of llvm-reduce outputs. This
results in us creating extremely atypical IR which is quite misleading
about the true cause of what's going on. (Because the non-canonical
splat doesn't get sunk, we then prone whatever was actually holding it
outside the loop in the original example, eliminating insight as to the
true cause of whatever issue we're debugging.)
Commit: 94b2617590c11b372a2161ccdfe52ecd73d58ec1
https://github.com/llvm/llvm-project/commit/94b2617590c11b372a2161ccdfe52ecd73d58ec1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[VPlan] Remove VPIRPhis in exit blocks when deleting scalar loop BBs.
DeleteDeadBlocks will remove single-entry phis. Remove them from the exit
VPIRBBs in VPlan as well, otherwise we would retain references to deleted
IR instructions.
Fixes MSan failures after 8907b6d39
https://lab.llvm.org/buildbot/#/builders/164/builds/14013
Commit: ba5141d27c66136d0dda866d30a495940474c528
https://github.com/llvm/llvm-project/commit/ba5141d27c66136d0dda866d30a495940474c528
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/declare-simd.f90
Log Message:
-----------
[flang][OpenMP] Check contatining scoping unit in DECLARE_SIMD (#161556)
Check if the name on DECLARE_SIMD is the name of the containing scoping
unit.
Fixes https://github.com/llvm/llvm-project/issues/161516
Commit: b66dfa7273f0d7953965e00af3999315a015a563
https://github.com/llvm/llvm-project/commit/b66dfa7273f0d7953965e00af3999315a015a563
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/include/lldb/Target/Statistics.h
M lldb/source/API/SBTarget.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
A lldb/test/API/functionalities/stats_api/arm64-minidump-build-ids.yaml
Log Message:
-----------
[LLDB] Add load core time to target metrics (#161581)
This patch adds a load core time, right now we don't have much insight
into the performance of load core, especially for large coredumps. To
start collecting information on this I've added some minor
instrumentation code to measure the two call sites of `LoadCore`.
I've also added a test to validate the new metric is output in
statistics dump
Commit: f1986d9d4467108859cc7e5061b7ca9c48e2ec24
https://github.com/llvm/llvm-project/commit/f1986d9d4467108859cc7e5061b7ca9c48e2ec24
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp8.txt
Log Message:
-----------
[AMDGPU] Fix real and fake true16 v_cvt_f32_bf16 disasm (#161578)
Commit: f2c8c42821a8c6de8984a1e7a932233cf221d5c1
https://github.com/llvm/llvm-project/commit/f2c8c42821a8c6de8984a1e7a932233cf221d5c1
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/test/AST/HLSL/RootSignature-Target-AST.hlsl
M clang/test/AST/HLSL/RootSignatures-AST.hlsl
M clang/test/CodeGenHLSL/RootSignature.hlsl
M clang/test/SemaHLSL/RootSignature-err.hlsl
M clang/test/SemaHLSL/RootSignature-flags-err.hlsl
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
M llvm/lib/Frontend/HLSL/HLSLRootSignature.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
M llvm/unittests/Frontend/HLSLRootSignatureDumpTest.cpp
Log Message:
-----------
[HLSL] Update Frontend to support version 1.2 of root signature (#160616)
This patch updates the frontend to support version 1.2 of root
signatures, it adds parsing, metadata generation and a few tests.
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: 69a53b8d54a6876dd322923a148d47749b76c5fc
https://github.com/llvm/llvm-project/commit/69a53b8d54a6876dd322923a148d47749b76c5fc
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Lower/OpenMP/wsloop-collapse-continue.f90
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do13.f90
Log Message:
-----------
[Flang] Fix perfect loop nest detection (#161554)
PR #160283 uses `Unwrap` to detect a `continue` statement, but it
applied it on the loop body itelf which sometimes finds a trailing
continue statement, but not always. Apply `Unwrap` on the last body
statement instead, where the `continue` is expected.
Fixes #161529
Commit: 1a850279c5a6e3662f3a7b40a9ea097838c2aca0
https://github.com/llvm/llvm-project/commit/1a850279c5a6e3662f3a7b40a9ea097838c2aca0
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
Log Message:
-----------
[LV] Re-compute cost of scalarized load users.
If there are direct memory op users of the newly scalarized load,
their cost may have changed because there's no scalarization
overhead for the operand. Update it.
This ensures assigning consistent costs to scalarized memory
instructions that themselves have scalarized memory instructions as
operands.
Commit: 39410dff52d813ccfc7efc6fc0c6afd4583e14a6
https://github.com/llvm/llvm-project/commit/39410dff52d813ccfc7efc6fc0c6afd4583e14a6
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/test/OpenMP/amdgcn_save_temps.c
Log Message:
-----------
[clang] Invert condition refactored in #160935 (#161583)
The PR #160935 incorrectly replaced `llvm::sys::fs::getUniqueID()` with
`llvm::vfs::FileSystem::exists()` in a condition. That's incorrect,
since the first function returns `std::error_code` that evaluates to
`true` when there is an error (file doesn't exist), while the new code
does the opposite. This PR fixes that issue by inverting the
conditional.
Co-authored-by: ronlieb <ron.lieberman at amd.com>
Commit: f122484b998d8dbfdaf2e6b9c222438c71e90d86
https://github.com/llvm/llvm-project/commit/f122484b998d8dbfdaf2e6b9c222438c71e90d86
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp
M clang-tools-extra/clang-move/Move.cpp
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScannerImpl.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M llvm/include/llvm/Support/FileSystem.h
M llvm/include/llvm/Support/Path.h
M llvm/lib/Support/Path.cpp
M llvm/lib/Support/VirtualFileSystem.cpp
M llvm/tools/llvm-config/llvm-config.cpp
M llvm/tools/llvm-dwp/llvm-dwp.cpp
M llvm/tools/llvm-opt-report/OptReport.cpp
M llvm/unittests/Support/Path.cpp
Log Message:
-----------
[llvm][support] Move `make_absolute` from `sys::fs` to `sys::path` (#161459)
The `llvm::sys::fs::make_absolute(const Twine &, SmallVectorImpl<char>
&)` functions doesn't perform any FS access - it only modifies the
second parameter via path/string operations. This function should live
in the `llvm::sys::path` namespace for consistency and for making it
easier to spot function calls that perform IO.
Commit: 103d2cae80160ebe79a91e4b4239140e2cd52283
https://github.com/llvm/llvm-project/commit/103d2cae80160ebe79a91e4b4239140e2cd52283
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
Log Message:
-----------
[alpha.webkit.RetainPtrCtorAdoptChecker] Allow leakRef in copy methods (#160986)
Allow leakRef() in the return statement of an Objective-C copy method
and other methods which return +1.
Commit: e2f8bfc55079143e955c08da2b4d20ef3e97a332
https://github.com/llvm/llvm-project/commit/e2f8bfc55079143e955c08da2b4d20ef3e97a332
Author: Alexey Bader <alexey.bader at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
Log Message:
-----------
[clang-sycl-linker][NFC] Remove dead includes (#161564)
These includes are not used by ClangSYCLLinker.cpp directly.
Explicitly include FormatVariadic.h for formatv declaration, which was implicitly included by removed headers.
Commit: 1e4d4bb584a1c35c5f7801c68b9dfccd6130caab
https://github.com/llvm/llvm-project/commit/1e4d4bb584a1c35c5f7801c68b9dfccd6130caab
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/ExprCXX.h
M clang/lib/AST/Decl.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
Log Message:
-----------
[Clang][NFC] Refactor operator delete argument handling (#160554)
This change moves the getUsualDeleteParams function into the
FunctionDecl class so that it can be shared between LLVM IR and CIR
codegen.
Commit: 780f69cd922d8925648e11e771e77f0b46190e5b
https://github.com/llvm/llvm-project/commit/780f69cd922d8925648e11e771e77f0b46190e5b
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/CMakeLists.txt
A clang/cmake/caches/BOLT-CSSPGO.cmake
M clang/cmake/caches/BOLT-PGO.cmake
A clang/cmake/caches/CSSPGO.cmake
M clang/utils/perf-training/CMakeLists.txt
M clang/utils/perf-training/perf-helper.py
M llvm/CMakeLists.txt
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[Clang][CMake] Add CSSPGO support to LLVM_BUILD_INSTRUMENTED (#79942)
Build on Clang-BOLT infrastructure to collect sample profile for CSSPGO.
Add CSSPGO.cmake and BOLT-CSSPGO.cmake to automate CSSPGO/+BOLT
Clang builds.
Note that `CLANG_PGO_TRAINING_DATA_SOURCE_DIR` is required as built-in
training set is inadequate for collecting sampled profile.
Hardware compatibility: CSSPGO requires synchronized (0-skid) call
and branch stacks, which is only available with Intel PEBS (Sandy
Bridge+),
AMD Zen3 with BRS, Zen4 with LBRv2+LBR_PMC_FREEZE, and Zen5 with LBRv2.
This patch adds support for Intel `br_inst_retired.near_taken:uppp`
event.
Test Plan:
Added BOLT-CSSPGO.cmake with same use as BOLT-PGO.cmake,
e.g. for bootstrapped ThinLTO+CSSPGO+BOLT, with CSSPGO profile collected
from LLVM build, and BOLT profile collected from Hello World
(instrumentation):
```
cmake -B clang-csspgo-bolt -S /path/to/llvm-project/llvm \
-DLLVM_ENABLE_LLD=ON -DBOOTSTRAP_LLVM_ENABLE_LLD=ON \
-DBOOTSTRAP_BOOTSTRAP_LLVM_ENABLE_LLD=ON \
-DPGO_INSTRUMENT_LTO=Thin \
-DBOOTSTRAP_CLANG_PGO_TRAINING_DATA_SOURCE_DIR=/path/to/llvm-project/llvm \
-GNinja -C /path/to/llvm-project/clang/cmake/caches/BOLT-CSSPGO.cmake
ninja stage2-clang-bolt
...
warning: Sample PGO is estimated to optimize better with 19.5x more samples. Please consider increasing sampling rate or profiling for longer duration to get more samples.
...
[2800/2801] Optimizing Clang with BOLT
BOLT-INFO: 8189 out of 106942 functions in the binary (7.7%) have non-empty execution profile
13776393 : taken branches (-42.1%)
```
Performance testing with Clang:
- Setup: Clang-BOLT testing harness
https://github.com/aaupov/llvm-devmtg-2022/commit/9f2b46f67a1930a51c58a0e4894637a8c64c570e
- CSSPGO training: building LLVM,
- InstrPGO training: building Hello World,
- BOLT training: building Hello World, instrumentation,
- benchmark: building small LLVM tool (not),
- 2S Intel SKX Xeon 6138 with 40C/80T and 256GB RAM, using 20C/40T for
build,
- Results, wall time, lower is better
- Baseline (bootstrapped build): 10.36s,
- InstrPGO + ThinLTO: 9.34s,
- CSSPGO + ThinLTO: 8.85s.
- BOLT results, for reference:
- Baseline: 9.09s,
- InstrPGO + ThinLTO: 9.09s,
- CSSPGO + ThinLTO: 8.58s.
---------
Co-authored-by: Matthias Braun <matze at braunis.de>
Commit: bdd98a01478ddcb99b05d9d2eb20bf4985a21683
https://github.com/llvm/llvm-project/commit/bdd98a01478ddcb99b05d9d2eb20bf4985a21683
Author: Jun Wang <jwang86 at yahoo.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/docs/AMDGPU/AMDGPUAsmGFX12.rst
A llvm/docs/AMDGPU/gfx12_addr.rst
A llvm/docs/AMDGPU/gfx12_attr.rst
A llvm/docs/AMDGPU/gfx12_clause.rst
A llvm/docs/AMDGPU/gfx12_data0_56f215.rst
A llvm/docs/AMDGPU/gfx12_data0_6802ce.rst
A llvm/docs/AMDGPU/gfx12_data0_e016a1.rst
A llvm/docs/AMDGPU/gfx12_data0_fd235e.rst
A llvm/docs/AMDGPU/gfx12_data1_6802ce.rst
A llvm/docs/AMDGPU/gfx12_data1_731030.rst
A llvm/docs/AMDGPU/gfx12_data1_e016a1.rst
A llvm/docs/AMDGPU/gfx12_data1_fd235e.rst
A llvm/docs/AMDGPU/gfx12_delay.rst
A llvm/docs/AMDGPU/gfx12_hwreg.rst
A llvm/docs/AMDGPU/gfx12_imm16.rst
A llvm/docs/AMDGPU/gfx12_ioffset.rst
A llvm/docs/AMDGPU/gfx12_label.rst
A llvm/docs/AMDGPU/gfx12_literal_1f74c7.rst
A llvm/docs/AMDGPU/gfx12_literal_81e671.rst
A llvm/docs/AMDGPU/gfx12_m.rst
A llvm/docs/AMDGPU/gfx12_rsrc_5fe6d8.rst
A llvm/docs/AMDGPU/gfx12_rsrc_c9f929.rst
A llvm/docs/AMDGPU/gfx12_saddr_cdc95c.rst
A llvm/docs/AMDGPU/gfx12_saddr_d42b64.rst
A llvm/docs/AMDGPU/gfx12_samp.rst
A llvm/docs/AMDGPU/gfx12_sbase_453b95.rst
A llvm/docs/AMDGPU/gfx12_sbase_47adb7.rst
A llvm/docs/AMDGPU/gfx12_sdata_0974a4.rst
A llvm/docs/AMDGPU/gfx12_sdata_354189.rst
A llvm/docs/AMDGPU/gfx12_sdata_4585b8.rst
A llvm/docs/AMDGPU/gfx12_sdata_5c7b50.rst
A llvm/docs/AMDGPU/gfx12_sdata_6c003b.rst
A llvm/docs/AMDGPU/gfx12_sdata_836716.rst
A llvm/docs/AMDGPU/gfx12_sdata_d725ab.rst
A llvm/docs/AMDGPU/gfx12_sdata_dd9dd8.rst
A llvm/docs/AMDGPU/gfx12_sdst_006c40.rst
A llvm/docs/AMDGPU/gfx12_sdst_20064d.rst
A llvm/docs/AMDGPU/gfx12_sdst_354189.rst
A llvm/docs/AMDGPU/gfx12_sdst_836716.rst
A llvm/docs/AMDGPU/gfx12_sdst_ced58d.rst
A llvm/docs/AMDGPU/gfx12_sdst_e701cc.rst
A llvm/docs/AMDGPU/gfx12_sendmsg.rst
A llvm/docs/AMDGPU/gfx12_sendmsg_rtn.rst
A llvm/docs/AMDGPU/gfx12_simm16_15ccdd.rst
A llvm/docs/AMDGPU/gfx12_simm16_218bea.rst
A llvm/docs/AMDGPU/gfx12_simm16_39b593.rst
A llvm/docs/AMDGPU/gfx12_simm16_3d2a4f.rst
A llvm/docs/AMDGPU/gfx12_simm16_730a13.rst
A llvm/docs/AMDGPU/gfx12_simm16_7ed651.rst
A llvm/docs/AMDGPU/gfx12_simm16_81e671.rst
A llvm/docs/AMDGPU/gfx12_simm16_c98889.rst
A llvm/docs/AMDGPU/gfx12_simm16_cc1716.rst
A llvm/docs/AMDGPU/gfx12_simm16_ee8b30.rst
A llvm/docs/AMDGPU/gfx12_soffset_8ec073.rst
A llvm/docs/AMDGPU/gfx12_soffset_c5b88c.rst
A llvm/docs/AMDGPU/gfx12_soffset_ec005a.rst
A llvm/docs/AMDGPU/gfx12_src0_5727cf.rst
A llvm/docs/AMDGPU/gfx12_src0_5cae62.rst
A llvm/docs/AMDGPU/gfx12_src0_6802ce.rst
A llvm/docs/AMDGPU/gfx12_src0_85aab6.rst
A llvm/docs/AMDGPU/gfx12_src0_c4593f.rst
A llvm/docs/AMDGPU/gfx12_src0_e016a1.rst
A llvm/docs/AMDGPU/gfx12_src0_fd235e.rst
A llvm/docs/AMDGPU/gfx12_src1_5727cf.rst
A llvm/docs/AMDGPU/gfx12_src1_5cae62.rst
A llvm/docs/AMDGPU/gfx12_src1_6802ce.rst
A llvm/docs/AMDGPU/gfx12_src1_731030.rst
A llvm/docs/AMDGPU/gfx12_src1_977794.rst
A llvm/docs/AMDGPU/gfx12_src1_c4593f.rst
A llvm/docs/AMDGPU/gfx12_src1_e016a1.rst
A llvm/docs/AMDGPU/gfx12_src1_fd235e.rst
A llvm/docs/AMDGPU/gfx12_src2_2797bc.rst
A llvm/docs/AMDGPU/gfx12_src2_5727cf.rst
A llvm/docs/AMDGPU/gfx12_src2_5cae62.rst
A llvm/docs/AMDGPU/gfx12_src2_6802ce.rst
A llvm/docs/AMDGPU/gfx12_src2_7b936a.rst
A llvm/docs/AMDGPU/gfx12_src2_96fbd3.rst
A llvm/docs/AMDGPU/gfx12_src2_c4593f.rst
A llvm/docs/AMDGPU/gfx12_src2_e016a1.rst
A llvm/docs/AMDGPU/gfx12_srcx0.rst
A llvm/docs/AMDGPU/gfx12_srcy0.rst
A llvm/docs/AMDGPU/gfx12_ssrc0_007f9c.rst
A llvm/docs/AMDGPU/gfx12_ssrc0_1a9ca5.rst
A llvm/docs/AMDGPU/gfx12_ssrc0_245536.rst
A llvm/docs/AMDGPU/gfx12_ssrc0_2797bc.rst
A llvm/docs/AMDGPU/gfx12_ssrc0_bbb4c6.rst
A llvm/docs/AMDGPU/gfx12_ssrc0_c4593f.rst
A llvm/docs/AMDGPU/gfx12_ssrc1_bbb4c6.rst
A llvm/docs/AMDGPU/gfx12_ssrc1_c4593f.rst
A llvm/docs/AMDGPU/gfx12_tgt.rst
A llvm/docs/AMDGPU/gfx12_vaddr_a972b9.rst
A llvm/docs/AMDGPU/gfx12_vaddr_c12f43.rst
A llvm/docs/AMDGPU/gfx12_vaddr_c8b8d4.rst
A llvm/docs/AMDGPU/gfx12_vaddr_d82160.rst
A llvm/docs/AMDGPU/gfx12_vaddr_f2b449.rst
A llvm/docs/AMDGPU/gfx12_vcc.rst
A llvm/docs/AMDGPU/gfx12_vdata_2eda77.rst
A llvm/docs/AMDGPU/gfx12_vdata_48e42f.rst
A llvm/docs/AMDGPU/gfx12_vdata_69a144.rst
A llvm/docs/AMDGPU/gfx12_vdata_89680f.rst
A llvm/docs/AMDGPU/gfx12_vdata_aac3e8.rst
A llvm/docs/AMDGPU/gfx12_vdata_bdb32f.rst
A llvm/docs/AMDGPU/gfx12_vdst_006c40.rst
A llvm/docs/AMDGPU/gfx12_vdst_227281.rst
A llvm/docs/AMDGPU/gfx12_vdst_2eda77.rst
A llvm/docs/AMDGPU/gfx12_vdst_47d3bc.rst
A llvm/docs/AMDGPU/gfx12_vdst_48e42f.rst
A llvm/docs/AMDGPU/gfx12_vdst_69a144.rst
A llvm/docs/AMDGPU/gfx12_vdst_7de8e7.rst
A llvm/docs/AMDGPU/gfx12_vdst_836716.rst
A llvm/docs/AMDGPU/gfx12_vdst_89680f.rst
A llvm/docs/AMDGPU/gfx12_vdst_bdb32f.rst
A llvm/docs/AMDGPU/gfx12_vdstx.rst
A llvm/docs/AMDGPU/gfx12_vdsty.rst
A llvm/docs/AMDGPU/gfx12_version.rst
A llvm/docs/AMDGPU/gfx12_vsrc0.rst
A llvm/docs/AMDGPU/gfx12_vsrc1_6802ce.rst
A llvm/docs/AMDGPU/gfx12_vsrc1_fd235e.rst
A llvm/docs/AMDGPU/gfx12_vsrc2.rst
A llvm/docs/AMDGPU/gfx12_vsrc3.rst
A llvm/docs/AMDGPU/gfx12_vsrc_56f215.rst
A llvm/docs/AMDGPU/gfx12_vsrc_6802ce.rst
A llvm/docs/AMDGPU/gfx12_vsrc_89fd7b.rst
A llvm/docs/AMDGPU/gfx12_vsrc_e016a1.rst
A llvm/docs/AMDGPU/gfx12_vsrc_fd235e.rst
A llvm/docs/AMDGPU/gfx12_vsrcx1.rst
A llvm/docs/AMDGPU/gfx12_vsrcy1.rst
A llvm/docs/AMDGPU/gfx12_waitcnt.rst
M llvm/docs/AMDGPUModifierSyntax.rst
M llvm/docs/AMDGPUOperandSyntax.rst
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[AMDGPU] Add documentation files for GFX12. (#157151)
This patch adds documentation files for GFX12.
Commit: 11a4b2d950baa4ddb31505b71a1736fa1f3242b6
https://github.com/llvm/llvm-project/commit/11a4b2d950baa4ddb31505b71a1736fa1f3242b6
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/TargetMachine.h
M llvm/lib/Analysis/CtxProfAnalysis.cpp
M llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
M llvm/lib/Analysis/MemoryProfileInfo.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Analysis/ProfileSummaryInfo.cpp
M llvm/lib/CGData/CodeGenData.cpp
M llvm/lib/CGData/CodeGenDataReader.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
M llvm/lib/CodeGen/MachineRegionInfo.cpp
M llvm/lib/CodeGen/RegAllocScore.cpp
M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/ProfileData/MemProfCommon.cpp
M llvm/lib/Target/TargetMachine.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Instrumentation/PGOMemOPSizeOpt.cpp
M llvm/lib/Transforms/Instrumentation/ValueProfilePlugins.inc
M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/tools/llvm-cgdata/llvm-cgdata.cpp
M llvm/unittests/Analysis/MemoryProfileInfoTest.cpp
M llvm/unittests/Analysis/ProfileSummaryInfoTest.cpp
M llvm/unittests/CodeGen/RegAllocScoreTest.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
Cleanup the LLVM exported symbols namespace (#161240)
There's a pattern throughout LLVM of cl::opts being exported. That in
itself is probably a bit unfortunate, but what's especially bad about it
is that a lot of those symbols are in the global namespace. Move them
into the llvm namespace.
While doing this, I noticed some other variables in the global namespace
and moved them as well.
Commit: b181c22c54bd8c3f6d8a3071661572c5782a7a30
https://github.com/llvm/llvm-project/commit/b181c22c54bd8c3f6d8a3071661572c5782a7a30
Author: Georgiy Samoylov <g.samoylov at syntacore.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/json/symbol-file/Makefile
Log Message:
-----------
[lldb][RISCV] Fixed TestSymbolFileJSON for RISC-V (#161497)
This test failed during testing on the RISC-V target because we couldn't
strip the main label from the binary. main is dynamically linked when
the -fPIC flag is enabled. The RISC-V ABI requires that executables
support loading at arbitrary addresses to enable shared libraries and
secure loading (ASLR). In PIC mode, function addresses cannot be
hardcoded in the code. Instead, code is generated to load addresses from
the GOT/PLT tables, which are initialized by the dynamic loader. The
reference to main thus ends up in .dynsym and is dynamically bound. We
cannot strip main or any other dynamically linked functions because
these functions are referenced indirectly via dynamic linking tables
(.plt and .got). Removing these symbols would break the dynamic linking
mechanism needed to resolve function addresses at runtime, causing the
executable to fail to correctly call them.
Commit: 9ba1121e3c200bd7935ced3f33d161a0f488609b
https://github.com/llvm/llvm-project/commit/9ba1121e3c200bd7935ced3f33d161a0f488609b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/utils/TableGen/RISCVVEmitter.cpp
Log Message:
-----------
[RISCV] Remove break after return in RISCVVEmitter.cpp. NFC (#161599)
Commit: aeffd3645aae854d0dabc8ed45168fb696e6ee39
https://github.com/llvm/llvm-project/commit/aeffd3645aae854d0dabc8ed45168fb696e6ee39
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
[Docs] Add CIR related meetings to GettingInvolved page (#157181)
Co-authored-by: Andy Kaylor <akaylor at nvidia.com>
Commit: 52b185075919a3d8ec9dc6b7d7da365e28532735
https://github.com/llvm/llvm-project/commit/52b185075919a3d8ec9dc6b7d7da365e28532735
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/test/Analysis/IR2Vec/Inputs/dummy_2D_vocab.json
M llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_arg_vocab.json
M llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_opc_vocab.json
M llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
M llvm/test/Analysis/IR2Vec/if-else.ll
M llvm/test/Analysis/IR2Vec/unreachable.ll
M llvm/test/tools/llvm-ir2vec/entities.ll
M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Add support for Cmp predicates in vocabulary and embeddings (#156952)
Comparison predicates (equal, not equal, greater than, etc.) provide important semantic information about program behavior. Previously, IR2Vec only captured that a comparison was happening but not what kind of comparison it was. This PR extends the IR2Vec vocabulary to include comparison predicates (ICmp and FCmp) as part of the embedding space.
Following are the changes:
1. Expand the vocabulary slot layout to include predicate entries after opcodes, types, and operands
2. Add methods to handle predicate embedding lookups and conversions
3. Update the embedder implementations to include predicate information when processing CmpInst instructions
4. Update test files to include the new predicate entries in the vocabulary
(Tracking issues: #141817, #141833)
Commit: 4fccaaef700b64db06b7438802ccc58c3bb5b970
https://github.com/llvm/llvm-project/commit/4fccaaef700b64db06b7438802ccc58c3bb5b970
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang-rt/lib/runtime/derived-api.cpp
Log Message:
-----------
[flang][runtime] fix intrinsics case of extends_type_of (#161466)
Fixes https://github.com/llvm/llvm-project/issues/155459 by making sure
the cases are considered in the right order. Previously intrinsics types
where overriding the pointer cases which have higher precedence in the
specification.
Also passes the following
[tests](https://github.com/llvm/llvm-test-suite/pull/287).
Commit: 4aaf6d1b8cc655f37a1a4ab8f7a7988dbef4eeae
https://github.com/llvm/llvm-project/commit/4aaf6d1b8cc655f37a1a4ab8f7a7988dbef4eeae
Author: Wu Yingcong <yingcong.wu at intel.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M libunwind/test/configs/cmake-bridge.cfg.in
M libunwind/test/eh_frame_fde_pc_range.pass.cpp
Log Message:
-----------
[libunwind][test] Add check for objcopy to improve test compatibility (#161112)
Previously, we only used `objcopy`, which is not available for some
build configurations. With this patch, we not only try to use `objcopy`,
but also try to use `llvm-objcopy` if available.
This is a follow-up of https://github.com/llvm/llvm-project/pull/156383.
Commit: ed1d9548b5c08142dab82bcfdd9875177d8223a5
https://github.com/llvm/llvm-project/commit/ed1d9548b5c08142dab82bcfdd9875177d8223a5
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/InlineAdvisor.cpp
M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
M llvm/unittests/Analysis/FunctionPropertiesAnalysisTest.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Refactor vocabulary to use section-based storage (#158376)
Refactored IR2Vec vocabulary and introduced IR (semantics) agnostic `VocabStorage`
- `Vocabulary` *has-a* `VocabStorage`
- `Vocabulary` deals with LLVM IR specific entities. This would help in efficient reuse of parts of the logic for MIR.
- Storage uses a section-based approach instead of a flat vector, improving organization and access patterns.
Commit: 5f0f4972c46707d46145f713c20a442bef8379d8
https://github.com/llvm/llvm-project/commit/5f0f4972c46707d46145f713c20a442bef8379d8
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libc/src/__support/macros/attributes.h
M libc/src/string/CMakeLists.txt
M libc/src/string/memory_utils/aarch64/inline_strlen.h
M libc/src/string/memory_utils/generic/inline_strlen.h
M libc/src/string/memory_utils/x86_64/inline_strlen.h
M libc/src/string/string_utils.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Unify and extend no_sanitize attributes for strlen. (#161316)
Fast strlen implementations (naive wide-reads, SIMD-based, and
x86_64/aarch64-optimized versions) all may perform
technically-out-of-bound reads, which leads to reports under ASan,
HWASan (on ARM machines), and also TSan (which also has the capability
to detect heap out-of-bound reads). So, we need to explicitly disable
instrumentation in all three cases.
Tragically, Clang didn't support `[[gnu::no_sanitize]]` syntax until
recently, and since we're supporting both GCC and Clang, we have to
revert to `__attribute__` syntax.
Commit: bdea159093ae2e4482dedb32bca5e03a212fc44f
https://github.com/llvm/llvm-project/commit/bdea159093ae2e4482dedb32bca5e03a212fc44f
Author: David Salinas <dsalinas at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Object/OffloadBundle.cpp
Log Message:
-----------
Revert "Revert "Fix memory leak in Offloading API" (#161465)" (#161573)
This reverts commit d392563433316e310edacf35a40fb2f9aa477acc.
Commit: 640644d68adbd2b5eaf8cd715237631057658059
https://github.com/llvm/llvm-project/commit/640644d68adbd2b5eaf8cd715237631057658059
Author: Gang Chen <gangc at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/AMDGPU/resource-usage-dead-function.ll
Log Message:
-----------
[AMDGPU] Move LowerBufferFatPointers after LoadStoreVectorizer and remove the fixme (#161531)
Move LowerBufferFatPointers pass after CodegenPrepare and
LoadStoreVectorizer pass, and remove the fixme about that.
Commit: 3f3a20f654f913f7e251e3bf4bd5a63e73e5571a
https://github.com/llvm/llvm-project/commit/3f3a20f654f913f7e251e3bf4bd5a63e73e5571a
Author: hjagasiaAMD <harsha.jagasia at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[PATCH] offload-tunnel-cmake with proper escape (#161552)
Co-authored-by: ronlieb <ron.lieberman at amd.com>
Commit: e37a9732e1d1b55347df1ad33cf941d22ed8ab9b
https://github.com/llvm/llvm-project/commit/e37a9732e1d1b55347df1ad33cf941d22ed8ab9b
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/JumpTableToSwitch.h
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
Log Message:
-----------
[JTS][NFC] Optimize guid fetching (#161612)
It's unnecessary to build the whole symtable, and on top of everything,
un-optimal to do so for every function. All we really need is the
instrumented PGO name - considering also LTO-ness - and then we can
compute the function name.
Commit: 8b9e208448009814b12200ae7c06ef760f957ac7
https://github.com/llvm/llvm-project/commit/8b9e208448009814b12200ae7c06ef760f957ac7
Author: Jim Lin <jim at andestech.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV] Add helper function getVecPolicyOpNum in RISCVInsertVSETVLI.cpp. NFC. (#161476)
Commit: 9f4b6375b4fc12d5ed9b4713ac70682825ec4b20
https://github.com/llvm/llvm-project/commit/9f4b6375b4fc12d5ed9b4713ac70682825ec4b20
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/lib/Core/Relocation.cpp
A bolt/test/AArch64/tls-desc-call.s
Log Message:
-----------
[BOLT][AArch64] Skip R_AARCH64_TLSDESC_CALL relocation (#161610)
R_AARCH64_TLSDESC_CALL is a relocation emitted as a hint for a linker to
replace `blr r` instruction with nop. BOLT does not currently require
any special handling for it.
Note that previously existing extraction of the relocated value was
incorrect.
Commit: a2330a398db398e33687a6bed71092a85312e481
https://github.com/llvm/llvm-project/commit/a2330a398db398e33687a6bed71092a85312e481
Author: Samarth Narang <70980689+snarang181 at users.noreply.github.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaChecking.cpp
M clang/test/AST/ByteCode/const-eval.c
M clang/test/Sema/const-eval.c
M clang/test/Sema/integer-overflow.c
M clang/test/Sema/unbounded-array-bounds.c
M clang/test/SemaCXX/array-bounds.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/integer-overflow.cpp
Log Message:
-----------
[Clang][Sema] Switch diagnostics from toString to operator<< for APSInt/APInt (#161474)
Commit: 2d0637494936be3742750ab95b856e3cb86d1198
https://github.com/llvm/llvm-project/commit/2d0637494936be3742750ab95b856e3cb86d1198
Author: Xiang Li <python3kgae at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/test/Dialect/Arith/canonicalize.mlir
Log Message:
-----------
[mlir][arith] Add mulf(x, 0) -> 0 to mulf folder (#161395)
Fold `mulf(x, 0) -> 0` when (nnan | nsz)
Commit: 129d5ce14c4fd094799b50e6ebe6c8f9ca5003f1
https://github.com/llvm/llvm-project/commit/129d5ce14c4fd094799b50e6ebe6c8f9ca5003f1
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVGISel.td
M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
M llvm/test/CodeGen/RISCV/GlobalISel/atomic-load-store.ll
Log Message:
-----------
[RISCV][GISel] Use LBU for anyext i8 atomic_load. (#161588)
This matches what we do for regular i8 extload due to the lack of c.lb
in Zbc.
This only affects global isel because SelectionDAG won't create an
anyext i8 atomic_load today.
Commit: ac0e99e19124ab720e8837d1500f0c000559a0ef
https://github.com/llvm/llvm-project/commit/ac0e99e19124ab720e8837d1500f0c000559a0ef
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[Analysis] Fix a warning
This patch fixes:
llvm/lib/Analysis/IR2Vec.cpp:289:14: error: unused variable
'allSameDim' [-Werror,-Wunused-variable]
Commit: c6e280e7ed9e120ba5e8c141bd5c4fd116d076a2
https://github.com/llvm/llvm-project/commit/c6e280e7ed9e120ba5e8c141bd5c4fd116d076a2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/llvm.round.f64.ll
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/peephole-opt-regseq-removal.mir
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/ARM/llvm.exp10.ll
M llvm/test/CodeGen/ARM/llvm.frexp.ll
M llvm/test/CodeGen/Mips/no-odd-spreg-msa.ll
M llvm/test/CodeGen/PowerPC/urem-vector-lkk.ll
M llvm/test/CodeGen/PowerPC/vec_conv_i64_to_fp32_elts.ll
M llvm/test/CodeGen/RISCV/rvv/expandload.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
M llvm/test/CodeGen/RISCV/rvv/nontemporal-vp-scalable.ll
M llvm/test/CodeGen/Thumb2/mve-soft-float-abi.ll
M llvm/test/CodeGen/Thumb2/mve-vld3.ll
Log Message:
-----------
PeepholeOpt: Fix losing subregister indexes on full copies (#161310)
Previously if we had a subregister extract reading from a
full copy, the no-subregister incoming copy would overwrite
the DefSubReg index of the folding context.
There's one ugly rvv regression, but it's a downstream
issue of this; an unnecessary same class reg-to-reg full copy
was avoided.
Commit: a88c83950be540f608587a4c68e0b0651e3b199b
https://github.com/llvm/llvm-project/commit/a88c83950be540f608587a4c68e0b0651e3b199b
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[LLVM] Volunteer myself and Usman Nadeem as DFAJumpThreading maintainers (#161491)
Both Usman Nadeem and I have constantly contributed to the
DFAJumpThreading pass so far. To push DFAJumpThreading forwards and make
it enabled by default, I volunteer myself and Usman Nadeem as
DFAJumpThreading maintainers.
Commit: fea2cca4d6364f66a5f663d95141c9cab53dbfd2
https://github.com/llvm/llvm-project/commit/fea2cca4d6364f66a5f663d95141c9cab53dbfd2
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir-c/IR.h
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/lib/CAPI/IR/IR.cpp
M mlir/test/python/ir/operation.py
Log Message:
-----------
[MLIR][Python] expose Operation::setLoc (#161594)
Commit: 9323fbbc4ebca57f7332ec84f7efc41eb88eca6e
https://github.com/llvm/llvm-project/commit/9323fbbc4ebca57f7332ec84f7efc41eb88eca6e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
Log Message:
-----------
RegisterCoalescer: Avoid return after else (#161622)
Commit: d39095b19357b35bda5e874d66343499985e91bf
https://github.com/llvm/llvm-project/commit/d39095b19357b35bda5e874d66343499985e91bf
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT] Remove unused parameter. NFC (#161617)
`Skip` parameter not used/set inside `analyzeRelocation()`.
Commit: bcc85f76700d3f0aebc14bf8b981476c94892ef8
https://github.com/llvm/llvm-project/commit/bcc85f76700d3f0aebc14bf8b981476c94892ef8
Author: Yixuan Cao <caoyixuan2019 at email.szu.edu.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/test/asan/TestCases/wcscat.cpp
M compiler-rt/test/asan/TestCases/wcscpy.cpp
M compiler-rt/test/asan/TestCases/wcsncat.cpp
M compiler-rt/test/asan/TestCases/wcsncpy.cpp
Log Message:
-----------
[compiler-rt][asan][tests] Stabilize wchar tests on Darwin/Android (#161624)
### Summary
Stabilize ASan wchar tests across Darwin and Android. NFC: test-only.
Follow-up to PR #160493 (adds wchar interceptors/tests).
### Motivation
- Darwin: The top frame often resolves to `libclang_rt.asan_*` rather
than a source file, so strict checks that include file/line can fail.
See Chromium issue
[448631142](https://g-issues.chromium.org/issues/448631142).
- Android: The “ERROR:” header can go to logcat instead of stderr, so
FileCheck may not see it; stdout/stderr reordering also makes pre-crash
markers racy. See Android Buildbot
[186/12821](https://lab.llvm.org/buildbot/#/builders/186/builds/12821).
### Changes
- Android:
- Force reports to stderr via `%env_asan_opts=log_to_stderr=1`, avoiding
the “ERROR:” header going to logcat.
- Print the pre-crash “Good so far.” to stderr and `fflush(stderr)` to
avoid stdout/stderr reordering.
- Darwin:
- Relax the stack-frame check to only require the function name
(`wcscpy/wcsncpy/wcscat/wcsncat`) to tolerate `libclang_rt.asan_*`
frames.
- Common:
- Reuse FileCheck var `[[ADDR]]` instead of redefining.
- Make wide string literals `const wchar_t*` to silence
`-Wwritable-strings`.
### Risk
- NFC: test-only; no change to runtime behavior.
### References
- Follow-up to PR #160493.
- Chromium: [448631142](https://g-issues.chromium.org/issues/448631142)
(Darwin failures).
- Android Buildbot:
[186/12821](https://lab.llvm.org/buildbot/#/builders/186/builds/12821).
Signed-off-by: Yixuan Cao <caoyixuan2019 at email.szu.edu.cn>
Commit: 17f6888d1771c9f61378a0a58725f3359277ddda
https://github.com/llvm/llvm-project/commit/17f6888d1771c9f61378a0a58725f3359277ddda
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ValueMap.h
Log Message:
-----------
[IR] clang-format ValueMap.h
I'm planning to modify this file.
Commit: eedfbbe986467b6d3b968f3af4ab7424af0303a7
https://github.com/llvm/llvm-project/commit/eedfbbe986467b6d3b968f3af4ab7424af0303a7
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
Log Message:
-----------
[AMDGPU] Update gfx1250 VOP1 tests to t16 syntax. NFC (#161603)
Commit: bd0f9db06ab5b4e62bd298834e933d9fac5105ed
https://github.com/llvm/llvm-project/commit/bd0f9db06ab5b4e62bd298834e933d9fac5105ed
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
Log Message:
-----------
[AMDGPU] Update gfx1250 vop3_from_vop1 tests to t16 syntax. NFC (#161609)
Commit: 912a92a8098a425c63be3cf3251f3cab68d229c4
https://github.com/llvm/llvm-project/commit/912a92a8098a425c63be3cf3251f3cab68d229c4
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp16.s
Log Message:
-----------
[AMDGPU] Update VOP3 gfx1250 tests to t16 syntax. NFC (#161611)
Commit: a4767e63eebfa1ae0065bdd8813df3839f62b461
https://github.com/llvm/llvm-project/commit/a4767e63eebfa1ae0065bdd8813df3839f62b461
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-ld1.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-smaxv.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-sminv.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-st1.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-st1_lane.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-st1_origins.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-tbl.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-umaxv.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-uminv.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vadd.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vaddv.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vcvt.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vmax.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vmovn.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vmul.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vshift.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_float.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/vararg.ll
M llvm/test/Instrumentation/MemorySanitizer/AArch64/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/ARM32/vararg-arm32.ll
M llvm/test/Instrumentation/MemorySanitizer/LoongArch/vararg-loongarch64.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64el.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips32/vararg-mips.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips32/vararg-mipsel.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64le.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC32/kernel-ppcle.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC32/vararg-ppc.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC32/vararg-ppcle.ll
M llvm/test/Instrumentation/MemorySanitizer/RISCV32/vararg-riscv32.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx10_2_512ni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx10_2ni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx2-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-gfni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512bw-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512bw-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-vl-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl_vnni-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl_vnni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vnni-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vnni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx_vnni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avxvnniint16-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avxvnniint8-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/f16c-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse2-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse41-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/vararg-too-large.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/vararg_call.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/x86-vpermi2.ll
M llvm/test/Instrumentation/MemorySanitizer/array_types.ll
M llvm/test/Instrumentation/MemorySanitizer/bmi.ll
M llvm/test/Instrumentation/MemorySanitizer/byval-alignment.ll
M llvm/test/Instrumentation/MemorySanitizer/byval.ll
M llvm/test/Instrumentation/MemorySanitizer/expand-experimental-reductions.ll
M llvm/test/Instrumentation/MemorySanitizer/funnel_shift.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx2-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/mmx-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/msan_i386intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse2-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse41-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/vararg-too-large.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/vararg_call.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/vararg_shadow.ll
M llvm/test/Instrumentation/MemorySanitizer/masked-store-load.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_debug_info.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_eager.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_kernel_basic.ll
M llvm/test/Instrumentation/MemorySanitizer/opaque-ptr.ll
M llvm/test/Instrumentation/MemorySanitizer/or.ll
M llvm/test/Instrumentation/MemorySanitizer/overflow.ll
M llvm/test/Instrumentation/MemorySanitizer/pr32842.ll
M llvm/test/Instrumentation/MemorySanitizer/saturating.ll
M llvm/test/Instrumentation/MemorySanitizer/scmp.ll
M llvm/test/Instrumentation/MemorySanitizer/ucmp.ll
M llvm/test/Instrumentation/MemorySanitizer/vector-reduce-fadd.ll
M llvm/test/Instrumentation/MemorySanitizer/vector-reduce-fmul.ll
M llvm/test/Instrumentation/MemorySanitizer/vector_arith.ll
M llvm/test/Instrumentation/MemorySanitizer/vscale.ll
Log Message:
-----------
[MemorySanitizer] Use getelementptr instead of ptrtoint+add+inttoptr (#161392)
MemorySanitizer currently does a lot of pointer arithmetic using
ptrtoint+add+inttoptr instead of using getelementptr. As far as I can
tell, there is no need to use this pattern -- msan is not trying to
synthesize pointers with different provenance here. The pointers in
question stay within one object (like the TLS parameter area).
I suspect that this is just a leftover from pre-opaque-pointer types
where this was a natural way to perform offset arithmetic. Nowadays we
should just emit a getelementptr i8, aka ptradd.
Commit: e5b8c24cc0d0d2ccf44e0c5e155fdfa4b2cf7720
https://github.com/llvm/llvm-project/commit/e5b8c24cc0d0d2ccf44e0c5e155fdfa4b2cf7720
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/AArch64/freeze.ll
Log Message:
-----------
[DAG] Add ComputeNumSignBits(FREEZE(X)) handling (#161507)
If X is known never under/poison then skip the freeze and return ComputeNumSignBits(X)
Commit: 662f56f4281cd42af98a3d809cc443ddce8ce5dd
https://github.com/llvm/llvm-project/commit/662f56f4281cd42af98a3d809cc443ddce8ce5dd
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/unittests/Optimizer/Builder/FIRBuilderTest.cpp
Log Message:
-----------
[flang] handle scalars in getDescriptorWithNewBaseAddress (#161515)
Follow up on #161347 to allow scalar fir.box/class reconstruction (at
least required for polymorphic types).
The assert in genDimInfoFromBox was rejecting scalars while there is no
functional reason for that (only assumed-rank are an issue there).
Commit: 0b0dcf856abd6435d94d3108fa1386eebccce5d6
https://github.com/llvm/llvm-project/commit/0b0dcf856abd6435d94d3108fa1386eebccce5d6
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M libcxx/docs/index.rst
M libcxx/test/std/language.support/support.exception/propagation/make_exception_ptr.objc.pass.mm
Log Message:
-----------
[libc++] Upgrade Xcode to 26.0 (#160097)
Commit: 5f5a84e8509d4f274bcd63e37225c23d97555094
https://github.com/llvm/llvm-project/commit/5f5a84e8509d4f274bcd63e37225c23d97555094
Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/unittests/StaticAnalyzer/CallEventTest.cpp
Log Message:
-----------
[clang][analyzer] Clear `ObjCMethodCall`'s cache between runs (#161327)
`lookupRuntimeDefinition` assumed that a process would handle only one
TU. This is not true for unit tests, for instance. Multiple snippets of
code get parsed, and their AST are unloaded each time.
Since the cache relies on pointers as keys, if the same address happens
to be reused between runs, the cache would return a stale pointer,
potentially causing a segmentation fault. This is not that unlikely if
the snippets are similar, which would trigger similar allocation
patterns.
CPP-4889
Commit: 66558d70dc11fd04ce908ac94424ed7c6bd9e35b
https://github.com/llvm/llvm-project/commit/66558d70dc11fd04ce908ac94424ed7c6bd9e35b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M libcxx/include/__algorithm/find.h
M libcxx/test/std/experimental/simd/simd.class/simd_unary.pass.cpp
M libcxx/utils/libcxx/test/params.py
Log Message:
-----------
[libc++] Fix <__algorithm/find.h> when using -flax-vector-conversions=none (#161362)
Commit: bf847a8b9d54643c457eaaad7f5dc60e6454cd2e
https://github.com/llvm/llvm-project/commit/bf847a8b9d54643c457eaaad7f5dc60e6454cd2e
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
M llvm/test/CodeGen/AMDGPU/infer-addrspace-flat-atomic.ll
M llvm/test/CodeGen/AMDGPU/lds-frame-extern.ll
M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-table.ll
M llvm/test/CodeGen/AMDGPU/match-perm-extract-vector-elt-bug.ll
M llvm/test/CodeGen/AMDGPU/memmove-var-size.ll
M llvm/test/CodeGen/AMDGPU/no-folding-imm-to-inst-with-fi.ll
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-mubuf.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-optimizations.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-undef-poison.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag.ll
M llvm/test/CodeGen/AMDGPU/store-weird-sizes.ll
Log Message:
-----------
[AMDGPU][SDAG] Enable ISD::PTRADD for 64-bit AS by default (#146076)
Also removes the command line option to control this feature.
There seem to be mainly two kinds of test changes:
- Some operands of addition instructions are swapped; that is to be expected
since PTRADD is not commutative.
- Improvements in code generation, probably because the legacy lowering enabled
some transformations that were sometimes harmful.
For SWDEV-516125.
Commit: 6e52e538cd6e7912058f73f244a45aeea153d05c
https://github.com/llvm/llvm-project/commit/6e52e538cd6e7912058f73f244a45aeea153d05c
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
Log Message:
-----------
[LAA] Test different-type-sizes in safe-dep-dist (#161244)
The isSafeDependenceDistance routine is guarded by a HasSameSize check
which can be removed, as the test demonstrates.
Commit: 031fb7414fd6edf20e0cd7f7783666313169a0d2
https://github.com/llvm/llvm-project/commit/031fb7414fd6edf20e0cd7f7783666313169a0d2
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/test/CodeGen/AArch64/pr161420.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4-lane-x4.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4.ll
Log Message:
-----------
[AArch64][SME] Preserve `Chain` when selecting multi-vector LUT4Is (#161494)
Previously, the `Chain` was dropped meaning LUTI4 nodes that only
differed in the chain operand would be incorrectly CSE'd.
Fixes: #161420
Commit: 8aa64edb34ec6b30e1e7d0dbcc86236a6290eb0c
https://github.com/llvm/llvm-project/commit/8aa64edb34ec6b30e1e7d0dbcc86236a6290eb0c
Author: Michael Klemm <michael.klemm at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Support/LangOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
A flang/test/Driver/fast-real-mod.f90
A flang/test/Lower/Intrinsics/fast-real-mod.f90
Log Message:
-----------
[Flang] Add -ffast-real-mod and direct code for MOD on REAL types (#160660)
This patch adds direct code-gen support for a faster MOD intrinsic for
REAL types. Flang has maintained and keeps maintaining a high-precision
implementation of the MOD intrinsic as part of the Fortran runtime. With
the -ffast-real-mod flag, users can opt to avoid calling into the
Fortran runtime, but instead trigger code-gen that produces faster code
by avoiding the runtime call, at the expense of potentially risking bit
cancelation by having the compiler use the MOD formula a specified by
ISO Fortran.
Commit: 20e0e80a540223194e06d5e593634f65e1ee0de8
https://github.com/llvm/llvm-project/commit/20e0e80a540223194e06d5e593634f65e1ee0de8
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
Log Message:
-----------
[AArch64] Combine PTEST_FIRST(PTRUE, CONCAT(A, B)) -> PTEST_FIRST(PTRUE, A) (#161384)
When the input to ptest_first is a vector concat and the mask is all active,
performPTestFirstCombine returns a ptest_first using the first operand
of the concat, looking through any reinterpret casts.
This allows optimizePTestInstr to later remove the ptest when the first
operand is a flag setting instruction such as whilelo.
Commit: 55803b8af1e4ddde1c0c43a9cd283133205c295d
https://github.com/llvm/llvm-project/commit/55803b8af1e4ddde1c0c43a9cd283133205c295d
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/comp.h
M libcxx/include/__functional/is_transparent.h
M libcxx/include/__functional/operations.h
M libcxx/include/__functional/ranges_operations.h
M libcxx/include/__tree
A libcxx/include/__type_traits/is_generic_transparent_comparator.h
A libcxx/include/__type_traits/make_transparent.h
M libcxx/include/map
M libcxx/include/module.modulemap.in
M libcxx/include/string
M libcxx/test/benchmarks/containers/associative/map.bench.cpp
M libcxx/test/benchmarks/containers/associative/unordered_map.bench.cpp
Log Message:
-----------
Reapply "[libc++] Avoid constructing additional objects when using map::at" (#160738) (#161485)
This reverts commit b86aaacf28b358b187071bc87075f1faa2d65c4e.
The issue in LLVM has been fixed now.
Commit: 04c01ff144a172230c053d73eb15831a4120db81
https://github.com/llvm/llvm-project/commit/04c01ff144a172230c053d73eb15831a4120db81
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 55803b8af1e4
Commit: eb803df5029d08321102d59ead4c61d03ddc8a7a
https://github.com/llvm/llvm-project/commit/eb803df5029d08321102d59ead4c61d03ddc8a7a
Author: Ryan Cowan <ryan.cowan at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/legalize-modf.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
A llvm/test/CodeGen/AArch64/GlobalISel/select-modf.mir
M llvm/test/CodeGen/AArch64/llvm.modf.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
Log Message:
-----------
[AArch64][GlobalISel] Add `G_FMODF` instruction (#160061)
This commit adds the intrinsic `G_FMODF` to GMIR & enables its
translation, legalization and instruction selection in AArch64.
Commit: 2cb530868ca1d6e66e950f4b247b0905ee95d7eb
https://github.com/llvm/llvm-project/commit/2cb530868ca1d6e66e950f4b247b0905ee95d7eb
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupSetCC.cpp
A llvm/test/DebugInfo/X86/x86fixupsetcc-debug-instr-num.mir
Log Message:
-----------
[DebugInfo][InstrRef] Copy instr-ref to replacement instrs in X86FixupSetCCPass (#159777)
...to preserve variable location coverage.
Fixes missing variable location coverage in #49818 reproducer
Commit: 3c391877c10b5fea24b4c44cb8631a15d4cb809c
https://github.com/llvm/llvm-project/commit/3c391877c10b5fea24b4c44cb8631a15d4cb809c
Author: Ruoyu Qiu <cabbaken at outlook.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/Object/ELF.h
M llvm/unittests/Object/ELFTest.cpp
Log Message:
-----------
[ELF]Add overflow check to ELF note iterator (#160451)
Add overflow check to ELF note iterator to handle large `p_filesz` or
`sh_size`, avoid accessing invalid memory.
---------
Signed-off-by: Ruoyu Qiu <cabbaken at outlook.com>
Commit: 7ccb5c08f0685d4787f12c3224a72f0650c5865e
https://github.com/llvm/llvm-project/commit/7ccb5c08f0685d4787f12c3224a72f0650c5865e
Author: Marco Elver <elver at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/Analysis/ThreadSafety.cpp
Log Message:
-----------
Thread Safety Analysis: Optimize LocalVariableMap's canonical reference computation (#161600)
We observed slowdowns in auto-generated million+ line C++ source files
due to recent fixes to LocalVariableMap.
Rather than recompute the canonical underlying non-reference
VarDefinition every time we need to perform variable definition
intersection at CFG merge points, pre-compute the canonical references
once on construction. Ensure to
maintain the invariant that if both the direct and canonical reference
are being invalidated, both become 0.
Reported-by: Bogdan Graur <bgraur at google.com>
Commit: 0db784ed3cc9b60b98a6de878ab5a940509a3d22
https://github.com/llvm/llvm-project/commit/0db784ed3cc9b60b98a6de878ab5a940509a3d22
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-else-after-return in TransformOps.cpp (NFC)
Commit: 2daa2f1538b7d0b4fa874ffc16940460da77767b
https://github.com/llvm/llvm-project/commit/2daa2f1538b7d0b4fa874ffc16940460da77767b
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
Log Message:
-----------
[Clang] Fix a crash when using ctad with a template template parameter. (#161488)
This fixes the crash reported in #130604.
It does not try to improve diagnostics or resolve CWG3003 (this will be
explored separately).
Fixes #130604
Commit: 2165aa4c9dc828f18fe792551ed42799e65e0507
https://github.com/llvm/llvm-project/commit/2165aa4c9dc828f18fe792551ed42799e65e0507
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/Error.h
Log Message:
-----------
[orc-rt] Tidy up some type_traits uses. NFC.
Commit: 7c4f188f27ee7c562c2aa11b2384fd0ef918be94
https://github.com/llvm/llvm-project/commit/7c4f188f27ee7c562c2aa11b2384fd0ef918be94
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-constant-ops.ll
Log Message:
-----------
[LV] Support multiplies by constants when forming scaled reductions. (#161092)
We can create partial reductions for multiplies with constants, if the
constant is small enough to be extended from source to destination type
w/o changing the value.
This only handles constant on the right side of a multiply, relying on
other passes to canonicalize the input.
Alive2 Proofs: https://alive2.llvm.org/ce/z/iWRMr6
PR: https://github.com/llvm/llvm-project/pull/161092
Commit: 6382bb5dda106a4bae0f0a17e88396036969784b
https://github.com/llvm/llvm-project/commit/6382bb5dda106a4bae0f0a17e88396036969784b
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/test/Shell/Expr/TestGlobalSymbolObjCConflict.c
Log Message:
-----------
[lldb][test] XFAIL TestGlobalSymbolObjCConflict.c on Windows
Failing with:
```
error: command failed with exit status: 1
executed command: 'c:\buildbot\as-builder-10\lldb-x86-64\build\bin\filecheck.exe' 'C:\buildbot\as-builder-10\lldb-x86-64\llvm-project\lldb\test\Shell\Expr\TestGlobalSymbolObjCConflict.c'
.---command stderr------------
| C:\buildbot\as-builder-10\lldb-x86-64\llvm-project\lldb\test\Shell\Expr\TestGlobalSymbolObjCConflict.c:30:11: error: CHECK: expected string not found in input
| // CHECK: (lldb) p OglobalVar
| ^
| <stdin>:1:1: note: scanning from here
| (lldb) command source -s 0 'C:/buildbot/as-builder-10/lldb-x86-64/build/tools/lldb\test\Shell\lit-lldb-init-quiet'
| ^
| <stdin>:4:1: note: possible intended match here
| (lldb) target create "C:\\buildbot\\as-builder-10\\lldb-x86-64\\build\\tools\\lldb\\test\\Shell\\Expr\\Output\\TestGlobalSymbolObjCConflict.c.tmp.out"
| ^
|
| Input file: <stdin>
| Check file: C:\buildbot\as-builder-10\lldb-x86-64\llvm-project\lldb\test\Shell\Expr\TestGlobalSymbolObjCConflict.c
|
| -dump-input=help explains the following input dump.
|
| Input was:
| <<<<<<
| 1: (lldb) command source -s 0 'C:/buildbot/as-builder-10/lldb-x86-64/build/tools/lldb\test\Shell\lit-lldb-init-quiet'
| check:30'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
| 2: Executing commands in 'C:\buildbot\as-builder-10\lldb-x86-64\build\tools\lldb\test\Shell\lit-lldb-init-quiet'.
| check:30'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| 3: (lldb) command source -C --silent-run true lit-lldb-init
| check:30'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| 4: (lldb) target create "C:\\buildbot\\as-builder-10\\lldb-x86-64\\build\\tools\\lldb\\test\\Shell\\Expr\\Output\\TestGlobalSymbolObjCConflict.c.tmp.out"
| check:30'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| check:30'1 ? possible intended match
| 5: Current executable set to 'C:\buildbot\as-builder-10\lldb-x86-64\build\tools\lldb\test\Shell\Expr\Output\TestGlobalSymbolObjCConflict.c.tmp.out' (x86_64).
| check:30'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| 6: (lldb) b 27
| check:30'0 ~~~~~~~~~~~~
| >>>>>>
`-----------------------------
error: command failed with exit status: 1
```
We probably need to use LLD here or something. But I don't have a Windows machine to test this on. So XFAILing for now.
Commit: 2eb63375912b5c6585c1fde2e49860d0d78d4fee
https://github.com/llvm/llvm-project/commit/2eb63375912b5c6585c1fde2e49860d0d78d4fee
Author: Lucie Choi <clucie at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizeImplicitBinding.cpp
M llvm/test/CodeGen/SPIRV/hlsl-resources/ImplicitBinding.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/UniqueImplicitBindingNumber.ll
Log Message:
-----------
[SPIR-V] Prevent adding duplicate binding instructions for implicit binding (#161299)
Prevent adding duplicate instructions for implicit bindings when they
are from the same resource. The fix is to store and check if the binding
number is already assigned for each `OrderId`.
Resolves https://github.com/llvm/llvm-project/issues/160716
Commit: f3f9e7b928c2fb3828498e328c83bac14a9b46fe
https://github.com/llvm/llvm-project/commit/f3f9e7b928c2fb3828498e328c83bac14a9b46fe
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/test/CIR/IR/alloca.cir
M clang/test/CIR/IR/array-ctor.cir
M clang/test/CIR/IR/array-dtor.cir
M clang/test/CIR/IR/array.cir
M clang/test/CIR/IR/atomic.cir
M clang/test/CIR/IR/binassign.cir
M clang/test/CIR/IR/bitfield_info.cir
M clang/test/CIR/IR/call.cir
M clang/test/CIR/IR/cast.cir
M clang/test/CIR/IR/cmp.cir
M clang/test/CIR/IR/complex.cir
M clang/test/CIR/IR/copy.cir
M clang/test/CIR/IR/func.cir
M clang/test/CIR/IR/global-init.cir
M clang/test/CIR/IR/global-var-linkage.cir
M clang/test/CIR/IR/global.cir
M clang/test/CIR/IR/label.cir
M clang/test/CIR/IR/module.cir
M clang/test/CIR/IR/stack-save-restore.cir
M clang/test/CIR/IR/struct.cir
M clang/test/CIR/IR/switch-flat.cir
M clang/test/CIR/IR/switch.cir
M clang/test/CIR/IR/ternary.cir
M clang/test/CIR/IR/throw.cir
M clang/test/CIR/IR/unary.cir
M clang/test/CIR/IR/vector.cir
M clang/test/CIR/IR/vtable-addrpt.cir
M clang/test/CIR/IR/vtable-attr.cir
M clang/test/CIR/IR/vtt-addrpoint.cir
Log Message:
-----------
[CIR] Make all opt tests verify roundtrip (#161439)
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1923
Commit: 8cf43aebc67b8e88fe54cfd3371fc3777205ec4a
https://github.com/llvm/llvm-project/commit/8cf43aebc67b8e88fe54cfd3371fc3777205ec4a
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/VE/VEISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve-load-store-legalisation.ll
M llvm/test/CodeGen/VE/Vector/vec_divrem.ll
Log Message:
-----------
[LLVM][CodeGen][SVE] Remove failure cases when widening vector load/store ops. (#160515)
When unable to widen a vector load/store we can replace the operation
with a masked variant. Support for extending loads largely came for free
hence its inclusion, but truncating stores require more work.
Fixes https://github.com/llvm/llvm-project/issues/159995
Commit: 39d0e41a5f3e13b127caea16988d7c69371de6cf
https://github.com/llvm/llvm-project/commit/39d0e41a5f3e13b127caea16988d7c69371de6cf
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
Log Message:
-----------
[NFC][Clang Improve performance of `DoMarkVarDeclReferenced` (#161648)
Address post commit feedback from #161231
Commit: dbf44c28234670361017429871286324ced1e5f3
https://github.com/llvm/llvm-project/commit/dbf44c28234670361017429871286324ced1e5f3
Author: David Green <david.green at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
Log Message:
-----------
[AArch64] Remove unused tablegen classes and code cleanup. NFC
Commit: 8dd2846fcf7b0ad254f3768149d28fe87af9b15d
https://github.com/llvm/llvm-project/commit/8dd2846fcf7b0ad254f3768149d28fe87af9b15d
Author: Marco Borgeaud <marco.borgeaud at sonarsource.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/test/Analysis/initializer.cpp
Log Message:
-----------
[analyzer] Harden RegionStoreManager::bindArray (#153177)
Fixes https://github.com/llvm/llvm-project/issues/147686 by handling
symbolic values similarly to bindStruct and handling constant values.
The latter is actually more of a workaround: bindArray should not have
to deal with such constants.
CPP-6688
Commit: 3537e8abfa067013f01b53259fb2cc854d587dee
https://github.com/llvm/llvm-project/commit/3537e8abfa067013f01b53259fb2cc854d587dee
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/test/CodeGen/SystemZ/fp-cmp-04.ll
M llvm/test/CodeGen/X86/fshl.ll
M llvm/test/CodeGen/X86/fshr.ll
Log Message:
-----------
RegAllocGreedy: Check if copied lanes are live in trySplitAroundHintReg (#160424)
For subregister copies, do a subregister live check instead of checking
the main range. Doesn't do much yet, the split analysis still does not
track live ranges.
Commit: 86ba1986a29478681ddc64af7d08fdff390b00e8
https://github.com/llvm/llvm-project/commit/86ba1986a29478681ddc64af7d08fdff390b00e8
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unordered_map-iterator/TestDataFormatterStdUnorderedMap.py
Log Message:
-----------
[lldb][test] Un-XFAIL TestDataFormatterStdUnorderedMap.py for older Clang versions
Fixed in https://github.com/llvm/llvm-project/pull/156033
Commit: 7e6d277d3bd10bacc121962637c3c646866e2ca3
https://github.com/llvm/llvm-project/commit/7e6d277d3bd10bacc121962637c3c646866e2ca3
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/test/API/lang/cpp/structured-binding/TestStructuredBinding.py
Log Message:
-----------
[lldb][test] TestStructuredBinding.py: adjust assertion to check for compatible compiler version
Requires a compiler with the changes in https://github.com/llvm/llvm-project/pull/122265
Commit: db39ef9d566529000a1edcd58108f2df7b323bf5
https://github.com/llvm/llvm-project/commit/db39ef9d566529000a1edcd58108f2df7b323bf5
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/Transforms/GVN/condprop.ll
Log Message:
-----------
[GVN] Add additional tests for inverted condition propagation (NFC)
Commit: 9583b399d85cacdfa0a41f798ab44abaa3981bbf
https://github.com/llvm/llvm-project/commit/9583b399d85cacdfa0a41f798ab44abaa3981bbf
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/docs/InternalsManual.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTConcept.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaConcept.h
M clang/include/clang/Sema/Template.h
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/AST/ast-dump-ctad-alias.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.id/p3.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/simple-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/type-requirement.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.atomic/constrant-satisfaction-conversions.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.normal/p1.cpp
M clang/test/CXX/temp/temp.param/p10-2a.cpp
M clang/test/SemaCXX/cxx23-assume.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
M clang/test/SemaCXX/cxx2c-template-template-param.cpp
M clang/test/SemaCXX/invalid-requirement-requires-expr.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
M clang/test/SemaTemplate/concepts-recovery-expr.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/instantiate-abbreviated-template.cpp
M clang/test/SemaTemplate/instantiate-expanded-type-constraint.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
M clang/test/SemaTemplate/instantiate-template-argument.cpp
M clang/test/SemaTemplate/pr52970.cpp
M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp
Log Message:
-----------
[Clang] Normalize constraints before checking for satisfaction (#141776)
In the standard, constraint satisfaction checking is done on the
normalized form of a constraint.
Clang instead substitutes on the non-normalized form, which causes us to
report substitution failures in template arguments or concept ids, which
is non-conforming but unavoidable without a parameter mapping
This patch normalizes before satisfaction checking. However, we preserve
concept-id nodes in the normalized form, solely for diagnostics
purposes.
This addresses #61811 and related concepts conformance bugs, ideally to
make the remaining implementation of concept template parameters easier
Fixes #135190
Fixes #61811
Co-authored-by: Younan Zhang <zyn7109 at gmail.com>
Commit: 99ce20624629921771de2674946bbb2f9707ca5a
https://github.com/llvm/llvm-project/commit/99ce20624629921771de2674946bbb2f9707ca5a
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/Error.h
M orc-rt/unittests/ErrorTest.cpp
Log Message:
-----------
[orc-rt] Add support for constructing Expected<Error> values. (#161656)
These will be used in upcoming RPC support patches where the outer
Expected value captures any RPC-infrastructure errors, and the inner
Error is returned from the romet call (i.e. the remote handler's return
type is Error).
Commit: 82b3057a5ec552d5e42bb595c8243e4fac0c70b4
https://github.com/llvm/llvm-project/commit/82b3057a5ec552d5e42bb595c8243e4fac0c70b4
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
Log Message:
-----------
[lldb][test] TestAbiTagStructors.py adjust test to account for older compiler versions
Skip tests that require `-gstructor-decl-linkage-names` on Clang
versions that don't support it.
Don't pass `-gno-structor-decl-linkage-names` on Clang versions where it
the flag didn't exist but it was the default behaviour of the compiler
anyway.
Commit: 0cb9d402f369723ef2c80c140a49145b99365450
https://github.com/llvm/llvm-project/commit/0cb9d402f369723ef2c80c140a49145b99365450
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M orc-rt/unittests/ErrorTest.cpp
Log Message:
-----------
[orc-rt] Fix typo in comment. NFC.
Commit: c2159f2d3a45e9309f1a6abd201812b6b00cdcb4
https://github.com/llvm/llvm-project/commit/c2159f2d3a45e9309f1a6abd201812b6b00cdcb4
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/CMakeLists.txt
Log Message:
-----------
[LLVM-Test] Fix a regression in test dependencies introduced by 0e14973 (#161623)
Add `UnitTests` as an explicit dependency for `check-llvm` and
`llvm-test-depends`. In
https://github.com/llvm/llvm-project/pull/161442, the intent was to
remove `UnitTests` as a dependency for the individual per-directory
`check-llvm-*` test suites created but not to drop it from `check-llvm`
or `llvm-test-depends`. This missing dependency will cause LLVM unit
tests to be not rebuilt and resulting in either `warning: test suite
'LLVM-Unit' contained no tests` or running stale running versions of the
unit tests when running `check-llvm`.
Commit: e7839eed6b9f48609f536f55b277eeb544d41c78
https://github.com/llvm/llvm-project/commit/e7839eed6b9f48609f536f55b277eeb544d41c78
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/limit-coalesce.mir
Log Message:
-----------
AMDGPU: Switch test to generated checks (#161658)
Commit: faf070f062ac7f3861092ab110982a613d7dfe1b
https://github.com/llvm/llvm-project/commit/faf070f062ac7f3861092ab110982a613d7dfe1b
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py
Log Message:
-----------
[lldb][test] TestExprDefinitionInDylib.py adjust test to account for older compiler versions
Skip tests that require `-gstructor-decl-linkage-names` on Clang versions that don't support it.
Don't pass `-gno-structor-decl-linkage-names` on Clang versions where it the flag didn't exist but it was the default behaviour of the compiler anyway.
Drive-by:
- We used to run `self.expect("Bar()")` which would always fail. So the `error=True` would be true even if we didn't pass the `-gno-structor-linkage-names`. So it wasn't testing the behaviour properly. This patch changes these to `self.expect("expr Bar()")`.
Commit: 2ece31bb9f31ea48f456bab339e63f38673c94e5
https://github.com/llvm/llvm-project/commit/2ece31bb9f31ea48f456bab339e63f38673c94e5
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M .clang-format
M clang/.clang-format
M llvm/.clang-format
M mlir/.clang-format
Log Message:
-----------
Enforce Unix line endings for Clang/LLVM/MLIR projects (#161460)
Change top-level and LLVM/MLIR/Clang `.clang-format` files to enforce
Unix line ending.
Commit: 119cdf7e1b70493148daa9f51d88d6595a680dc0
https://github.com/llvm/llvm-project/commit/119cdf7e1b70493148daa9f51d88d6595a680dc0
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
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-array-recipes-int.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
Log Message:
-----------
[OpenACC][CIR] Finish 'private' recipe lowering by doing 'init' (#161540)
Private only does 'init' when a constructor needs to be called, so this
patch adds that. The logic of what to init is caused by Sema, but the
tests show that types that are pointers or non-class-types or class
types without a constructor aren't actually initialized.
Commit: 1c1d525bf2535d3ce8ba28179a1b577215fe5e1c
https://github.com/llvm/llvm-project/commit/1c1d525bf2535d3ce8ba28179a1b577215fe5e1c
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/cli-canonical_loop.mlir
M mlir/test/Dialect/OpenMP/cli-unroll-heuristic.mlir
Log Message:
-----------
[mlir][omp] Improve canonloop/iv naming (#159773)
Improve the automatic naming of variables defined by the
`omp.canonical_loop` operation:
1. The iteration variable gets a name consistent with the cli variable
2. Instead of appending `_s0` for each nesting level, shorten it to
`_d<num>` for a perfectly nested loop at depth `<num>`
3. Do not add any suffix to the top-level loop if it is the only
top-level loop
Commit: e48fe7627732162683245f712eb84d1155ffcd58
https://github.com/llvm/llvm-project/commit/e48fe7627732162683245f712eb84d1155ffcd58
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Log Message:
-----------
[InstCombine] Remove foldSelectWithFrozenICmp() fold (#161659)
After https://github.com/llvm/llvm-project/pull/154336 this fold no
longer triggers, as the freeze will be pushed through to the icmp
operands, and generic handling will take care of it.
Commit: c4e1bca407f4cca7644937c117890fad157fec4b
https://github.com/llvm/llvm-project/commit/c4e1bca407f4cca7644937c117890fad157fec4b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
Log Message:
-----------
Greedy: Move physreg check when trying to recolor vregs (NFC) (#160484)
Instead of checking if the recoloring candidate is a virtual register,
avoid adding it to the candidates in the first place.
Commit: 9f5abd38dd1782a6fd3b8ed1c2f76aa62dc850b1
https://github.com/llvm/llvm-project/commit/9f5abd38dd1782a6fd3b8ed1c2f76aa62dc850b1
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MIRYamlMapping.h
M llvm/include/llvm/CodeGen/MachineFrameInfo.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-declare.mir
M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-value.mir
M llvm/test/CodeGen/AArch64/framelayout-sve.mir
M llvm/test/CodeGen/AArch64/spillfill-sve.mir
M llvm/test/CodeGen/AArch64/sve-calling-convention-byref.ll
Log Message:
-----------
[Codegen] Add a separate stack ID for scalable predicates (#142390)
This splits out "ScalablePredicateVector" from the "ScalableVector"
StackID this is primarily to allow easy differentiation between vectors
and predicates (without inspecting instructions).
This new stack ID is not used in many places yet, but will be used in a
later patch to mark stack slots that are known to contain predicates.
Co-authored-by: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Commit: 047f8c8ee08e6efc51c552b910a6fbec2baca189
https://github.com/llvm/llvm-project/commit/047f8c8ee08e6efc51c552b910a6fbec2baca189
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/docs/InternalsManual.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTConcept.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaConcept.h
M clang/include/clang/Sema/Template.h
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/AST/ast-dump-ctad-alias.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.id/p3.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/simple-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/type-requirement.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.atomic/constrant-satisfaction-conversions.cpp
M clang/test/CXX/temp/temp.constr/temp.constr.normal/p1.cpp
M clang/test/CXX/temp/temp.param/p10-2a.cpp
M clang/test/SemaCXX/cxx23-assume.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
M clang/test/SemaCXX/cxx2c-template-template-param.cpp
M clang/test/SemaCXX/invalid-requirement-requires-expr.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
M clang/test/SemaTemplate/concepts-recovery-expr.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/deduction-guide.cpp
M clang/test/SemaTemplate/instantiate-abbreviated-template.cpp
M clang/test/SemaTemplate/instantiate-expanded-type-constraint.cpp
M clang/test/SemaTemplate/instantiate-requires-expr.cpp
M clang/test/SemaTemplate/instantiate-template-argument.cpp
M clang/test/SemaTemplate/pr52970.cpp
M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp
Log Message:
-----------
Revert "[Clang] Normalize constraints before checking for satisfaction" (#161669)
Reverts llvm/llvm-project#141776
CI failures
https://lab.llvm.org/buildbot/#/builders/202/builds/3591
https://lab.llvm.org/buildbot/#/builders/55/builds/18066
https://lab.llvm.org/buildbot/#/builders/85/builds/14103
Commit: 706b79002e21b571888db7f275bf5ed00e7cce41
https://github.com/llvm/llvm-project/commit/706b79002e21b571888db7f275bf5ed00e7cce41
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
Log Message:
-----------
Greedy: Merge VirtRegMap queries into one use (NFC) (#160485)
Commit: b147019f8b11cd491f331bd707f764786792665e
https://github.com/llvm/llvm-project/commit/b147019f8b11cd491f331bd707f764786792665e
Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseDecl.cpp
A clang/test/Parser/recovery-after-expected-unqualified-id.cpp
Log Message:
-----------
[clang] Preserve `externs` following broken declarations (#161641)
Treat them as namespaces: if they are at the beginning of the line, they
are likely a good recovery point.
For instance, in
```cpp
1.3.0
extern "C" {
extern int foo();
extern "C++" {
namespace bar {
void baz();
};
}
}
namespace {}
```
Everything until `namespace`... is gone from the AST. Headers (like
libc's C++ `math.h`) can be included from an `extern "C"` context, and
they do an `extern "C++"` back again before including C++ headers (like
`__type_traits`).
However, a malformed declaration just before the include (as the orphan
`1.3.0` in the example) causes everything from these standard headers to
go missing. This patch updates the heuristic to try to recover from the
first `extern` keyword seen, pretty much as it is done for `namespace`.
CPP-4478
Commit: b92ff6b2099fa5103a0350028c6752ad953b9b8d
https://github.com/llvm/llvm-project/commit/b92ff6b2099fa5103a0350028c6752ad953b9b8d
Author: ravil-mobile <ravil.aviva.com at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[ROCDL] Added `rocdl.cvt.scale.pk8` ops (#161411)
This patch introduces some missing FP conversion instructions in the
ROCDL dialect
Specifically:
- Downscaling 8x packed F16, Bf16, Fp32 values to Fp8, Bf8, Fp4
Tests:
- Added lit-tests to check MLIR -> LLVM lowering
Commit: f98735f1264c9214a2efa2b05d48871e44cfd245
https://github.com/llvm/llvm-project/commit/f98735f1264c9214a2efa2b05d48871e44cfd245
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
Log Message:
-----------
Greedy: Use initializer list for recoloring candidates (NFC) (#160486)
Commit: 11b0cf8fbeaf8b2384f3ab4d7f6fe97bc7d3db63
https://github.com/llvm/llvm-project/commit/11b0cf8fbeaf8b2384f3ab4d7f6fe97bc7d3db63
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/test/CodeGen/X86/shift-i128.ll
Log Message:
-----------
Greedy: Take hints from copy to physical subreg (#160467)
Previously this took hints from subregister extract of physreg,
like %vreg.sub = COPY $physreg
This now also handles the rarer case:
$physreg_sub = COPY %vreg
Also make an accidental bug here before explicit; this was
only using the superregister as a hint if it was already
in the copy, and not if using the existing assignment. There are
a handful of regressions in that case, so leave that extension
for a future change.
Commit: daa4e57ccf38ff6ac22243e98a035c87b9f9f3ae
https://github.com/llvm/llvm-project/commit/daa4e57ccf38ff6ac22243e98a035c87b9f9f3ae
Author: Ikhlas Ajbar <iajbar at quicinc.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
A llvm/test/CodeGen/Hexagon/unaligned-vec-store.ll
Log Message:
-----------
[Hexagon] Add opcode V6_vS32Ub_npred_ai for offset validity check (#161618)
Check for a valid offset for unaligned vector store V6_vS32Ub_npred_ai.
isValidOffset() is updated to evaluate offset of this instruction.
Fixes #160647
Commit: c242aff2452fb662a7ea23954abe654b51182b8e
https://github.com/llvm/llvm-project/commit/c242aff2452fb662a7ea23954abe654b51182b8e
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M flang/include/flang/Lower/OpenACC.h
M flang/include/flang/Lower/SymbolMap.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/SymbolMap.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Lower/OpenACC/acc-host-data-cuda-device.f90
Log Message:
-----------
[flang][cuda][openacc] Create new symbol in host_data region for CUDA Fortran interop (#161613)
Commit: 197e77b33d344c162b8c87de8aa7ddd942f50874
https://github.com/llvm/llvm-project/commit/197e77b33d344c162b8c87de8aa7ddd942f50874
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/sbb.ll
Log Message:
-----------
[X86] Create special case for (a-b) - (a<b) -> sbb a, b (#161388)
Commit: a3594cd6442ee988c18249d96b8331f0a5331df7
https://github.com/llvm/llvm-project/commit/a3594cd6442ee988c18249d96b8331f0a5331df7
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/lib/Bindings/Python/IRModule.h
M mlir/lib/Bindings/Python/IRTypes.cpp
M mlir/lib/Bindings/Python/MainModule.cpp
Log Message:
-----------
[MLIR][Python] fixup Context and Location stubs and NanobindAdaptors (#161433)
add correct names for `NB_TYPE_CASTER(..., name)` so users of
`NanobindAdaptors.h` can generate the correct hints. Also fix a few
straggler stubs.
Commit: 32d03f3991bb03e976a25a3fa311f9a4e172dc5e
https://github.com/llvm/llvm-project/commit/32d03f3991bb03e976a25a3fa311f9a4e172dc5e
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/SemaCXX/cxx98-compat.cpp
Log Message:
-----------
[Clang][Sema] Fix crash in CheckUsingDeclQualifier due to diagnostic missing an argument (#161277)
Crash report came in and it was pretty obvious the diagnostic line was
just missing an argument. I supplied the argument and added a test.
Fixes: https://github.com/llvm/llvm-project/issues/161072
Commit: 6632b2f377674864bd4bc05278bf90805d30665a
https://github.com/llvm/llvm-project/commit/6632b2f377674864bd4bc05278bf90805d30665a
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/test/DebugInfo/AArch64/asan-stack-vars.mir
M llvm/test/DebugInfo/AArch64/compiler-gen-bbs-livedebugvalues.mir
Log Message:
-----------
[AArch64] Prepare for split ZPR and PPR area allocation (NFCI) (#142391)
This patch attempts to refactor AArch64FrameLowering to allow the size
of the ZPR and PPR areas to be calculated separately. This will be used
by a subsequent patch to support allocating ZPRs and PPRs to separate
areas. This patch should be an NFC and is split out to make later
functional changes easier to spot.
Co-authored-by: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Commit: f646d766de4e7978feeced765b414dc7f905c5f1
https://github.com/llvm/llvm-project/commit/f646d766de4e7978feeced765b414dc7f905c5f1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/first-order-recurrence-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/reduction-order.ll
Log Message:
-----------
[LV] Extend test coverage for tail-folding with recurrences.
Add additional test coverage for tail-folding loops with first-order
recurrences and users outside the loop. Test a combination of
vectorization factors and interleave counts.
Also update check lines in reduction-order.ll and adjust naming for
clarity.
This adds extra test coverage for
https://github.com/llvm/llvm-project/pull/149042.
Commit: e3e0f69fca744f357d45c04d06038f6b566a0b90
https://github.com/llvm/llvm-project/commit/e3e0f69fca744f357d45c04d06038f6b566a0b90
Author: Jinsong Ji <jinsong.ji at intel.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
Log Message:
-----------
[NFC][clang-sycl-linker] Avoid ambiguous call to CallingConv (#161682)
both llvm and clang namespace have CallingConv.
Add namespace prefix to avoid ambiguous call .
Commit: 235cd75c1429ad51cc3ad9728ccd8ffdc10742e3
https://github.com/llvm/llvm-project/commit/235cd75c1429ad51cc3ad9728ccd8ffdc10742e3
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.quadmask.ll
Log Message:
-----------
[AMDGPU] s_quadmask* implicitly defines SCC (#161582)
Fix s_quadmask* instruction description so that it defines SCC.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: 5bbf72400cfeb8f4e205e9ff1c98d34d2997796c
https://github.com/llvm/llvm-project/commit/5bbf72400cfeb8f4e205e9ff1c98d34d2997796c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/test/CodeGen/X86/avx512ifma-builtins.c
M clang/test/CodeGen/X86/avx512ifmavl-builtins.c
M clang/test/CodeGen/X86/avxifma-builtins.c
Log Message:
-----------
[X86] Add bytecode / -fexperimental-new-constant-interpreter VPMADD52 intrinsics test coverage (#161684)
Inspired by test problems encountered on #161056
Commit: afb262855e755b499a733c2b84b6a1cb789b3b1f
https://github.com/llvm/llvm-project/commit/afb262855e755b499a733c2b84b6a1cb789b3b1f
Author: Joel E. Denny <jdenny.ornl at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
A llvm/test/Transforms/LoopUnroll/peel-branch-weights-freq.ll
M llvm/test/Transforms/LoopUnroll/peel-branch-weights.ll
M llvm/test/Transforms/LoopUnroll/peel-loop-pgo-deopt.ll
M llvm/test/Transforms/LoopUnroll/peel-loop-pgo.ll
M llvm/test/Transforms/LoopUnroll/scev-invalidation-lcssa.ll
Log Message:
-----------
[LoopPeel] Fix branch weights' effect on block frequencies (#128785)
[LoopPeel] Fix branch weights' effect on block frequencies
This patch implements the LoopPeel changes discussed in [[RFC] Fix Loop
Transformations to Preserve Block
Frequencies](https://discourse.llvm.org/t/rfc-fix-loop-transformations-to-preserve-block-frequencies/85785).
In summary, a loop's latch block can have branch weight metadata that
encodes an estimated trip count that is derived from application profile
data. Initially, the loop body's block frequencies agree with the
estimated trip count, as expected. However, sometimes loop
transformations adjust those branch weights in a way that correctly
maintains the estimated trip count but that corrupts the block
frequencies. This patch addresses that problem in LoopPeel, which it
changes to:
- Maintain branch weights consistently with the original loop for the
sake of preserving the total frequency of the original loop body.
- Store the new estimated trip count in the
`llvm.loop.estimated_trip_count` metadata, introduced by PR #148758.
Commit: ed12dc5e306c6d062c71e89f47756e771792f4fb
https://github.com/llvm/llvm-project/commit/ed12dc5e306c6d062c71e89f47756e771792f4fb
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
M flang/test/Lower/OpenMP/declare-mapper.f90
A offload/test/offloading/fortran/target-declare-mapper-parent-allocatable.f90
Log Message:
-----------
[Flang][OpenMP] Implicitly map nested allocatable components in derived types (#160766)
This PR adds support for nested derived types and their mappers to the
MapInfoFinalization pass.
- Generalize MapInfoFinalization to add child maps for arbitrarily
nested allocatables when a derived object is mapped via declare mapper.
- Traverse HLFIR designates rooted at the target block arg and build
full coordinate_of chains; append members with correct membersIndex.
This fixes #156461.
Commit: 5ed678a1d9b428780744098078dc52387b1e7a79
https://github.com/llvm/llvm-project/commit/5ed678a1d9b428780744098078dc52387b1e7a79
Author: Fred Tingaud <95592999+frederic-tingaud-sonarsource at users.noreply.github.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/Analysis/CFG.h
M clang/lib/Analysis/CFG.cpp
M clang/unittests/Analysis/CFGTest.cpp
Log Message:
-----------
[CFG] Add a BuildOption to consider default branch of switch on covered enumerations (#161345)
By default, the `default:` branch (or the successor if there is no
`default` and cases return) of a switch on fully covered enumerations is
considered as "Unreachable". It is a sane assumption in most cases, but
not always. That commit allows to change such behavior when needed.
Commit: 407ecfe6a3278968519628956484b546621ff545
https://github.com/llvm/llvm-project/commit/407ecfe6a3278968519628956484b546621ff545
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
Log Message:
-----------
[CIR][NFC] Cleanup MissingFeature asserts in RecordLayoutBuilder (#161605)
This change cleans up some cir::MissingFeature asserts in
CIRGenRecordLayoutBuilder.cpp. In a couple of cases the asserts were
stale markers that we failed to remove when the correspond support was
implemented.
In one case, a cir::MissingFeature::bitfields() assert was ambiguous in
meaning and has been replaced by a comment and something more specific.
The missing feature in this case is just a bit of debug code to verify
certain bitfield-related conditions. This check should be added, but it
is not functionally required.
Commit: 3c8c500a191e81044beeb6ec566f6aebd202c3c3
https://github.com/llvm/llvm-project/commit/3c8c500a191e81044beeb6ec566f6aebd202c3c3
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/source/API/SBTarget.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
Log Message:
-----------
[LLDB][NFC] Fix variable casing issue (#161691)
Fixes some casing mistakes I added in #161581
Commit: c2ef022aa7413ddc9aba48fa6fbe6fbd0cb14e19
https://github.com/llvm/llvm-project/commit/c2ef022aa7413ddc9aba48fa6fbe6fbd0cb14e19
Author: Tom Tromey <tromey at adacore.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/test/DebugInfo/X86/dynamic-bitfield.ll
Log Message:
-----------
Omit member size from DWARF when desired (#161423)
Commit: 18997b5a8fafe3b176529b83700d00d5b5876335
https://github.com/llvm/llvm-project/commit/18997b5a8fafe3b176529b83700d00d5b5876335
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Support/APFloat.cpp
M llvm/unittests/ADT/APFloatTest.cpp
Log Message:
-----------
[ADT] Fix a bug in DoubleAPFloat::frexp (#161625)
Without this patch, we call APFloat::makeQuiet() in frexp like so:
Quiet.getFirst().makeQuiet();
The problem is that makeQuiet returns a new value instead of modifying
"*this" in place, so we end up discarding the newly returned value.
This patch fixes the problem by assigning the result back to
Quiet.getFirst().
We should put [[nodiscard]] on APFloat::makeQuiet, but I'll do that in
another patch.
Commit: b43648818768620b615ee06517d58b6fc5d39583
https://github.com/llvm/llvm-project/commit/b43648818768620b615ee06517d58b6fc5d39583
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/BitVector.h
Log Message:
-----------
[ADT] Use a C++17 fold expression in BitVector.h (NFC) (#161626)
This patch simplifies the assertion by replacing the std::all_of check
with a more direct C++17 fold expression.
Commit: 0dd8f322c1b40bdac469eec248e3b2b4e1043754
https://github.com/llvm/llvm-project/commit/0dd8f322c1b40bdac469eec248e3b2b4e1043754
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/ConcurrentHashtable.h
Log Message:
-----------
[ADT] Use structured bindings (NFC) (#161627)
Both Size and Count are just integers, so I am not using & here.
Commit: 7eb5c08ac3a5bc524a5fe4e2e91db3a5b1ffe3cd
https://github.com/llvm/llvm-project/commit/7eb5c08ac3a5bc524a5fe4e2e91db3a5b1ffe3cd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/DirectedGraph.h
Log Message:
-----------
[ADT] Use "= default" in DirectedGraph.h (#161628)
This patch drops user copy/move constructors and assignment operators
of DirectedGraph to adhere to the Rule of Zero.
Now, the original code:
DGraphType &operator=(const DGraphType &&G)
is most likely unintended -- a move assignment operator with const
r-value reference. This patch fixes that.
Commit: c0a2bead5b471497c42966a73548f7690de2f301
https://github.com/llvm/llvm-project/commit/c0a2bead5b471497c42966a73548f7690de2f301
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/docs/TableGen/ProgRef.rst
Log Message:
-----------
[llvm] Proofread TableGen/ProgRef.rst (#161629)
Commit: 25126117b5781e96453e5c5b1a9a6a6f8aa3989c
https://github.com/llvm/llvm-project/commit/25126117b5781e96453e5c5b1a9a6a6f8aa3989c
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/remat.ll
Log Message:
-----------
[RegAlloc] Add coverage leading to revert of pr160765 (#161614)
Essentially what happened is the following series of events:
1) We rematerialized the vmv.v.x into the loop.
2) As this was the last use of the instruction, we deleted the
instruction, and removed it from the original live range.
3) We split the live range for the remat.
4) We tried to rematerialize the uses of that split interval, and
crashed because the assert about the def being available in
the original live interval does not hold.
Commit: e394df39c63152d9ba6f81262d8a9eb82e7c7814
https://github.com/llvm/llvm-project/commit/e394df39c63152d9ba6f81262d8a9eb82e7c7814
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
Log Message:
-----------
[NFC] Rename members in AutoVarEmission (#161668)
It was brought up by Andy in a different review that AutoVarEmission's
member variables didn't follow our naming standard. This patch corrects
that and fixes all references.
Commit: 758fd7a0279021d51492848b30c0c5faf5f90cfe
https://github.com/llvm/llvm-project/commit/758fd7a0279021d51492848b30c0c5faf5f90cfe
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
Log Message:
-----------
[AArch64][SME] Reshuffle emit[prologue|epilogue]() for splitSVEObjects (NFCI) (#161217)
Requested in
https://github.com/llvm/llvm-project/pull/142392#discussion_r2207880079
Commit: 419594230f952a37dd2751056f3b92b0a9f80dee
https://github.com/llvm/llvm-project/commit/419594230f952a37dd2751056f3b92b0a9f80dee
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
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/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Dialect/OpenMP/cli-tile.mlir
A mlir/test/Dialect/OpenMP/invalid-tile.mlir
A mlir/test/Target/LLVMIR/openmp-cli-tile01.mlir
A mlir/test/Target/LLVMIR/openmp-cli-tile02.mlir
M mlir/test/mlir-tblgen/op-format-invalid.td
M mlir/test/mlir-tblgen/op-format-spec.td
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
M mlir/tools/mlir-tblgen/FormatGen.cpp
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
Log Message:
-----------
[mlir][omp] Add omp.tile operation (#160292)
Add the `omp.tile` loop transformations for the OpenMP dialect. Used for
lowering a standalone `!$omp tile` in Flang.
Commit: 5843ffb14940920f72516dfe18ed657bee23d1c5
https://github.com/llvm/llvm-project/commit/5843ffb14940920f72516dfe18ed657bee23d1c5
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Improve code using m_One (NFC) (#161686)
Commit: d68f0c2e1c1fafea983f92233e8ef9bcfe2a410a
https://github.com/llvm/llvm-project/commit/d68f0c2e1c1fafea983f92233e8ef9bcfe2a410a
Author: Andrew Ng <andrew.ng at sony.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/Options.td
M lld/ELF/Driver.cpp
M lld/ELF/Options.td
Log Message:
-----------
[DTLTO][LLD] Tidy up DTLTO related options (NFC) (#161675)
Change LLD DTLTO option definitions to match actual option name.
Commit: 6bfa56a29aeeb70af0039cbba25cfc7d7b2a5f6a
https://github.com/llvm/llvm-project/commit/6bfa56a29aeeb70af0039cbba25cfc7d7b2a5f6a
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/DWARF/LowLevel/DWARFDataExtractorSimple.h
Log Message:
-----------
[NFC][DwarfLowLevel] Make getRelocatedValueImpl public (#160618)
Without this, the class is useless.
Commit: c4709823bb82cb4b6ca2675ef69b1a0e02e3f58e
https://github.com/llvm/llvm-project/commit/c4709823bb82cb4b6ca2675ef69b1a0e02e3f58e
Author: Michael Jones <michaelrj at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M libc/fuzzing/stdlib/strtointeger_differential_fuzz.cpp
Log Message:
-----------
[libc] Fix issue with fuzz input too short for atoi diff fuzz (#161705)
The string to integer differential fuzzer assumes at least one byte of
meaningful input, but wasn't explicitly checking that. Now it does.
Commit: 0b7129afccc8e79fb88bb686466211f3bcad142e
https://github.com/llvm/llvm-project/commit/0b7129afccc8e79fb88bb686466211f3bcad142e
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-03 (Fri, 03 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/fcmp.ll
Log Message:
-----------
[InstCombine] Fix FMF propagation in `foldFCmpFSubIntoFCmp` (#161539)
Proof: https://alive2.llvm.org/ce/z/orSP-S
Closes https://github.com/llvm/llvm-project/issues/161525.
Commit: 67c000efb7bb7858f9fb6e577f2c9d1f24291ba0
https://github.com/llvm/llvm-project/commit/67c000efb7bb7858f9fb6e577f2c9d1f24291ba0
Author: Steven Perron <stevenperron at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/Attr.td
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/CodeGenHLSL/resources/RWStructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/resources/RasterizerOrderedStructuredBuffer-elementtype.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
Log Message:
-----------
[HLSL] [SPIR-V] Add counter member for typed buffer (#161414)
This is part 1 of implementing the typed buffer counters proposal:
https://github.com/llvm/wg-hlsl/blob/main/proposals/0023-typed-buffer-counters.md
This patch adds the initial plumbing for supporting counter variables
associated with structured buffers for the SPIR-V backend. It introduces
an `IsCounter` attribute to `HLSLAttributedResourceType` and threads it
through the AST, type printing, and mangling. It also adds a
`__counter_handle` member to the relevant buffer types in
`HLSLBuiltinTypeDeclBuilder`.
Contributes to https://github.com/llvm/llvm-project/issues/137032
Commit: 99d85906c542c3801a24137ba6d6f2c367308563
https://github.com/llvm/llvm-project/commit/99d85906c542c3801a24137ba6d6f2c367308563
Author: Jeremy Kun <jkun at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
M mlir/lib/Target/IRDLToCpp/Templates/PerOperationDecl.txt
M mlir/lib/Target/IRDLToCpp/Templates/PerOperationDef.txt
M mlir/test/lib/Dialect/TestIRDLToCpp/CMakeLists.txt
M mlir/test/lib/Dialect/TestIRDLToCpp/TestIRDLToCppDialect.cpp
M mlir/test/lib/Dialect/TestIRDLToCpp/test_conversion.testd.mlir
M mlir/test/lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir
M mlir/test/lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp_invalid_unsupported_types.irdl.mlir
Log Message:
-----------
[mlir] [irdl] Add support for regions in irdl-to-cpp (#158540)
Fixes https://github.com/llvm/llvm-project/issues/158034
For the input
```mlir
irdl.dialect @conditional_dialect {
// A conditional operation with regions
irdl.operation @conditional {
// Create region constraints
%r0 = irdl.region // Unconstrained region
%r1 = irdl.region() // Region with no entry block arguments
%v0 = irdl.any
%r2 = irdl.region(%v0) // Region with one i1 entry block argument
irdl.regions(cond: %r2, then: %r0, else: %r1)
}
}
```
This produces the following cpp:
https://gist.github.com/j2kun/d2095f108efbd8d403576d5c460e0c00
Summary of changes:
- The op class and adaptor get named accessors to the regions `Region
&get<RegionName>()` and `getRegions()`
- The op now gets `OpTrait::NRegions<3>` and `OpInvariants` to trigger
the region verification
- Support for region block argument constraints is added, but not
working for all constraints until codegen for `irdl.is` is added (filed
https://github.com/llvm/llvm-project/issues/161018 and left a TODO).
- Helper functions for the individual verification steps are added,
following mlir-tblgen's format (in the above gist,
`__mlir_irdl_local_region_constraint_ConditionalOp_cond` and similar),
and `verifyInvariantsImpl` that calls them.
- Regions are added in the builder
## Questions for the reviewer
### What is the "correct" interface for verification?
I used `mlir-tblgen` on an analogous version of the example
`ConditionalOp` in this PR, and I see an `::mlir::OpTrait::OpInvariants`
trait as well as
```cpp
::llvm::LogicalResult ConditionalOp::verifyInvariantsImpl() {
{
unsigned index = 0; (void)index;
for (auto ®ion : ::llvm::MutableArrayRef((*this)->getRegion(0)))
if (::mlir::failed(__mlir_ods_local_region_constraint_test1(*this, region, "cond", index++)))
return ::mlir::failure();
for (auto ®ion : ::llvm::MutableArrayRef((*this)->getRegion(1)))
if (::mlir::failed(__mlir_ods_local_region_constraint_test1(*this, region, "then", index++)))
return ::mlir::failure();
for (auto ®ion : ::llvm::MutableArrayRef((*this)->getRegion(2)))
if (::mlir::failed(__mlir_ods_local_region_constraint_test1(*this, region, "else", index++)))
return ::mlir::failure();
}
return ::mlir::success();
}
::llvm::LogicalResult ConditionalOp::verifyInvariants() {
if(::mlir::succeeded(verifyInvariantsImpl()) && ::mlir::succeeded(verify()))
return ::mlir::success();
return ::mlir::failure();
}
```
However, `OpInvariants` only seems to need `verifyInvariantsImpl`, so
it's not clear to me what is the purpose of the `verifyInvariants`
function, or, if I leave out `verifyInvariants`, whether I need to call
`verify()` in my implementation of `verifyInvariantsImpl`. In this PR, I
omitted `verifyInvariants` and generated `verifyInvariantsImpl`.
### Is testing sufficient?
I am not certain I implemented the builders properly, and it's unclear
to me to what extent the existing tests check this (which look like they
compile the generated cpp, but don't actually use it). Did I omit some
standard function or overload?
---------
Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Commit: b86ddae1da651f921125a9864b45a5b11bc3b1c0
https://github.com/llvm/llvm-project/commit/b86ddae1da651f921125a9864b45a5b11bc3b1c0
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang/include/clang/Frontend/CompilerInstance.h
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/unittests/CodeGen/TestCompiler.h
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
Log Message:
-----------
[clang] NFCI: Clean up `CompilerInstance::create{File,Source}Manager()` (#160748)
The `CompilerInstance::createSourceManager()` function currently accepts
the `FileManager` to be used. However, all clients call
`CompilerInstance::createFileManager()` prior to creating the
`SourceManager`, and it never makes sense to use a `FileManager` in the
`SourceManager` that's different from the rest of the compiler. Passing
the `FileManager` explicitly is redundant, error-prone, and deviates
from the style of other `CompilerInstance` initialization APIs.
This PR therefore removes the `FileManager` parameter from
`createSourceManager()` and also stops returning the `FileManager`
pointer from `createFileManager()`, since that was its primary use. Now,
`createSourceManager()` internally calls `getFileManager()` instead.
Commit: 8f67cdd9b7f4ffa3cca552b00d58e72dba66b924
https://github.com/llvm/llvm-project/commit/8f67cdd9b7f4ffa3cca552b00d58e72dba66b924
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFrameInfo.h
M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
A llvm/test/CodeGen/AArch64/framelayout-split-sve.mir
M llvm/test/CodeGen/AArch64/spill-fill-zpr-predicates.mir
A llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
Log Message:
-----------
[AArch64][SME] Support split ZPR and PPR area allocation (#142392)
For a while we have supported the `-aarch64-stack-hazard-size=<size>`
option, which adds "hazard padding" between GPRs and FPR/ZPRs. However,
there is currently a hole in this mitigation as PPR and FPR/ZPR accesses
to the same area also cause streaming memory hazards (this is noted by
`-pass-remarks-analysis=sme -aarch64-stack-hazard-remark-size=<val>`),
and the current stack layout places PPRs and ZPRs within the same area.
Which looks like:
```
------------------------------------ Higher address
| callee-saved gpr registers |
|---------------------------------- |
| lr,fp (a.k.a. "frame record") |
|-----------------------------------| <- fp(=x29)
| <hazard padding> |
|-----------------------------------|
| callee-saved fp/simd/SVE regs |
|-----------------------------------|
| SVE stack objects |
|-----------------------------------|
| local variables of fixed size |
| <FPR> |
| <hazard padding> |
| <GPR> |
------------------------------------| <- sp
| Lower address
```
With this patch the stack (and hazard padding) is rearranged so that
hazard padding is placed between the PPRs and ZPRs rather than within
the (fixed size) callee-save region. Which looks something like this:
```
------------------------------------ Higher address
| callee-saved gpr registers |
|---------------------------------- |
| lr,fp (a.k.a. "frame record") |
|-----------------------------------| <- fp(=x29)
| callee-saved PPRs |
| PPR stack objects | (These are SVE predicates)
|-----------------------------------|
| <hazard padding> |
|-----------------------------------|
| callee-saved ZPR regs | (These are SVE vectors)
| ZPR stack objects | Note: FPRs are promoted to ZPRs
|-----------------------------------|
| local variables of fixed size |
| <FPR> |
| <hazard padding> |
| <GPR> |
------------------------------------| <- sp
| Lower address
```
This layout is only enabled if:
* SplitSVEObjects are enabled (`-aarch64-split-sve-objects`)
- (This may be enabled by default in a later patch)
* Streaming memory hazards are present
- (`-aarch64-stack-hazard-size=<val>` != 0)
* PPRs and FPRs/ZPRs are on the stack
* There's no stack realignment or variable-sized objects
- This is left as a TODO for now
Additionally, any FPR callee-saves that are present will be promoted to
ZPRs. This is to prevent stack hazards between FPRs and GRPs in the
fixed size callee-save area (which would otherwise require more hazard
padding, or moving the FPR callee-saves).
This layout should resolve the hole in the hazard padding mitigation,
and is not intended change codegen for non-SME code.
Commit: 1f225676f4859842d0a1ee74c2318c01d34b571b
https://github.com/llvm/llvm-project/commit/1f225676f4859842d0a1ee74c2318c01d34b571b
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Improve code using VPlan::getFalse (NFC) (#161681)
Commit: 9133fc8cb04f8e45c9b46de85a8de99bf01e55c7
https://github.com/llvm/llvm-project/commit/9133fc8cb04f8e45c9b46de85a8de99bf01e55c7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/Analysis/LoopAccessAnalysis/early-exit-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
Log Message:
-----------
[LAA,LV] Add early-exit tests with deref assumes and nofree via context.
Add tests with early exits and dereferenceable assumptions that need
proving no-free via the context.
Commit: 68b143d968f8fe97bf6d3a80b3a73d48e7b655cb
https://github.com/llvm/llvm-project/commit/68b143d968f8fe97bf6d3a80b3a73d48e7b655cb
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
Log Message:
-----------
[MLIR][XeGPU] Use operand layouts for store scatter (#161447)
The PR adds a change to use the layouts from the operands since store
doesn't have a result
Commit: 5be4fc24a748514a0e51c408da11d0544ebf3811
https://github.com/llvm/llvm-project/commit/5be4fc24a748514a0e51c408da11d0544ebf3811
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/test/Dialect/Arith/emulate-unsupported-floats.mlir
Log Message:
-----------
[mlir][Arith] arith.select doesn't need to be emulated for small floats (#161707)
arith.select isn't an arithmetic operation in the sense of things like
addf or mulf, which the emulate-unsupported-floats rewrites using extf
and truncf.
This patch adds select as a legal operation to prevent a pointless
conversion aronud conditional moves.
Fixes https://github.com/iree-org/iree/issues/22181
Commit: 847e1e18902d1bedb9d7df8cbec84dbda8042e47
https://github.com/llvm/llvm-project/commit/847e1e18902d1bedb9d7df8cbec84dbda8042e47
Author: Björn Schäpers <bjoern at hazardy.de>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/MacroExpander.cpp
M clang/lib/Format/NamespaceEndCommentsFixer.cpp
M clang/lib/Format/ObjCPropertyAttributeOrderFixer.cpp
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/SortJavaScriptImports.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
Log Message:
-----------
[clang-format][NFC] Introduce isNoneOf (#161021)
And apply throughout the code base.
Commit: 819f34a6e047754276320235dfe014b71c64d7da
https://github.com/llvm/llvm-project/commit/819f34a6e047754276320235dfe014b71c64d7da
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/lib/AST/StmtProfile.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[NFC][OpenACC] Remove 'initExpr' from AST/etc. (#161674)
I originally expected that we were going to need the initExpr stored
separately from the allocaDecl when doing arrays/pointers, however after
implementing it, we found that the idea of having the allocaDecl just
store its init directly still works perfectly. This patch removes the
extra field from the AST.
Commit: f1650cf91b01470ce44f47797663d59f00828493
https://github.com/llvm/llvm-project/commit/f1650cf91b01470ce44f47797663d59f00828493
Author: Devon Loehr <DKLoehr at users.noreply.github.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaChecking.cpp
M clang/test/SemaCXX/builtin-assume-aligned.cpp
Log Message:
-----------
Revert "[clang] Convert second arg of __builtin_assume_aligned to ConstantExpr (#161314)" (#161719)
This reverts commit 8f77621574176387f906b8ceef9e1abb90bf22f6 (#161314).
Reason: Causing crashes when building https://github.com/google/highway.
See the original PR for details.
Commit: 49603bd9b8c75666f8337b63a6c75a50aa618d4b
https://github.com/llvm/llvm-project/commit/49603bd9b8c75666f8337b63a6c75a50aa618d4b
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/MemoryProfileInfo.h
M llvm/lib/Analysis/MemoryProfileInfo.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/unittests/Analysis/MemoryProfileInfoTest.cpp
Log Message:
-----------
Revert "[MemProf] Add ambigous memprof attribute" (#161717)
Reverts llvm/llvm-project#157204
This caused issues in ThinLTO binaries because of the checking here,
that didn't expect allocations needing cloning to have memprof metadata:
https://github.com/llvm/llvm-project/blob/9133fc8cb04f8e45c9b46de85a8de99bf01e55c7/llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp#L5572-L5582
I need to move the assert into the if check and guard by that condition.
And add a more thorough test.
Commit: 1d7ec60e8f8a659ad9a8da8a53c31ce1ef491dd5
https://github.com/llvm/llvm-project/commit/1d7ec60e8f8a659ad9a8da8a53c31ce1ef491dd5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Log Message:
-----------
[RISCV] Improve formatting in RISCVInstrInfoVPseudos.td. NFC (#161470)
Primarily focused on changes from RISCVVPseudo recently inheriting from
Pseudo.
Commit: 44d471e70679c3056fb68d2fc826bbaa41f4df3a
https://github.com/llvm/llvm-project/commit/44d471e70679c3056fb68d2fc826bbaa41f4df3a
Author: Marcell Leleszi <59964679+mleleszi at users.noreply.github.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/llvm-libc-macros/linux/fcntl-macros.h
M libc/include/sys/syscall.h.def
M libc/include/unistd.yaml
M libc/src/unistd/CMakeLists.txt
A libc/src/unistd/faccessat.h
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/access.cpp
A libc/src/unistd/linux/faccessat.cpp
M libc/test/src/unistd/CMakeLists.txt
A libc/test/src/unistd/faccessat_test.cpp
Log Message:
-----------
[libc] Implement faccessat (#161065)
#160404
- Implement POSIX function "faccessat"
- Remove redundant param in facessat syscall in access implementation,
faccessat syscall does not take a flags arg
Commit: 8779ab6b218ee9372be7758b2c9a0cf92e2b5046
https://github.com/llvm/llvm-project/commit/8779ab6b218ee9372be7758b2c9a0cf92e2b5046
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
Log Message:
-----------
[RISCV] Always use XLenVT for pointer operand in PatLAQ and PatSRL. NFC (#161709)
The vt argument is not used today so it always gets the default XLenVT
which is why this is NFC. I plan to use it in a future patch.
Commit: 902fe02e8722b8f51cb3897226c97fbff353c890
https://github.com/llvm/llvm-project/commit/902fe02e8722b8f51cb3897226c97fbff353c890
Author: Alex Duran <alejandro.duran at intel.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M offload/libomptarget/OpenMP/InteropAPI.cpp
M offload/libomptarget/exports
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
Log Message:
-----------
[OFFLOAD] Restore interop functionality (#161429)
This implements two pieces to restore the interop functionality (that I
broke) when the 6.0 interfaces were added:
* A set of wrappers that support the old interfaces on top of the new
ones
* The same level of interop support for the CUDA amd AMD plugins
Commit: 694390679ac1351a8d471d39db85400eb21a9035
https://github.com/llvm/llvm-project/commit/694390679ac1351a8d471d39db85400eb21a9035
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVGISel.td
M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
Log Message:
-----------
[RISCV][GISel] Share an atomic load isel pattern GISel RV64 and SDAG RV32. NFC (#161721)
Use stricter type for RV64 only patterns.
Stores are different because atomic_store doesn't differentiate
truncating and non-truncating stores.
Commit: 11faf88d8fea4d221e826e4e9827864f38d246fb
https://github.com/llvm/llvm-project/commit/11faf88d8fea4d221e826e4e9827864f38d246fb
Author: Brandon <61314499+brandonxin at users.noreply.github.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
A llvm/test/Transforms/InstCombine/icmp-clamp.ll
Log Message:
-----------
[InstCombine] Fold icmp with clamp into unsigned bound check (#161303)
Fix #157315
alive2: https://alive2.llvm.org/ce/z/TEnuFV
The equality comparison of `min(max(X, Lo), Hi)` and `X` is actually a
range check on `X`. This PR folds this into an unsigned bound check `(X
- Lo) u< (Hi - Lo + 1)`.
---------
Co-authored-by: Yingwei Zheng <dtcxzyw at qq.com>
Commit: 6048c2f0c752d6f9963bc47a10f208c62882c8d6
https://github.com/llvm/llvm-project/commit/6048c2f0c752d6f9963bc47a10f208c62882c8d6
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M flang/lib/Parser/parsing.cpp
M flang/lib/Parser/prescan.cpp
A flang/test/Semantics/OpenACC/acc-sentinel.f90
Log Message:
-----------
[flang][openacc] Suppport !@acc compiler sentinel (#161706)
Commit: a2b6602aa46827cd0a3a379980dfbe1688f4049e
https://github.com/llvm/llvm-project/commit/a2b6602aa46827cd0a3a379980dfbe1688f4049e
Author: Artem Belevich <tra at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/f32x2-convert-i32x2.ll
Log Message:
-----------
[NVPTX] expand trunc/ext on v2i32 (#161715)
#153478 made v2i32 legal on newer GPUs, but we can not lower all
operations yet. Expand the `trunc/ext` operation until we implement
efficient lowering.
Commit: 0ebd4334021e7579bfba7a92b692e0e4ece56cb9
https://github.com/llvm/llvm-project/commit/0ebd4334021e7579bfba7a92b692e0e4ece56cb9
Author: Jon Chesterfield <jon at spectralcompute.co.uk>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/test/CodeGen/AMDGPU/lower-module-lds-precise-allocate-to-module-struct.ll
Log Message:
-----------
[AMDGPU] Be less optimistic when allocating module scope lds (#161464)
Make the test for when additional variables can be added to the struct
allocated at address zero more stringent. Previously, variables can be
added to it (for faster access) even when that increases the lds
requested by a kernel. This corrects that oversight.
Test case diff shows the change from all variables being allocated into
the module lds to only some being, in particular the introduction of
uses of the offset table and that some kernels now use less lds than
before.
Alternative to PR 160181
Commit: fd9a1dcc01766c71932898e9643ce28bf2801bad
https://github.com/llvm/llvm-project/commit/fd9a1dcc01766c71932898e9643ce28bf2801bad
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dep after 99d85906c542c3801a24137ba6d6f2c367308563 (#161728)
Commit: a035ef478b921250190f63854852d2b03fec6e7d
https://github.com/llvm/llvm-project/commit/a035ef478b921250190f63854852d2b03fec6e7d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
Log Message:
-----------
[RISCV] Use i64 instead of XLenVT in some RV64 only isel patterns. NFC
Commit: 2b2bc6320f7037bdbad912fe3cd8003988e6c0ae
https://github.com/llvm/llvm-project/commit/2b2bc6320f7037bdbad912fe3cd8003988e6c0ae
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/fmax-without-fast-math-flags.ll
M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags.ll
Log Message:
-----------
[LV] Add tests with multiple F(Max|Min)Num reductions w/o fast-math.
Pre-commits extra test coverage for loops with multiple F(Max|Min)Num
reductions w/o fast-math-flags for follow-up PR.
Commit: ea443d528d1a6687c2f5ecfe3de62e5c9d2ca42c
https://github.com/llvm/llvm-project/commit/ea443d528d1a6687c2f5ecfe3de62e5c9d2ca42c
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/aarch64.c
A compiler-rt/lib/builtins/cpu_model/aarch64/fmv/hwcap.inc
R compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
Log Message:
-----------
[FMV][AArch64] Remove last of MRS bits and rename file (#161585)
474f5d2aefb44430b89ed72774a3c1d26a0adfb1 removed the last
bits reading from system registers so remove the last bits
utilizing MRS and rename the file to hwcap as the
code is now only decoding the hwcap flags.
Commit: dbffd0aeaf3484fe3d846a10b3c3b1e48ccdf7ef
https://github.com/llvm/llvm-project/commit/dbffd0aeaf3484fe3d846a10b3c3b1e48ccdf7ef
Author: Alex Langford <alangford at apple.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/test/Shell/SymbolFile/NativePDB/symtab.cpp
Log Message:
-----------
[lldb] Add lld requirement to NativePDB test (#161731)
The cpp file fails to build without `lld-link`.
Commit: f4370fb801aa221d7a56f88ebdd9451cce653a68
https://github.com/llvm/llvm-project/commit/f4370fb801aa221d7a56f88ebdd9451cce653a68
Author: David Green <david.green at arm.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/test/CodeGen/ARM/llrint-conv.ll
M llvm/test/CodeGen/ARM/lrint-conv.ll
M llvm/test/CodeGen/ARM/vector-lrint.ll
Log Message:
-----------
[ARM] Update and cleanup lrint/llrint tests. NFC
Most of the fp16 cases still do not work properly. See #161088.
Commit: f4784fd13fb77a609920a06af99c3602bdec530f
https://github.com/llvm/llvm-project/commit/f4784fd13fb77a609920a06af99c3602bdec530f
Author: Julian Lettner <yln at users.noreply.github.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/cpu_feature.py
A lldb/test/API/macosx/mte/Makefile
A lldb/test/API/macosx/mte/TestDarwinMTE.py
A lldb/test/API/macosx/mte/main.c
A lldb/test/API/macosx/mte/mte-entitlements.plist
M lldb/tools/debugserver/source/DNB.cpp
M lldb/tools/debugserver/source/DNB.h
M lldb/tools/debugserver/source/DNBDefs.h
M lldb/tools/debugserver/source/MacOSX/MachTask.h
M lldb/tools/debugserver/source/MacOSX/MachTask.mm
M lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
M lldb/tools/debugserver/source/MacOSX/MachVMMemory.h
M lldb/tools/debugserver/source/MacOSX/MachVMRegion.cpp
M lldb/tools/debugserver/source/MacOSX/MachVMRegion.h
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/debugserver/source/RNBRemote.h
Log Message:
-----------
[debugserver] Support for `qMemTags` packet (#160952)
Support for `qMemTags` packet in debugserver which allows usage of
LLDB's `memory tag read` on Darwin.
Commit: 8f2466bc72a5ab163621cb1bf4bf53a27f1cefe7
https://github.com/llvm/llvm-project/commit/8f2466bc72a5ab163621cb1bf4bf53a27f1cefe7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
Reapply "[VPlan] Compute cost of more replicating loads/stores in ::computeCost. (#160053)" (#161724)
This reverts commit f61be4352592639a0903e67a9b5d3ec664ad4d23.
Recommit a small fix handling scalarization overhead consistently with
legacy cost model if a load is used directly as operand of another
memory operation, which fixes
https://github.com/llvm/llvm-project/issues/161404.
Original message:
Update VPReplicateRecipe::computeCost to compute costs of more
replicating loads/stores.
There are 2 cases that require extra checks to match the legacy cost
model:
1. If the pointer is based on an induction, the legacy cost model passes
its SCEV to getAddressComputationCost. In those cases, still fall back
to the legacy cost. SCEV computations will be added as follow-up
2. If a load is used as part of an address of another load, the legacy
cost model skips the scalarization overhead. Those cases are currently
handled by a usedByLoadOrStore helper.
Note that getScalarizationOverhead also needs updating, because when the
legacy cost model computes the scalarization overhead, scalars have not
been collected yet, so we can't each for replicating recipes to skip
their cost, except other loads. This again can be further improved by
modeling inserts/extracts explicitly and consistently, and compute costs
for those operations directly where needed.
PR: https://github.com/llvm/llvm-project/pull/160053
Commit: 3757fa6aa9eaa5a8c99bcfc75426bafddb613b10
https://github.com/llvm/llvm-project/commit/3757fa6aa9eaa5a8c99bcfc75426bafddb613b10
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-03 (Fri, 03 Oct 2025)
Changed paths:
M orc-rt/unittests/ErrorTest.cpp
Log Message:
-----------
[orc-rt] Add testcase for Expected<Expected<T>> support. (#161660)
Follows addition of Expected<Error> support (99ce2062462), and has
essentially the same motivation: supporting RPC calls to functions
returning Expected<T>, where the RPC infrastructure wants to be able to
wrap that result in its own Expected.
Commit: b3e2d6d4b4069bdfe9dd1ad832d7358cfd36f3ad
https://github.com/llvm/llvm-project/commit/b3e2d6d4b4069bdfe9dd1ad832d7358cfd36f3ad
Author: wjristow <warren.ristow at sony.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/lib/CodeGen/Targets/X86.cpp
M clang/test/CodeGen/X86/avx-cxx-record.cpp
Log Message:
-----------
Suppress returning larger CXX records in mem on PlayStation (#161732)
In commit e8a486ea9789, a change was made so that certain 256-bit and
512-bit CXX records would be returned in memory, fixing a violation of
the x86-64 psABI (where they had been incorrectly returned in AVX
registers). For compatibility reasons, we want to suppress that ABI-fix
on PlayStation. This commit suppresses that change for PlayStation, and
updates the test to include checking the 512-bit case.
Commit: 07974fe2b14a7601b5658deb9c41597db54e842f
https://github.com/llvm/llvm-project/commit/07974fe2b14a7601b5658deb9c41597db54e842f
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Log Message:
-----------
Reland "[lldb][MachO][NFC] Extract ObjC metadata symbol parsing into helper function" (#161655)
This reverts `5a80fb9177e3c831c9c574400a13d77393397f2a`. The original
change got reverted because of failing tests on macOS.
The issue was that I changed the scope of setting `type =
eSymbolTypeData` during the cleanup. This patch relands the original
patch but doesn't change the `else` branch to an `else if` branch.
Tested that macOS test-suite passes.
Commit: ab2c4a0ee1b4710c0f610292b6e9dcb45839c25f
https://github.com/llvm/llvm-project/commit/ab2c4a0ee1b4710c0f610292b6e9dcb45839c25f
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-10-02 (Thu, 02 Oct 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
Log Message:
-----------
[clang-scan-deps] Remove unused OutputsPaths from FullDependencyConsumer (NFC) (#155523)
The OutputPaths field of FullDependencyConsumer is not used, and the
resulting TranslationUnitDeps has no corresponding field. This change
removes the unused member.
It was added in commit f978ea4, and this comment in the Differential
Revision suggests it was intended to be removed before landing:
https://reviews.llvm.org/D70268#1772032
Commit: 62eeac6232e363b29c92d5f60336fe5839910e97
https://github.com/llvm/llvm-project/commit/62eeac6232e363b29c92d5f60336fe5839910e97
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-10-28 (Tue, 28 Oct 2025)
Changed paths:
A .ci/all_requirements.txt
A .ci/cache_lit_timing_files.py
A .ci/compute_projects.py
A .ci/compute_projects_test.py
R .ci/generate-buildkite-pipeline-premerge
A .ci/generate_test_report_github.py
A .ci/generate_test_report_lib.py
A .ci/generate_test_report_lib_test.py
A .ci/metrics/Dockerfile
A .ci/metrics/metrics.py
A .ci/metrics/metrics_test.py
A .ci/metrics/requirements.lock.txt
A .ci/metrics/requirements.txt
M .ci/monolithic-linux.sh
M .ci/monolithic-windows.sh
A .ci/requirements.txt
A .ci/utils.sh
M .clang-format
A .clang-format-ignore
M .clang-tidy
M .git-blame-ignore-revs
M .github/CODEOWNERS
A .github/copilot-instructions.md
R .github/dependabot.yml
M .github/new-issues-labeler.yml
M .github/new-prs-labeler.yml
A .github/renovate.json
A .github/workflows/bazel-checks.yml
A .github/workflows/build-ci-container-windows.yml
M .github/workflows/build-ci-container.yml
A .github/workflows/build-metrics-container.yml
A .github/workflows/check-ci.yml
M .github/workflows/ci-post-commit-analyzer.yml
R .github/workflows/clang-tests.yml
A .github/workflows/commit-access-greeter.yml
M .github/workflows/commit-access-review.py
M .github/workflows/commit-access-review.yml
A .github/workflows/containers/github-action-ci-windows/Dockerfile
A .github/workflows/containers/github-action-ci/Dockerfile
R .github/workflows/containers/github-action-ci/bootstrap.patch
R .github/workflows/containers/github-action-ci/stage1.Dockerfile
R .github/workflows/containers/github-action-ci/stage2.Dockerfile
R .github/workflows/containers/github-action-ci/storage.conf
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
A .github/workflows/gha-codeql.yml
A .github/workflows/hlsl-matrix.yaml
A .github/workflows/hlsl-test-all.yaml
M .github/workflows/issue-release-workflow.yml
M .github/workflows/issue-subscriber.yml
M .github/workflows/issue-write.yml
A .github/workflows/libc-fullbuild-tests.yml
A .github/workflows/libc-overlay-tests.yml
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/libclang-python-tests.yml
R .github/workflows/libclc-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
A .github/workflows/libcxx-build-containers.yml
M .github/workflows/libcxx-check-generated-files.yml
R .github/workflows/libcxx-restart-preempted-jobs.yaml
A .github/workflows/libcxx-run-benchmarks.yml
R .github/workflows/lld-tests.yml
R .github/workflows/lldb-tests.yml
M .github/workflows/llvm-bugs.yml
R .github/workflows/llvm-project-tests.yml
R .github/workflows/llvm-project-workflow-tests.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/merged-prs.yml
A .github/workflows/mlir-spirv-tests.yml
M .github/workflows/new-issues.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
A .github/workflows/pr-code-lint.yml
M .github/workflows/pr-request-release-note.yml
M .github/workflows/pr-subscriber.yml
A .github/workflows/premerge.yaml
M .github/workflows/release-asset-audit.py
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries-all.yml
M .github/workflows/release-binaries-save-stage/action.yml
M .github/workflows/release-binaries-setup-stage/action.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-lit.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/scorecard.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/unprivileged-download-artifact/action.yml
M .github/workflows/version-check.yml
M .gitignore
M .mailmap
M CONTRIBUTING.md
M bolt/CMakeLists.txt
R bolt/CODE_OWNERS.TXT
A bolt/Maintainers.txt
A bolt/docs/BinaryAnalysis.md
M bolt/docs/CMakeLists.txt
M bolt/docs/CommandLineArgumentReference.md
M bolt/docs/Heatmaps.md
M bolt/docs/doxygen.cfg.in
M bolt/include/bolt/Core/BinaryBasicBlock.h
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryData.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/include/bolt/Core/DebugData.h
M bolt/include/bolt/Core/DebugNames.h
M bolt/include/bolt/Core/Exceptions.h
M bolt/include/bolt/Core/FunctionLayout.h
M bolt/include/bolt/Core/Linker.h
A bolt/include/bolt/Core/MCInstUtils.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Core/Relocation.h
A bolt/include/bolt/Core/TargetConfig.def.in
M bolt/include/bolt/Passes/ADRRelaxationPass.h
R bolt/include/bolt/Passes/ContinuityStats.h
M bolt/include/bolt/Passes/DataflowAnalysis.h
M bolt/include/bolt/Passes/DominatorAnalysis.h
M bolt/include/bolt/Passes/FrameAnalysis.h
M bolt/include/bolt/Passes/IdenticalCodeFolding.h
A bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Passes/PatchEntries.h
A bolt/include/bolt/Passes/ProfileQualityStats.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Profile/Heatmap.h
M bolt/include/bolt/Profile/ProfileYAMLMapping.h
M bolt/include/bolt/Profile/YAMLProfileWriter.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryBasicBlock.cpp
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryData.cpp
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/BinaryFunctionCallGraph.cpp
M bolt/lib/Core/BinaryFunctionProfile.cpp
M bolt/lib/Core/BinarySection.cpp
M bolt/lib/Core/CMakeLists.txt
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/DebugNames.cpp
M bolt/lib/Core/Exceptions.cpp
M bolt/lib/Core/FunctionLayout.cpp
M bolt/lib/Core/GDBIndex.cpp
M bolt/lib/Core/HashUtilities.cpp
M bolt/lib/Core/JumpTable.cpp
A bolt/lib/Core/MCInstUtils.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Core/ParallelUtilities.cpp
M bolt/lib/Core/Relocation.cpp
M bolt/lib/Passes/ADRRelaxationPass.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Passes/CMakeLists.txt
R bolt/lib/Passes/ContinuityStats.cpp
M bolt/lib/Passes/FrameAnalysis.cpp
M bolt/lib/Passes/FrameOptimizer.cpp
M bolt/lib/Passes/HFSort.cpp
M bolt/lib/Passes/IdenticalCodeFolding.cpp
M bolt/lib/Passes/IndirectCallPromotion.cpp
M bolt/lib/Passes/Inliner.cpp
M bolt/lib/Passes/Instrumentation.cpp
M bolt/lib/Passes/LongJmp.cpp
M bolt/lib/Passes/MCF.cpp
A bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Passes/PLTCall.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Passes/PettisAndHansen.cpp
A bolt/lib/Passes/ProfileQualityStats.cpp
M bolt/lib/Passes/ReorderFunctions.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
M bolt/lib/Passes/SplitFunctions.cpp
M bolt/lib/Passes/StokeInfo.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Passes/VeneerElimination.cpp
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/lib/Profile/CMakeLists.txt
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Profile/Heatmap.cpp
M bolt/lib/Profile/StaleProfileMatching.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/BoltDiff.cpp
M bolt/lib/Rewrite/BuildIDRewriter.cpp
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/JITLinkLinker.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/CMakeLists.txt
M bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp
M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
A bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
A bolt/lib/Target/AArch64/AArch64MCSymbolizer.h
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/CMakeLists.txt
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/CMakeLists.txt
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCSymbolizer.h
M bolt/lib/Utils/CMakeLists.txt
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/CMakeLists.txt
M bolt/runtime/common.h
M bolt/runtime/hugify.cpp
M bolt/runtime/instr.cpp
A bolt/runtime/sys_riscv64.h
A bolt/test/AArch64/adr-relaxation-fail.s
M bolt/test/AArch64/adr-relaxation.s
A bolt/test/AArch64/cfi-state-list.test
A bolt/test/AArch64/check-init-not-moved.s
A bolt/test/AArch64/computed-goto.s
M bolt/test/AArch64/constant-island-alignment.s
M bolt/test/AArch64/data-at-0-offset.c
A bolt/test/AArch64/data-in-code.s
A bolt/test/AArch64/data-marker-invalidates-extra-entrypoint.s
M bolt/test/AArch64/double_jump.cpp
A bolt/test/AArch64/dwarf4-dwp-aarch64.s
A bolt/test/AArch64/exceptions-plt.cpp
A bolt/test/AArch64/got-load-symbolization.s
A bolt/test/AArch64/inline-small-function-1.s
A bolt/test/AArch64/inline-small-function-2.s
A bolt/test/AArch64/instrumentation_sequence.s
A bolt/test/AArch64/jmp-table-unsupported.s
A bolt/test/AArch64/jump-table-heuristic-fail.s
A bolt/test/AArch64/lite-mode.s
A bolt/test/AArch64/long-jmp-one-stub.s
A bolt/test/AArch64/missing-code-marker.s
A bolt/test/AArch64/pad-before-funcs.s
A bolt/test/AArch64/patch-ignored.s
M bolt/test/AArch64/plt-call.test
A bolt/test/AArch64/print-mem-data.test
A bolt/test/AArch64/print-sorted-by-order.s
M bolt/test/AArch64/r_aarch64_prelxx.s
A bolt/test/AArch64/remove-nops.s
A bolt/test/AArch64/skip-non-vfuncptr-reloc-in-relative-vtable.s
M bolt/test/AArch64/test-indirect-branch.s
A bolt/test/AArch64/tls-desc-call.s
M bolt/test/AArch64/tls.c
M bolt/test/AArch64/unmarked-data.test
A bolt/test/AArch64/unsupported-passes.test
A bolt/test/AArch64/validate-secondary-entry-point.s
A bolt/test/AArch64/veneer-lld-abs.s
M bolt/test/CMakeLists.txt
A bolt/test/Inputs/indirect_goto.c
A bolt/test/Inputs/multi-func.cpp
M bolt/test/RISCV/call-annotations.s
M bolt/test/RISCV/relax.s
M bolt/test/RISCV/reloc-branch.s
M bolt/test/RISCV/reloc-jal.s
M bolt/test/RISCV/reloc-jt.s
M bolt/test/RISCV/reloc-label-diff.s
M bolt/test/RISCV/reorder-blocks-reverse.s
A bolt/test/RISCV/validate-secondary-entry-point.s
M bolt/test/R_ABS.pic.lld.cpp
M bolt/test/X86/Inputs/define_bar.s
R bolt/test/X86/Inputs/indirect_goto.c
A bolt/test/X86/Inputs/pre-aggregated-basic.txt
M bolt/test/X86/bolt-address-translation-yaml.test
M bolt/test/X86/branch-data.test
M bolt/test/X86/callcont-fallthru.s
R bolt/test/X86/cfg-discontinuity-reporting.test
M bolt/test/X86/cfi-instrs-reordered.s
M bolt/test/X86/debug-fission-single-convert.s
M bolt/test/X86/debug-fission-single.s
M bolt/test/X86/double-jump.test
M bolt/test/X86/double-rel-scan.s
M bolt/test/X86/double-rel.s
A bolt/test/X86/dwarf4-dwp-x86.s
A bolt/test/X86/dwarf5-debug-line-print.s
A bolt/test/X86/dwarf5-debug-names-abstract-origin-linkage-name-only.s
A bolt/test/X86/dwarf5-debug-names-abstract-origin-specification.s
A bolt/test/X86/dwarf5-debug-names-gnu-push-tls-address.s
A bolt/test/X86/dwarf5-debug-names-union.test
M bolt/test/X86/dwarf5-df-inlined-subroutine-gc-sections-range.test
M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-gdb-generated-gdb11.test
M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-lld-generated.test
A bolt/test/X86/dwarf5-dwoid-no-dwoname.s
M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb11.test
M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb9.test
M bolt/test/X86/dwarf5-gdb-index-types-lld-generated.test
A bolt/test/X86/dwarf5-two-cus.s
M bolt/test/X86/dynamic-relocs-on-entry.s
A bolt/test/X86/entry-point-fallthru.s
A bolt/test/X86/exceptions-compact.s
A bolt/test/X86/fix-branches-broken-cfg.s
A bolt/test/X86/heatmap-preagg.test
A bolt/test/X86/high-segments.s
A bolt/test/X86/hlt-terminator.s
A bolt/test/X86/icf-safe-icp.test
A bolt/test/X86/icf-safe-process-rela-data.test
A bolt/test/X86/icf-safe-test1-no-relocs.test
A bolt/test/X86/icf-safe-test1.test
A bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test
R bolt/test/X86/indirect-goto-pie.test
M bolt/test/X86/indirect-goto.test
M bolt/test/X86/inlined-function-mixed.test
M bolt/test/X86/jmp-optimization.test
A bolt/test/X86/jump-table-ambiguous-unreachable.s
M bolt/test/X86/jump-table-icp.test
M bolt/test/X86/linux-alt-instruction.s
M bolt/test/X86/linux-bug-table.s
M bolt/test/X86/linux-exceptions.s
M bolt/test/X86/linux-orc.s
M bolt/test/X86/linux-parainstructions.s
M bolt/test/X86/linux-pci-fixup.s
M bolt/test/X86/linux-smp-locks.s
M bolt/test/X86/linux-static-calls.s
M bolt/test/X86/linux-static-keys.s
A bolt/test/X86/linux-version.S
A bolt/test/X86/lite-mode-target-expr.s
M bolt/test/X86/match-functions-with-call-graph.test
A bolt/test/X86/multi-cu-debug-line.s
A bolt/test/X86/nobits-symbol.s
A bolt/test/X86/patch-ignored.s
A bolt/test/X86/pie-eh-split-undo.s
M bolt/test/X86/plt-call.test
M bolt/test/X86/pre-aggregated-perf.test
A bolt/test/X86/profile-quality-reporting-small-binary.s
A bolt/test/X86/profile-quality-reporting.test
M bolt/test/X86/reader-stale-yaml-std.test
M bolt/test/X86/reader-stale-yaml.test
M bolt/test/X86/register-fragments-bolt-symbols.s
M bolt/test/X86/shrinkwrapping.test
A bolt/test/X86/skip-inline.s
M bolt/test/X86/split-func-jump-table-fragment-bidirection.s
M bolt/test/X86/unclaimed-jt-entries.s
A bolt/test/X86/zero-density.s
A bolt/test/avoid-wx-segment.c
A bolt/test/binary-analysis/AArch64/Inputs/dummy.txt
A bolt/test/binary-analysis/AArch64/cmdline-args.test
A bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
A bolt/test/binary-analysis/AArch64/gs-pacret-multi-bb.s
A bolt/test/binary-analysis/AArch64/gs-pauth-address-checks.s
A bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s
A bolt/test/binary-analysis/AArch64/gs-pauth-authentication-oracles.s
A bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
A bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
A bolt/test/binary-analysis/AArch64/gs-pauth-tail-calls.s
A bolt/test/binary-analysis/AArch64/lit.local.cfg
A bolt/test/binary-analysis/AArch64/trap-instructions.s
A bolt/test/code-at-high-address.c
A bolt/test/dump-dot-func.test
A bolt/test/dwo-name-retrieving.test
A bolt/test/eh-frame-hdr.test
A bolt/test/eh-frame-overwrite.test
A bolt/test/indirect-goto-relocs.test
M bolt/test/link_fdata.py
M bolt/test/lit.cfg.py
M bolt/test/lit.local.cfg
M bolt/test/lsda-section-name.cpp
A bolt/test/merge-fdata-bat-no-lbr.test
A bolt/test/merge-fdata-lbr-mode.test
A bolt/test/merge-fdata-mixed-bat-no-lbr.test
A bolt/test/merge-fdata-mixed-mode.test
A bolt/test/merge-fdata-no-lbr-mode.test
M bolt/test/non-empty-debug-line.test
A bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
A bolt/test/perf2bolt/X86/perf2bolt-spe.test
M bolt/test/perf2bolt/perf_test.test
M bolt/test/permission.test
M bolt/test/pie.test
A bolt/test/process-debug-line
A bolt/test/program-header.test
R bolt/test/runtime/AArch64/adrrelaxationpass.s
A bolt/test/runtime/AArch64/inline-memcpy.s
A bolt/test/runtime/Inputs/user_func_order.txt
A bolt/test/runtime/RISCV/basic-instrumentation.s
A bolt/test/runtime/RISCV/instrumentation-ind-call.c
A bolt/test/runtime/RISCV/lit.local.cfg
M bolt/test/runtime/X86/Inputs/pie-exceptions-failed-split.s
R bolt/test/runtime/X86/Inputs/user_func_order.txt
M bolt/test/runtime/X86/fdata-escape-chars.ll
R bolt/test/runtime/X86/hugify.c
M bolt/test/runtime/X86/instrumentation-indirect.c
R bolt/test/runtime/X86/pie-exceptions-failed-split.test
A bolt/test/runtime/X86/pie-exceptions-split.test
M bolt/test/runtime/X86/tail-duplication-constant-prop.s
R bolt/test/runtime/X86/user-func-reorder.c
M bolt/test/runtime/bolt-reserved.cpp
A bolt/test/runtime/copy_file.py
A bolt/test/runtime/exceptions-plt.cpp
A bolt/test/runtime/hugify.c
M bolt/test/runtime/instrumentation-indirect-2.c
M bolt/test/runtime/plt-lld.test
A bolt/test/runtime/relative-vftable.cpp
A bolt/test/runtime/user-func-reorder.c
M bolt/test/timers.c
M bolt/test/unreadable-profile.test
M bolt/tools/CMakeLists.txt
M bolt/tools/bat-dump/bat-dump.cpp
A bolt/tools/binary-analysis/CMakeLists.txt
A bolt/tools/binary-analysis/binary-analysis.cpp
M bolt/tools/driver/CMakeLists.txt
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/heatmap/CMakeLists.txt
M bolt/tools/heatmap/heatmap.cpp
M bolt/tools/llvm-bolt-fuzzer/CMakeLists.txt
M bolt/tools/llvm-bolt-fuzzer/llvm-bolt-fuzzer.cpp
M bolt/tools/merge-fdata/merge-fdata.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/CMakeLists.txt
A bolt/unittests/Core/ClusteredRows.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
A bolt/unittests/Core/MemoryMaps.cpp
M bolt/unittests/Profile/CMakeLists.txt
A bolt/unittests/Profile/PerfSpeEvents.cpp
M bolt/utils/bughunter.sh
M bolt/utils/docker/Dockerfile
M bolt/utils/llvm-bolt-wrapper.py
M bolt/utils/nfc-check-setup.py
M clang-tools-extra/CMakeLists.txt
R clang-tools-extra/CODE_OWNERS.TXT
A clang-tools-extra/Maintainers.txt
M clang-tools-extra/README.txt
M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.h
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
A clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
A clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Mapper.h
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
A clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
A clang-tools-extra/clang-doc/assets/class-template.mustache
A clang-tools-extra/clang-doc/assets/comment-template.mustache
A clang-tools-extra/clang-doc/assets/enum-template.mustache
A clang-tools-extra/clang-doc/assets/function-template.mustache
M clang-tools-extra/clang-doc/assets/index.js
A clang-tools-extra/clang-doc/assets/mustache-index.js
A clang-tools-extra/clang-doc/assets/namespace-template.mustache
A clang-tools-extra/clang-doc/assets/template.mustache
A clang-tools-extra/clang-doc/support/CMakeLists.txt
A clang-tools-extra/clang-doc/support/File.cpp
A clang-tools-extra/clang-doc/support/File.h
A clang-tools-extra/clang-doc/support/Utils.cpp
A clang-tools-extra/clang-doc/support/Utils.h
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/clang-include-fixer/FuzzySymbolIndex.cpp
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clang-include-fixer/IncludeFixerContext.cpp
M clang-tools-extra/clang-include-fixer/YamlSymbolIndex.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/FindAllSymbols.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/SymbolInfo.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/Move.cpp
M clang-tools-extra/clang-move/Move.h
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
A clang-tools-extra/clang-reorder-fields/Designator.cpp
A clang-tools-extra/clang-reorder-fields/Designator.h
M clang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
A clang-tools-extra/clang-tidy/.clang-format
A clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/ClangTidyCheck.h
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
M clang-tools-extra/clang-tidy/ClangTidyModule.cpp
M clang-tools-extra/clang-tidy/ClangTidyModule.h
M clang-tools-extra/clang-tidy/ClangTidyModuleRegistry.h
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/clang-tidy/ClangTidyProfiling.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
M clang-tools-extra/clang-tidy/FileExtensionsSet.h
M clang-tools-extra/clang-tidy/GlobList.cpp
M clang-tools-extra/clang-tidy/GlobList.h
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.h
M clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
M clang-tools-extra/clang-tidy/abseil/AbseilTidyModule.cpp
M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.cpp
M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.cpp
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.h
M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.h
M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.cpp
M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.h
M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.cpp
M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.h
M clang-tools-extra/clang-tidy/abseil/NoNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/abseil/NoNamespaceCheck.h
M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.h
M clang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.h
M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.h
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.h
M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.h
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.h
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h
M clang-tools-extra/clang-tidy/add_new_check.py
M clang-tools-extra/clang-tidy/altera/AlteraTidyModule.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.h
M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp
M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.h
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.h
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.h
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.h
M clang-tools-extra/clang-tidy/android/AndroidTidyModule.cpp
M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.h
M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.h
M clang-tools-extra/clang-tidy/android/CloexecCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecCheck.h
M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.h
M clang-tools-extra/clang-tidy/android/CloexecDupCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecDupCheck.h
M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.h
M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.h
M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.h
M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.h
M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.h
M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.h
M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.h
M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.h
M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.h
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.h
M clang-tools-extra/clang-tidy/boost/BoostTidyModule.cpp
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.h
M clang-tools-extra/clang-tidy/boost/UseToStringCheck.cpp
M clang-tools-extra/clang-tidy/boost/UseToStringCheck.h
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.h
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.h
M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.h
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.h
M clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
A clang-tools-extra/clang-tidy/bugprone/CommandProcessorCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/CommandProcessorCheck.h
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.h
M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.h
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.h
A clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.h
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.h
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.h
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.h
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.h
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.h
M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.h
M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.h
A clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.h
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.h
M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.h
A clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.h
M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.h
M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.h
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.h
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.h
A clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/NoEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NoEscapeCheck.h
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.h
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.h
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.h
M clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.h
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.h
M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.h
M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.h
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.h
M clang-tools-extra/clang-tidy/bugprone/SharedPtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SharedPtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.h
M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.h
M clang-tools-extra/clang-tidy/bugprone/SizeofContainerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofContainerCheck.h
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.h
M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringLiteralWithEmbeddedNulCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringLiteralWithEmbeddedNulCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.h
M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.h
M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.h
M clang-tools-extra/clang-tidy/bugprone/TerminatingContinueCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TerminatingContinueCheck.h
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.h
A clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.h
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.h
A clang-tools-extra/clang-tidy/bugprone/UncheckedStringToNumberConversionCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UncheckedStringToNumberConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.h
M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.h
A clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.h
M clang-tools-extra/clang-tidy/bugprone/UniquePtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UniquePtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.h
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
R clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.cpp
R clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.h
M clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.cpp
M clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.h
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.h
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.h
M clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.cpp
M clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.h
M clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
M clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.h
M clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.cpp
M clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.h
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.h
R clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.cpp
R clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.h
R clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp
R clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.h
R clang-tools-extra/clang-tidy/cert/StrToNumCheck.cpp
R clang-tools-extra/clang-tidy/cert/StrToNumCheck.h
M clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.cpp
M clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.h
R clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.cpp
R clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.h
M clang-tools-extra/clang-tidy/clang-tidy-config.h.cmake
M clang-tools-extra/clang-tidy/concurrency/ConcurrencyTidyModule.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.h
M clang-tools-extra/clang-tidy/concurrency/ThreadCanceltypeAsynchronousCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/ThreadCanceltypeAsynchronousCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidConstOrRefDataMembersCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidConstOrRefDataMembersCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidDoWhileCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidDoWhileCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidReferenceCoroutineParametersCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidReferenceCoroutineParametersCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.h
R clang-tools-extra/clang-tidy/cppcoreguidelines/NarrowingConversionsCheck.cpp
R clang-tools-extra/clang-tidy/cppcoreguidelines/NarrowingConversionsCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.h
A clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.h
A clang-tools-extra/clang-tidy/custom/CMakeLists.txt
A clang-tools-extra/clang-tidy/custom/CustomTidyModule.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.h
M clang-tools-extra/clang-tidy/darwin/AvoidSpinlockCheck.cpp
M clang-tools-extra/clang-tidy/darwin/AvoidSpinlockCheck.h
M clang-tools-extra/clang-tidy/darwin/DarwinTidyModule.cpp
M clang-tools-extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.cpp
M clang-tools-extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.h
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.h
M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.h
M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.h
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.h
M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.h
M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.h
M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.h
M clang-tools-extra/clang-tidy/google/CMakeLists.txt
M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.cpp
M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.h
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.h
M clang-tools-extra/clang-tidy/google/ExplicitMakePairCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitMakePairCheck.h
A clang-tools-extra/clang-tidy/google/FloatTypesCheck.cpp
A clang-tools-extra/clang-tidy/google/FloatTypesCheck.h
M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.h
M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.h
M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.h
M clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.h
M clang-tools-extra/clang-tidy/google/OverloadedUnaryAndCheck.cpp
M clang-tools-extra/clang-tidy/google/OverloadedUnaryAndCheck.h
M clang-tools-extra/clang-tidy/google/TodoCommentCheck.cpp
M clang-tools-extra/clang-tidy/google/TodoCommentCheck.h
M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.cpp
M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.h
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.h
M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.cpp
M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.h
M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.h
M clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp
M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.h
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.h
M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.h
M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.h
M clang-tools-extra/clang-tidy/linuxkernel/LinuxKernelTidyModule.cpp
M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.cpp
M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.h
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.h
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.h
M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.h
M clang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.h
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.cpp
M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.h
A clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
A clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h
A clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
A clang-tools-extra/clang-tidy/llvm/UseRangesCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/LLVMLibcTidyModule.cpp
M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.h
M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.h
M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableTable/confusables.txt
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.cpp
M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.h
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.h
M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.cpp
M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.h
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
M clang-tools-extra/clang-tidy/misc/MiscTidyModule.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.h
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.h
M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.h
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.h
M clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp
M clang-tools-extra/clang-tidy/misc/NonCopyableObjects.h
M clang-tools-extra/clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.cpp
M clang-tools-extra/clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.h
A clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
A clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.h
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.h
M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h
M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.h
M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.h
M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.cpp
M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.h
M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.h
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.h
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.h
A clang-tools-extra/clang-tidy/modernize/AvoidSetjmpLongjmpCheck.cpp
A clang-tools-extra/clang-tidy/modernize/AvoidSetjmpLongjmpCheck.h
A clang-tools-extra/clang-tidy/modernize/AvoidVariadicFunctionsCheck.cpp
A clang-tools-extra/clang-tidy/modernize/AvoidVariadicFunctionsCheck.h
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.h
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.h
M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.h
M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.h
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.h
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.h
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.h
M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.cpp
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.h
M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.h
M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.h
M clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.h
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.h
M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.h
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.h
M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.h
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.h
A clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
A clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.h
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.h
A clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
A clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.h
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.h
M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.cpp
M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.h
M clang-tools-extra/clang-tidy/mpi/MPITidyModule.cpp
M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.cpp
M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.h
M clang-tools-extra/clang-tidy/objc/AssertEquals.cpp
M clang-tools-extra/clang-tidy/objc/AssertEquals.h
M clang-tools-extra/clang-tidy/objc/AvoidNSErrorInitCheck.cpp
M clang-tools-extra/clang-tidy/objc/AvoidNSErrorInitCheck.h
M clang-tools-extra/clang-tidy/objc/DeallocInCategoryCheck.cpp
M clang-tools-extra/clang-tidy/objc/DeallocInCategoryCheck.h
M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.cpp
M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.h
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.cpp
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.h
M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.cpp
M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.h
M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.cpp
M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.h
M clang-tools-extra/clang-tidy/objc/ObjCTidyModule.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.h
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.h
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/openmp/OpenMPTidyModule.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.h
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.h
M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.h
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.h
M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.cpp
M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.h
M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.h
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.h
M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.h
M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.h
M clang-tools-extra/clang-tidy/performance/NoIntToPtrCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoIntToPtrCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.h
M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.cpp
M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.h
M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.cpp
M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/clang-tidy/plugin/ClangTidyPlugin.cpp
A clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.cpp
A clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.h
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.cpp
M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.h
M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.cpp
M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.h
M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.cpp
M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.h
M clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
M clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
A clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.cpp
A clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.cpp
M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.h
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.h
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.h
M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.h
M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.h
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.h
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.h
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.h
M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.h
M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.h
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.h
M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.cpp
M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.h
M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.h
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.h
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.h
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.h
M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.cpp
M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.h
M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.cpp
M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.h
M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.cpp
M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.h
M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp
M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.h
M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.h
M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.h
M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.h
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.h
A clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.h
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.h
M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.h
M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.h
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.h
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
M clang-tools-extra/clang-tidy/readability/StringCompareCheck.h
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.h
M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.cpp
M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.h
M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.cpp
M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.h
M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.h
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.h
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.h
M clang-tools-extra/clang-tidy/rename_check.py
M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.h
M clang-tools-extra/clang-tidy/tool/ClangTidyToolMain.cpp
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
M clang-tools-extra/clang-tidy/utils/ASTUtils.h
M clang-tools-extra/clang-tidy/utils/Aliasing.cpp
M clang-tools-extra/clang-tidy/utils/Aliasing.h
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.h
M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.h
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.h
M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
M clang-tools-extra/clang-tidy/utils/ExprSequence.h
M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.cpp
M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.h
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.cpp
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.h
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/HeaderGuard.h
M clang-tools-extra/clang-tidy/utils/IncludeInserter.cpp
M clang-tools-extra/clang-tidy/utils/IncludeInserter.h
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clang-tidy/utils/IncludeSorter.h
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/clang-tidy/utils/Matchers.cpp
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.cpp
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
M clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
M clang-tools-extra/clang-tidy/utils/OptionsUtils.h
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.h
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
M clang-tools-extra/clang-tidy/utils/UsingInserter.cpp
M clang-tools-extra/clang-tidy/utils/UsingInserter.h
M clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
M clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.h
M clang-tools-extra/clang-tidy/zircon/ZirconTidyModule.cpp
M clang-tools-extra/clangd/AST.cpp
M clang-tools-extra/clangd/AST.h
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeComplete.h
M clang-tools-extra/clangd/CodeCompletionStrings.cpp
M clang-tools-extra/clangd/CollectMacros.cpp
M clang-tools-extra/clangd/CollectMacros.h
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/Compiler.h
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/Diagnostics.h
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FeatureModule.cpp
M clang-tools-extra/clangd/FeatureModule.h
M clang-tools-extra/clangd/FindSymbols.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/FindTarget.h
M clang-tools-extra/clangd/GlobalCompilationDatabase.cpp
M clang-tools-extra/clangd/GlobalCompilationDatabase.h
M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
M clang-tools-extra/clangd/Headers.cpp
M clang-tools-extra/clangd/Headers.h
R clang-tools-extra/clangd/HeuristicResolver.cpp
R clang-tools-extra/clangd/HeuristicResolver.h
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/Hover.h
M clang-tools-extra/clangd/IncludeCleaner.cpp
M clang-tools-extra/clangd/IncludeCleaner.h
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/InlayHints.h
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ModulesBuilder.h
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/ParsedAST.h
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/Preamble.h
M clang-tools-extra/clangd/ProjectModules.h
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
M clang-tools-extra/clangd/Quality.cpp
M clang-tools-extra/clangd/ScanningProjectModules.cpp
M clang-tools-extra/clangd/Selection.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang-tools-extra/clangd/SemanticSelection.cpp
M clang-tools-extra/clangd/SourceCode.cpp
A clang-tools-extra/clangd/SymbolDocumentation.cpp
A clang-tools-extra/clangd/SymbolDocumentation.h
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/TUScheduler.cpp
M clang-tools-extra/clangd/TUScheduler.h
M clang-tools-extra/clangd/TidyProvider.cpp
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/XRefs.h
M clang-tools-extra/clangd/benchmarks/IndexBenchmark.cpp
M clang-tools-extra/clangd/index/Background.cpp
M clang-tools-extra/clangd/index/Background.h
M clang-tools-extra/clangd/index/BackgroundRebuild.cpp
M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/Index.cpp
M clang-tools-extra/clangd/index/Index.h
M clang-tools-extra/clangd/index/MemIndex.cpp
M clang-tools-extra/clangd/index/MemIndex.h
M clang-tools-extra/clangd/index/Merge.cpp
M clang-tools-extra/clangd/index/Merge.h
M clang-tools-extra/clangd/index/ProjectAware.cpp
M clang-tools-extra/clangd/index/Ref.h
M clang-tools-extra/clangd/index/Relation.cpp
M clang-tools-extra/clangd/index/Serialization.cpp
M clang-tools-extra/clangd/index/Serialization.h
M clang-tools-extra/clangd/index/StdLib.cpp
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/SymbolCollector.h
M clang-tools-extra/clangd/index/YAMLSerialization.cpp
M clang-tools-extra/clangd/index/dex/Dex.cpp
M clang-tools-extra/clangd/index/dex/Dex.h
M clang-tools-extra/clangd/index/dex/Trigram.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/index/remote/Client.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/Service.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.h
M clang-tools-extra/clangd/index/remote/server/Server.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/Rename.h
M clang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp
M clang-tools-extra/clangd/refactor/tweaks/AnnotateHighlightings.cpp
M clang-tools-extra/clangd/refactor/tweaks/CMakeLists.txt
M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExpandDeducedType.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExtractFunction.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
A clang-tools-extra/clangd/refactor/tweaks/OverridePureVirtuals.cpp
M clang-tools-extra/clangd/refactor/tweaks/PopulateSwitch.cpp
M clang-tools-extra/clangd/refactor/tweaks/RemoveUsingNamespace.cpp
M clang-tools-extra/clangd/support/DirectiveTree.cpp
M clang-tools-extra/clangd/support/DirectiveTree.h
M clang-tools-extra/clangd/support/Markup.cpp
M clang-tools-extra/clangd/support/Markup.h
M clang-tools-extra/clangd/test/CMakeLists.txt
M clang-tools-extra/clangd/test/formatting.test
M clang-tools-extra/clangd/test/index-serialization/Inputs/sample.idx
M clang-tools-extra/clangd/test/initialize-params.test
M clang-tools-extra/clangd/test/lit.cfg.py
M clang-tools-extra/clangd/test/lit.site.cfg.py.in
A clang-tools-extra/clangd/test/module_dependencies.test
A clang-tools-extra/clangd/test/modules_no_cdb.test
M clang-tools-extra/clangd/test/path-mappings.test
A clang-tools-extra/clangd/test/positionencoding.test
A clang-tools-extra/clangd/test/signature-help-unescaped.test
M clang-tools-extra/clangd/test/system-include-extractor.test
M clang-tools-extra/clangd/test/type-hierarchy-ext.test
M clang-tools-extra/clangd/test/type-hierarchy.test
M clang-tools-extra/clangd/tool/Check.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/ASTTests.cpp
M clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
M clang-tools-extra/clangd/unittests/ClangdTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
M clang-tools-extra/clangd/unittests/DexTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/DumpASTTests.cpp
A clang-tools-extra/clangd/unittests/FeatureModulesRegistryTests.cpp
M clang-tools-extra/clangd/unittests/FileIndexTests.cpp
M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
M clang-tools-extra/clangd/unittests/HeaderSourceSwitchTests.cpp
M clang-tools-extra/clangd/unittests/HeadersTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
M clang-tools-extra/clangd/unittests/IndexTests.cpp
M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
M clang-tools-extra/clangd/unittests/Matchers.h
M clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
M clang-tools-extra/clangd/unittests/QualityTests.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/SelectionTests.cpp
M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
M clang-tools-extra/clangd/unittests/SemanticSelectionTests.cpp
M clang-tools-extra/clangd/unittests/SerializationTests.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
A clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
M clang-tools-extra/clangd/unittests/SymbolInfoTests.cpp
M clang-tools-extra/clangd/unittests/SyncAPI.cpp
M clang-tools-extra/clangd/unittests/SyncAPI.h
M clang-tools-extra/clangd/unittests/TestIndex.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/TestWorkspace.cpp
M clang-tools-extra/clangd/unittests/TypeHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
M clang-tools-extra/clangd/unittests/support/MarkupTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/DefineInlineTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/ExpandDeducedTypeTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/ExtractFunctionTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/ExtractVariableTests.cpp
A clang-tools-extra/clangd/unittests/tweaks/OverridePureVirtualsTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/docs/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/ReleaseNotesTemplate.txt
A clang-tools-extra/docs/clang-change-namespace.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
A clang-tools-extra/docs/clang-tidy/QueryBasedCustomChecks.rst
M clang-tools-extra/docs/clang-tidy/checks/android/comparison-in-temp-failure-retry.rst
M clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/argument-comment.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/assert-side-effect.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/branch-clone.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/capturing-this-in-member-variable.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/casting-through-void.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/command-processor.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/compare-pointer-to-member-virtual-function.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-init.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/derived-method-shadowing-base-method.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/easily-swappable-parameters.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/implicit-widening-of-multiplication-result.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/incorrect-enable-shared-from-this.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/invalid-enum-default-initialization.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/misleading-setter-of-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/multi-level-implicit-pointer-conversion.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/narrowing-conversions.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/nondeterministic-pointer-iteration-order.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/redundant-branch-condition.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/standalone-empty.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/string-constructor.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-enum-usage.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-stringview-data-usage.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/tagged-union-member-count.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/throwing-static-initialization.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/too-small-loop-variable.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-string-to-number-conversion.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-self-assignment.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/unintended-char-ostream-output.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-local-non-trivial-variable.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/dcl50-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err34-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err52-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err58-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.PureVirtualCall.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.SelfAssignment.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/optin.osx.OSObjectCStyleCast.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/osx.MIG.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/osx.OSObjectRetainCount.rst
M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.CopyToSelf.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.Uninitialized.rst
R clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/valist.Unterminated.rst
M clang-tools-extra/docs/clang-tidy/checks/concurrency/mt-unsafe.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-goto.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/missing-std-forward.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/narrowing-conversions.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/no-malloc.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/owning-memory.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-avoid-unchecked-container-access.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-constant-array-index.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-pointer-arithmetic.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/rvalue-reference-param-not-moved.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/special-member-functions.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
A clang-tools-extra/docs/clang-tidy/checks/google/runtime-float.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/llvm/namespace-comment.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/prefer-static-over-anonymous-namespace.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/use-new-mlir-op-builder.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/coroutine-hostile-raii.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/non-private-member-variables-in-classes.rst
A clang-tools-extra/docs/clang-tidy/checks/misc/override-with-different-visibility.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/redundant-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/unused-parameters.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/use-internal-linkage.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-bind.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-c-arrays.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-setjmp-longjmp.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-variadic-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/deprecated-headers.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/loop-convert.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/make-shared.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/make-unique.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/pass-by-value.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/raw-string-literal.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/replace-auto-ptr.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/replace-disallow-copy-and-assign-macro.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-auto.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-emplace.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/use-integer-sign-comparison.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-ranges.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/use-scoped-lock.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-trailing-return-type.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/enum-size.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/for-range-copy.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/noexcept-move-constructor.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-copy-initialization.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/docs/clang-tidy/checks/portability/avoid-pragma-once.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/container-data-pointer.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/function-cognitive-complexity.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/function-size.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/inconsistent-declaration-parameter-name.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/misleading-indentation.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/named-parameter.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/qualified-auto.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-parentheses.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-smartptr-get.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/use-concise-preprocessor-directives.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/docs/clangd/DeveloperDocumentation.rst
M clang-tools-extra/docs/doxygen.cfg.in
M clang-tools-extra/docs/index.rst
M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Analysis.h
M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
M clang-tools-extra/include-cleaner/lib/Analysis.cpp
M clang-tools-extra/include-cleaner/lib/AnalysisInternal.h
M clang-tools-extra/include-cleaner/lib/FindHeaders.cpp
M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
M clang-tools-extra/include-cleaner/lib/LocateSymbol.cpp
M clang-tools-extra/include-cleaner/lib/Record.cpp
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
M clang-tools-extra/include-cleaner/unittests/LocateSymbolTest.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/CoverageChecker.cpp
M clang-tools-extra/modularize/Modularize.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/modularize/ModuleAssistant.cpp
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
M clang-tools-extra/test/CMakeLists.txt
M clang-tools-extra/test/clang-apply-replacements/basic.cpp
M clang-tools-extra/test/clang-apply-replacements/conflict.cpp
M clang-tools-extra/test/clang-apply-replacements/crlf.cpp
M clang-tools-extra/test/clang-apply-replacements/format-header.cpp
M clang-tools-extra/test/clang-apply-replacements/format.cpp
M clang-tools-extra/test/clang-apply-replacements/identical-in-TU.cpp
M clang-tools-extra/test/clang-apply-replacements/identical.cpp
M clang-tools-extra/test/clang-apply-replacements/ignore-conflict.cpp
M clang-tools-extra/test/clang-apply-replacements/invalid-files.cpp
M clang-tools-extra/test/clang-apply-replacements/order-dependent.cpp
M clang-tools-extra/test/clang-apply-replacements/relative-paths.cpp
M clang-tools-extra/test/clang-apply-replacements/yml-basic.cpp
M clang-tools-extra/test/clang-change-namespace/allow-list.cpp
M clang-tools-extra/test/clang-change-namespace/macro.cpp
A clang-tools-extra/test/clang-doc/DR-131697.cpp
A clang-tools-extra/test/clang-doc/DR-141990.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Calculator.h
M clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Circle.h
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Calculator.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Rectangle.cpp
M clang-tools-extra/test/clang-doc/assets.cpp
A clang-tools-extra/test/clang-doc/basic-project.mustache.test
M clang-tools-extra/test/clang-doc/basic-project.test
A clang-tools-extra/test/clang-doc/builtin_types.cpp
A clang-tools-extra/test/clang-doc/comments-in-macros.cpp
A clang-tools-extra/test/clang-doc/conversion_function.cpp
M clang-tools-extra/test/clang-doc/enum.cpp
A clang-tools-extra/test/clang-doc/invalid-options.cpp
A clang-tools-extra/test/clang-doc/json/class-requires.cpp
A clang-tools-extra/test/clang-doc/json/class-specialization.cpp
A clang-tools-extra/test/clang-doc/json/class-template.cpp
A clang-tools-extra/test/clang-doc/json/class.cpp
A clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
A clang-tools-extra/test/clang-doc/json/concept.cpp
A clang-tools-extra/test/clang-doc/json/function-requires.cpp
A clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
A clang-tools-extra/test/clang-doc/json/method-template.cpp
A clang-tools-extra/test/clang-doc/json/namespace.cpp
A clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
A clang-tools-extra/test/clang-doc/long-name.cpp
A clang-tools-extra/test/clang-doc/mustache-index.cpp
A clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp
M clang-tools-extra/test/clang-doc/namespace.cpp
M clang-tools-extra/test/clang-doc/single-file-public.cpp
M clang-tools-extra/test/clang-doc/single-file.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
M clang-tools-extra/test/clang-include-fixer/include_path.cpp
M clang-tools-extra/test/clang-include-fixer/multiple_fixes.cpp
M clang-tools-extra/test/clang-include-fixer/yamldb_autodetect.cpp
M clang-tools-extra/test/clang-move/move-class.cpp
M clang-tools-extra/test/clang-move/move-enum-decl.cpp
M clang-tools-extra/test/clang-move/move-function.cpp
M clang-tools-extra/test/clang-move/move-multiple-classes.cpp
M clang-tools-extra/test/clang-move/move-template-class.cpp
M clang-tools-extra/test/clang-move/move-type-alias.cpp
M clang-tools-extra/test/clang-move/move-used-helper-decls.cpp
M clang-tools-extra/test/clang-move/move-var.cpp
M clang-tools-extra/test/clang-move/no-move-macro-helpers.cpp
A clang-tools-extra/test/clang-query/trailing-comma.c
A clang-tools-extra/test/clang-reorder-fields/AggregatePartialInitialization.c
M clang-tools-extra/test/clang-reorder-fields/AggregatePartialInitialization.cpp
A clang-tools-extra/test/clang-reorder-fields/Comments.cpp
A clang-tools-extra/test/clang-reorder-fields/DesignatedInitializerList.c
A clang-tools-extra/test/clang-reorder-fields/DesignatedInitializerList.cpp
A clang-tools-extra/test/clang-reorder-fields/FieldAnnotationsInMacros.cpp
A clang-tools-extra/test/clang-reorder-fields/FlexibleArrayMember.c
A clang-tools-extra/test/clang-reorder-fields/IdiomaticZeroInitializer.c
A clang-tools-extra/test/clang-reorder-fields/InitializerListExcessElements.c
A clang-tools-extra/test/clang-reorder-fields/MacroExpandsToMultipleFields.cpp
A clang-tools-extra/test/clang-reorder-fields/MacroExpansionField.cpp
A clang-tools-extra/test/clang-reorder-fields/MultipleFieldDeclsInStatement.cpp
A clang-tools-extra/test/clang-reorder-fields/PreprocessorDirectiveAroundDefinition.cpp
A clang-tools-extra/test/clang-reorder-fields/PreprocessorDirectiveAroundFields.cpp
A clang-tools-extra/test/clang-reorder-fields/PreprocessorDirectiveInDefinition.cpp
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/mutex
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/stdfloat
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/system-other.h
M clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/absl/strings/internal-file.h
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-addition.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-conversion-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-float.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-scale.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-subtraction.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-unnecessary-conversion.cpp
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/abseil/time-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/time-subtraction.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/upgrade-duration-conversions.cpp
M clang-tools-extra/test/clang-tidy/checkers/altera/struct-pack-align.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-open.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-socket.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/comparison-in-temp-failure-retry-custom-macro.c
M clang-tools-extra/test/clang-tidy/checkers/android/comparison-in-temp-failure-retry.c
M clang-tools-extra/test/clang-tidy/checkers/boost/use-to-string.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/tagged-union-member-count/stdnamespace.h
A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/tagged-union-member-count/system/pthread.h
M clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/bde/types/bdlb_nullablevalue.h
M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment-strict.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/branch-clone-2.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/branch-clone-macro-crash.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/capturing-this-in-member-variable.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/command-processor.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/copy-constructor-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-ignore.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicit-qualifiers.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-len2.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-len3.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-prefixsuffixname.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-qualifiermixing.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-relatedness.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-relatedness.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-consteval.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-coro.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-rethrow.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-throw.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/fold-init-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/inc-dec-in-conditions-bitint-no-crash.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/infinite-loop.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misleading-setter-of-reference.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/move-forwarding-reference.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/multi-level-implicit-pointer-conversion.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-bitfields.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-conditional-expressions.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-conditional-expressions.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-equivalentbitwidth-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-ignoreconversionfromtypes-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-intemplates-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-long-is-32bits.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-narrowingfloatingpoint-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-narrowinginteger-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-narrowingintegertofloatingpoint-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-pedanticmode-option.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-unsigned-char.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-in-initialization-strlen.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-before-safe.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe-cxx.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-stdc-want-lib-ext1-not-a-literal.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-strlen.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-undef-stdc-want-lib-ext1.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-wcslen.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/optional-value-conversion-construct-from-std.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-c.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/return-const-ref-from-parameter.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/signed-char-misuse-c23.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/spuriously-wake-up-functions.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/spuriously-wake-up-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/standalone-empty.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-constructor.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-string-compare.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/swapped-arguments.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.m
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.mm
M clang-tools-extra/test/clang-tidy/checkers/bugprone/throw-keyword-missing.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/throwing-static-initialization.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-string-to-number-conversion.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-string-to-number-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-self-assignment.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output-cast-type.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions-custom-regex.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable-name-independence.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/env33-c.c
M clang-tools-extra/test/clang-tidy/checkers/cert/err33-c.c
R clang-tools-extra/test/clang-tidy/checkers/cert/err34-c.c
R clang-tools-extra/test/clang-tidy/checkers/cert/err34-c.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/setlongjmp.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/static-object-exception.cpp
M clang-tools-extra/test/clang-tidy/checkers/cert/uppercase-literal-suffix-integer.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/variadic-function-def.cpp
M clang-tools-extra/test/clang-tidy/checkers/concurrency/mt-unsafe-glibc.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-const-or-ref-data-members.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-goto.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/interfaces-global-init.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward-custom-function.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-bitfields.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-equivalentbitwidth-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-ignoreconversionfromtypes-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-intemplates-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-long-is-32bits.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-narrowingfloatingpoint-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-narrowinginteger-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-narrowingintegertofloatingpoint-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-pedanticmode-option.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions-unsigned-char.cpp
R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/narrowing-conversions.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-avoid-unchecked-container-access.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic-pr36489.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-const-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-use-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-static-cast-downcast.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-vararg.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/rvalue-reference-param-not-moved-custom-function.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions-macros.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/virtual-class-destructor.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/incorrect-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/query-incorrect-query.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query-partially-active-check.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/default-arguments-calls.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/multiple-inheritance.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/explicit-constructor.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/objc-avoid-nsobject-new.m
M clang-tools-extra/test/clang-tidy/checkers/google/objc-function-naming.m
M clang-tools-extra/test/clang-tidy/checkers/google/readability-casting.cpp
A clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments-missing-nested-namespaces.cpp
A clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments-missing.cpp
A clang-tools-extra/test/clang-tidy/checkers/google/runtime-float.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/runtime-int-std.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/upgrade-googletest-case.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned2.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned3.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-static-over-anonymous-namespace.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/qualified-auto.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/twine-local.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/use-new-mlir-op-builder.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/override-with-different-visibility/test-system-header.h
M clang-tools-extra/test/clang-tidy/checkers/misc/confusable-identifiers.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers-values.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-transform-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-transform-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values-before-cxx23.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
M clang-tools-extra/test/clang-tidy/checkers/misc/header-include-cycle.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/override-with-different-visibility-ignore.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/override-with-different-visibility-options.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/override-with-different-visibility.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression-2.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/static-assert.c
M clang-tools-extra/test/clang-tidy/checkers/misc/static-assert.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unconventional-assign-operator.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-alias-decls.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters-strict.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.c
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-consteval.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-func.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-macro.hpp
A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-module.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-var.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-auto/containers.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-bind.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-c++20.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-main.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-strings.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-three-arg-main.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-setjmp-longjmp.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-variadic-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-camelback.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-extra.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-lowercase.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-rewritten-binop.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-uppercase.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-shared.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique-macros.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-header.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-multi-fixes.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal-delimiter.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal-replace-shorter.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-auto-ptr.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
A clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits-GH153649.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/unary-static-assert.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast-remove-stars.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-iterator.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-min-type-name-length.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-bool-literals-ignore-macros.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr-basic.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr-c23.c
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-cxx98.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-scope-lock-warn-on-using-and-typedef-false.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-warn-on-single-locks-false.cpp
A 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.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-numbers.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.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-transparent-functors.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/Inputs/unnecessary-value-param/header-fixed.h
M clang-tools-extra/test/clang-tidy/checkers/performance/Inputs/unnecessary-value-param/header.h
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/for-range-copy.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-algorithm.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-string-concatenation.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor-fix.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/trivially-destructible.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/type-promotion-in-math-fn.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization-allowed-types.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization-excluded-container-types.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-coroutine.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-crash.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-header.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
A clang-tools-extra/test/clang-tidy/checkers/portability/Inputs/avoid-pragma-once/lib0.h
A clang-tools-extra/test/clang-tidy/checkers/portability/Inputs/avoid-pragma-once/lib1.h
A clang-tools-extra/test/clang-tidy/checkers/portability/Inputs/avoid-pragma-once/lib2.h
A clang-tools-extra/test/clang-tidy/checkers/portability/avoid-pragma-once.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/restrict-system-includes-transitive.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/std-allocator-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/template-virtual-member-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/global-style1/header.h
M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/global-style2/header.h
A clang-tools-extra/test/clang-tidy/checkers/readability/ambiguous-smartptr-reset-call-custom-pointers.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/ambiguous-smartptr-reset-call.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/bitint-no-crash.c
M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type-macros.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
A 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/convert-member-functions-to-static.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/delete-null-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return-no-warn.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/function-cognitive-complexity-flags.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/function-size-no-member-init-as-stmts.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/function-size.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-lower-case-prefix.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-outofline.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-standard-types.h
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-symlink.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration.c
M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/named-parameter.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration-ignore-macros.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.c
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-inline-specifier.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get-msvc.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/suspicious-call-argument.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-c23.c
A clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-cxx23.cpp
R clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-float16.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-floating-point-opencl-half.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
A clang-tools-extra/test/clang-tidy/checkers/readability/use-concise-preprocessor-directives.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/use-std-min-max.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/4/44/.clang-tidy
M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/4/key-dict/.clang-tidy
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/append-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/empty-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/override-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/root-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/invalid-database/compile_commands.json
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/normalized-path/code.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/normalized-path/error-config/.clang-tidy
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/param/parameters.txt
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-diff.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-run-with-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-store-check-profile-one-tu.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check-not-enable.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/diagnostic.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/dump-config-filtering.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-conflicted-fixes-of-alias-checkers.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-fixes-of-alias-checkers.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/empty-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/export-relpath.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter-symlinks.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/.clang-tidy
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/foo.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/foo.h
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/.clang-tidy
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.h
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/.clang-tidy
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/foo.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/foo.h
A clang-tools-extra/test/clang-tidy/infrastructure/hide-progress-flag-scripts.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/invalid-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/list-checks.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/normalized-path.test
M clang-tools-extra/test/clang-tidy/infrastructure/pr37091.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/quiet-flag.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/read-parameters-from-file-error.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/read-parameters-from-file.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/read_file_config.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/run-clang-tidy-enable-check-profile.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/run-clang-tidy.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/static-analyzer-config.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/static-analyzer.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/system-headers.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/verify-config.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/vfsoverlay.cpp
M clang-tools-extra/test/lit.cfg.py
M clang-tools-extra/test/lit.site.cfg.py.in
M clang-tools-extra/test/modularize/NoProblemsAssistant.modularize
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.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
A clang-tools-extra/unittests/clang-doc/config.h.cmake
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang-tools-extra/unittests/clang-tidy/IncludeCleanerTest.cpp
M clang-tools-extra/unittests/include/common/VirtualFileHelper.h
M clang/.clang-format
A clang/AreaTeamMembers.txt
M clang/CMakeLists.txt
M clang/Maintainers.rst
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/CMakeLists.txt
A clang/bindings/python/tests/cindex/INPUTS/a.inc
A clang/bindings/python/tests/cindex/INPUTS/b.inc
A clang/bindings/python/tests/cindex/INPUTS/testfile.c
M clang/bindings/python/tests/cindex/test_cdb.py
M clang/bindings/python/tests/cindex/test_cursor.py
A clang/bindings/python/tests/cindex/test_cursor_language.py
M clang/bindings/python/tests/cindex/test_diagnostics.py
M clang/bindings/python/tests/cindex/test_enums.py
M clang/bindings/python/tests/cindex/test_file.py
M clang/bindings/python/tests/cindex/test_index.py
A clang/bindings/python/tests/cindex/test_lib.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_source_range.py
M clang/bindings/python/tests/cindex/test_translation_unit.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/caches/Android.cmake
M clang/cmake/caches/Apple-stage1.cmake
A clang/cmake/caches/BOLT-CSSPGO.cmake
M clang/cmake/caches/BOLT-PGO.cmake
M clang/cmake/caches/BOLT.cmake
A clang/cmake/caches/CSSPGO.cmake
M clang/cmake/caches/CrossWinToARMLinux.cmake
A clang/cmake/caches/Fuchsia-stage2-instrumented.cmake
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/cmake/caches/Fuchsia.cmake
M clang/cmake/caches/HLSL.cmake
M clang/cmake/caches/PGO.cmake
M clang/cmake/caches/Release.cmake
M clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
A clang/cmake/caches/release_cpack_pre_build_strip_lto.cmake
M clang/cmake/modules/AddClang.cmake
M clang/cmake/modules/ClangConfig.cmake.in
M clang/docs/APINotes.rst
M clang/docs/AddressSanitizer.rst
M clang/docs/AutomaticReferenceCounting.rst
M clang/docs/BoundsSafety.rst
A clang/docs/BoundsSafetyAdoptionGuide.rst
M clang/docs/BoundsSafetyImplPlans.rst
M clang/docs/CMakeLists.txt
A clang/docs/CXXTypeAwareAllocators.rst
M clang/docs/ClangFormat.rst
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ClangLinkerWrapper.rst
M clang/docs/ClangOffloadBundler.rst
M clang/docs/ClangOffloadPackager.rst
M clang/docs/ClangRepl.rst
M clang/docs/ClangTools.rst
M clang/docs/ClangTransformerTutorial.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/ConstantInterpreter.rst
M clang/docs/ControlFlowIntegrity.rst
M clang/docs/DebuggingCoroutines.rst
M clang/docs/HIPSupport.rst
M clang/docs/HLSL/AvailabilityDiagnostics.rst
M clang/docs/HLSL/FunctionCalls.rst
M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/LeakSanitizer.rst
M clang/docs/LibASTImporter.rst
M clang/docs/LibASTMatchersReference.html
M clang/docs/LibClang.rst
M clang/docs/MSVCCompatibility.rst
M clang/docs/MatrixTypes.rst
M clang/docs/Modules.rst
M clang/docs/Multilib.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/PointerAuthentication.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
A clang/docs/ReleaseNotesTemplate.txt
M clang/docs/SafeBuffers.rst
M clang/docs/SanitizerCoverage.rst
M clang/docs/SanitizerSpecialCaseList.rst
M clang/docs/ShadowCallStack.rst
M clang/docs/SourceBasedCodeCoverage.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/ThinLTO.rst
M clang/docs/ThreadSafetyAnalysis.rst
M clang/docs/Toolchain.rst
A clang/docs/TypeSanitizer.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/docs/UsersManual.rst
A clang/docs/WarningSuppressionMappings.rst
M clang/docs/analyzer/checkers.rst
A clang/docs/analyzer/checkers/storetoimmutable_example.cpp
M clang/docs/analyzer/checkers/unix_malloc_example.c
M clang/docs/analyzer/developer-docs.rst
M clang/docs/analyzer/developer-docs/DebugChecks.rst
A clang/docs/analyzer/developer-docs/PerformanceInvestigation.rst
A clang/docs/analyzer/developer-docs/Statistics.rst
A clang/docs/analyzer/images/example_attribute_nonnull.png
A clang/docs/analyzer/images/example_cf_returns_retained.png
A clang/docs/analyzer/images/example_custom_assert.png
A clang/docs/analyzer/images/example_ns_returns_retained.png
A clang/docs/analyzer/images/example_null_pointer.png
A clang/docs/analyzer/images/example_use_assert.png
A clang/docs/analyzer/images/flamegraph.png
A clang/docs/analyzer/images/speedscope.png
A clang/docs/analyzer/images/uftrace_detailed.png
M clang/docs/analyzer/user-docs.rst
A clang/docs/analyzer/user-docs/Annotations.rst
M clang/docs/analyzer/user-docs/CommandLineUsage.rst
M clang/docs/analyzer/user-docs/CrossTranslationUnit.rst
M clang/docs/analyzer/user-docs/FAQ.rst
M clang/docs/analyzer/user-docs/Installation.rst
A clang/docs/analyzer/user-docs/Options.rst.in
A clang/docs/coro-async-task-continuations.png
A clang/docs/coro-generator-suspended.png
A clang/docs/coro-generator-variables.png
M clang/docs/doxygen.cfg.in
M clang/docs/index.rst
M clang/docs/tools/dump_ast_matchers.py
M clang/docs/tools/dump_format_help.py
M clang/docs/tools/dump_format_style.py
A clang/docs/tools/generate_analyzer_options_docs.py
M clang/examples/Attribute/Attribute.cpp
M clang/examples/CallSuperAttribute/CallSuperAttrInfo.cpp
M clang/include/clang-c/CXString.h
M clang/include/clang-c/FatalErrorHandler.h
M clang/include/clang-c/Index.h
M clang/include/clang-c/Platform.h
M clang/include/clang/APINotes/APINotesManager.h
M clang/include/clang/APINotes/Types.h
R clang/include/clang/ARCMigrate/ARCMT.h
R clang/include/clang/ARCMigrate/ARCMTActions.h
R clang/include/clang/ARCMigrate/FileRemapper.h
M clang/include/clang/AST/APNumericStorage.h
M clang/include/clang/AST/APValue.h
M clang/include/clang/AST/ASTConcept.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTDiagnostic.h
M clang/include/clang/AST/ASTImporter.h
M clang/include/clang/AST/ASTImporterLookupTable.h
M clang/include/clang/AST/ASTLambda.h
M clang/include/clang/AST/ASTMutationListener.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/ASTStructuralEquivalence.h
M clang/include/clang/AST/ASTTypeTraits.h
M clang/include/clang/AST/AbstractBasicReader.h
M clang/include/clang/AST/AbstractBasicWriter.h
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/AttrIterator.h
M clang/include/clang/AST/CXXInheritance.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/CharUnits.h
M clang/include/clang/AST/Comment.h
M clang/include/clang/AST/CommentCommands.td
M clang/include/clang/AST/CommentHTMLTags.td
M clang/include/clang/AST/CommentSema.h
M clang/include/clang/AST/ComputeDependence.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclContextInternals.h
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclGroup.h
M clang/include/clang/AST/DeclID.h
M clang/include/clang/AST/DeclObjC.h
A clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/DeclOpenMP.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/DeclVisitor.h
M clang/include/clang/AST/DeclarationName.h
M clang/include/clang/AST/DependenceFlags.h
M clang/include/clang/AST/DynamicRecursiveASTVisitor.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/ExprConcepts.h
M clang/include/clang/AST/ExprObjC.h
M clang/include/clang/AST/ExprOpenMP.h
M clang/include/clang/AST/ExternalASTMerger.h
M clang/include/clang/AST/ExternalASTSource.h
M clang/include/clang/AST/FormatString.h
M clang/include/clang/AST/GlobalDecl.h
A clang/include/clang/AST/HLSLResource.h
M clang/include/clang/AST/JSONNodeDumper.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/NestedNameSpecifier.h
A clang/include/clang/AST/NestedNameSpecifierBase.h
M clang/include/clang/AST/NonTrivialTypeVisitor.h
M clang/include/clang/AST/ODRHash.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/OperationKinds.def
M clang/include/clang/AST/PrettyPrinter.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/QualTypeNames.h
M clang/include/clang/AST/RecordLayout.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Redeclarable.h
M clang/include/clang/AST/SYCLKernelInfo.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/StmtCXX.h
M clang/include/clang/AST/StmtObjC.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/StmtOpenMP.h
A clang/include/clang/AST/StmtSYCL.h
M clang/include/clang/AST/StmtVisitor.h
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/AST/TemplateName.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
A clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/AST/UnresolvedSet.h
M clang/include/clang/ASTMatchers/ASTMatchFinder.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/ASTMatchers/ASTMatchersMacros.h
A clang/include/clang/ASTMatchers/LowLevelHelpers.h
M clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
A clang/include/clang/Analysis/Analyses/LifetimeAnnotations.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety.h
M clang/include/clang/Analysis/Analyses/LiveVariables.h
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
M clang/include/clang/Analysis/Analyses/UninitializedValues.h
M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
M clang/include/clang/Analysis/AnalysisDeclContext.h
M clang/include/clang/Analysis/CFG.h
M clang/include/clang/Analysis/CallGraph.h
M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/include/clang/Analysis/FlowSensitive/Formula.h
A clang/include/clang/Analysis/FlowSensitive/FormulaSerialization.h
M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
M clang/include/clang/Analysis/FlowSensitive/RecordOps.h
A clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/include/clang/Analysis/FlowSensitive/StorageLocation.h
M clang/include/clang/Analysis/PathDiagnostic.h
M clang/include/clang/Analysis/ProgramPoint.h
A clang/include/clang/Analysis/Support/FixitUtil.h
A clang/include/clang/Basic/AArch64ACLETypes.def
R clang/include/clang/Basic/AArch64SVEACLETypes.def
M clang/include/clang/Basic/ABI.h
A clang/include/clang/Basic/ABIVersions.def
M clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Basic/AddressSpaces.h
A clang/include/clang/Basic/AllDiagnosticKinds.inc
M clang/include/clang/Basic/AllDiagnostics.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/AttributeCommonInfo.h
A clang/include/clang/Basic/AttributeScopeInfo.h
M clang/include/clang/Basic/Attributes.h
M clang/include/clang/Basic/BuiltinHeaders.def
A clang/include/clang/Basic/BuiltinTemplates.td
M clang/include/clang/Basic/Builtins.def
M clang/include/clang/Basic/Builtins.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsARM.def
M clang/include/clang/Basic/BuiltinsBase.td
A clang/include/clang/Basic/BuiltinsDirectX.td
R clang/include/clang/Basic/BuiltinsHexagon.def
A clang/include/clang/Basic/BuiltinsHexagon.td
R clang/include/clang/Basic/BuiltinsHexagonDep.def
R clang/include/clang/Basic/BuiltinsLoongArch.def
M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
M clang/include/clang/Basic/BuiltinsLoongArchLSX.def
R clang/include/clang/Basic/BuiltinsNEON.def
R clang/include/clang/Basic/BuiltinsNVPTX.def
A clang/include/clang/Basic/BuiltinsNVPTX.td
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/BuiltinsRISCV.td
R clang/include/clang/Basic/BuiltinsRISCVVector.def
A clang/include/clang/Basic/BuiltinsRISCVXAndes.td
M clang/include/clang/Basic/BuiltinsRISCVXCV.td
A clang/include/clang/Basic/BuiltinsRISCVXMIPS.td
R clang/include/clang/Basic/BuiltinsSME.def
A clang/include/clang/Basic/BuiltinsSPIRVBase.td
A clang/include/clang/Basic/BuiltinsSPIRVCL.td
A clang/include/clang/Basic/BuiltinsSPIRVCommon.td
A clang/include/clang/Basic/BuiltinsSPIRVVK.td
R clang/include/clang/Basic/BuiltinsSVE.def
M clang/include/clang/Basic/BuiltinsSystemZ.def
M clang/include/clang/Basic/BuiltinsWebAssembly.def
R clang/include/clang/Basic/BuiltinsX86.def
M clang/include/clang/Basic/BuiltinsX86.td
A clang/include/clang/Basic/BuiltinsX86Base.td
R clang/include/clang/Basic/BuiltinsX86_64.def
A clang/include/clang/Basic/BuiltinsX86_64.td
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/Cuda.h
M clang/include/clang/Basic/CustomizableOptional.h
M clang/include/clang/Basic/DarwinSDKInfo.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticAST.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticAnalysis.h
M clang/include/clang/Basic/DiagnosticCategories.h
M clang/include/clang/Basic/DiagnosticComment.h
M clang/include/clang/Basic/DiagnosticCommentKinds.td
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticCrossTU.h
M clang/include/clang/Basic/DiagnosticDriver.h
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontend.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticInstallAPI.h
M clang/include/clang/Basic/DiagnosticLex.h
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticParse.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticRefactoring.h
M clang/include/clang/Basic/DiagnosticRefactoringKinds.td
M clang/include/clang/Basic/DiagnosticSema.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerialization.h
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
A clang/include/clang/Basic/DiagnosticTrap.h
A clang/include/clang/Basic/DiagnosticTrapKinds.td
M clang/include/clang/Basic/FPOptions.def
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/FileEntry.h
M clang/include/clang/Basic/FileManager.h
M clang/include/clang/Basic/HeaderInclude.h
M clang/include/clang/Basic/IdentifierTable.h
M clang/include/clang/Basic/JsonSupport.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/NoSanitizeList.h
M clang/include/clang/Basic/ObjCRuntime.h
A clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Basic/PPCTypes.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Basic/ProfileList.h
M clang/include/clang/Basic/SanitizerSpecialCaseList.h
M clang/include/clang/Basic/Sanitizers.def
M clang/include/clang/Basic/Sanitizers.h
M clang/include/clang/Basic/Sarif.h
A clang/include/clang/Basic/SimpleTypoCorrection.h
M clang/include/clang/Basic/SourceLocation.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/Specifiers.h
M clang/include/clang/Basic/Stack.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/SyncScope.h
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TargetOSMacros.def
M clang/include/clang/Basic/TargetOptions.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/TokenKinds.h
M clang/include/clang/Basic/TypeNodes.td
A clang/include/clang/Basic/UnsignedOrNone.h
M clang/include/clang/Basic/Version.inc.in
M clang/include/clang/Basic/arm_immcheck_incl.td
M clang/include/clang/Basic/arm_mve.td
M clang/include/clang/Basic/arm_mve_defs.td
M clang/include/clang/Basic/arm_neon.td
M clang/include/clang/Basic/arm_neon_incl.td
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/Basic/arm_sve_sme_incl.td
A clang/include/clang/Basic/riscv_andes_vector.td
M clang/include/clang/Basic/riscv_sifive_vector.td
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
A clang/include/clang/CIR/ABIArgInfo.h
M clang/include/clang/CIR/CIRGenerator.h
A clang/include/clang/CIR/CIRToCIRPasses.h
M clang/include/clang/CIR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/CMakeLists.txt
A clang/include/clang/CIR/Dialect/IR/CIRAttrConstraints.td
A clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
A clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
A clang/include/clang/CIR/Dialect/IR/CIRDataLayout.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
A clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
A clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
A clang/include/clang/CIR/Dialect/IR/CIRTypes.h
A clang/include/clang/CIR/Dialect/IR/CIRTypes.td
A clang/include/clang/CIR/Dialect/IR/CIRTypesDetails.h
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.h
A clang/include/clang/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.h
A clang/include/clang/CIR/Dialect/Passes.h
A clang/include/clang/CIR/Dialect/Passes.td
A clang/include/clang/CIR/FrontendAction/.clang-tidy
M clang/include/clang/CIR/FrontendAction/CIRGenAction.h
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
A clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
A clang/include/clang/CIR/Interfaces/CIROpInterfaces.h
A clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
A clang/include/clang/CIR/Interfaces/CIRTypeInterfaces.h
A clang/include/clang/CIR/Interfaces/CIRTypeInterfaces.td
A clang/include/clang/CIR/Interfaces/CMakeLists.txt
A clang/include/clang/CIR/LowerToLLVM.h
A clang/include/clang/CIR/LoweringHelpers.h
A clang/include/clang/CIR/MissingFeatures.h
A clang/include/clang/CIR/Passes.h
A clang/include/clang/CIR/TypeEvaluationKind.h
R clang/include/clang/CIRFrontendAction/.clang-tidy
M clang/include/clang/CodeGen/BackendUtil.h
M clang/include/clang/CodeGen/CGFunctionInfo.h
M clang/include/clang/CodeGen/CodeGenABITypes.h
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/include/clang/Config/config.h.cmake
M clang/include/clang/Driver/Action.h
A clang/include/clang/Driver/CommonArgs.h
M clang/include/clang/Driver/Compilation.h
A clang/include/clang/Driver/CudaInstallationDetector.h
M clang/include/clang/Driver/Distro.h
M clang/include/clang/Driver/Driver.h
A clang/include/clang/Driver/LazyDetector.h
M clang/include/clang/Driver/Multilib.h
M clang/include/clang/Driver/OffloadBundler.h
M clang/include/clang/Driver/Options.td
A clang/include/clang/Driver/RocmInstallationDetector.h
M clang/include/clang/Driver/SanitizerArgs.h
A clang/include/clang/Driver/SyclInstallationDetector.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Driver/Types.def
M clang/include/clang/ExtractAPI/API.h
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTConsumers.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CommandLineSourceLoc.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/FrontendAction.h
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/PrecompiledPreamble.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/Frontend/Utils.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Index/IndexSymbol.h
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/Interpreter/Interpreter.h
M clang/include/clang/Interpreter/PartialTranslationUnit.h
M clang/include/clang/Interpreter/Value.h
M clang/include/clang/Lex/DependencyDirectivesScanner.h
A clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/HeaderSearchOptions.h
A clang/include/clang/Lex/LexHLSLRootSignature.h
M clang/include/clang/Lex/Lexer.h
M clang/include/clang/Lex/LiteralSupport.h
M clang/include/clang/Lex/ModuleLoader.h
M clang/include/clang/Lex/ModuleMap.h
A clang/include/clang/Lex/ModuleMapFile.h
A clang/include/clang/Lex/NoTrivialPPDirectiveTracer.h
M clang/include/clang/Lex/PPCallbacks.h
M clang/include/clang/Lex/PreprocessingRecord.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/include/clang/Lex/Token.h
M clang/include/clang/Lex/TokenLexer.h
M clang/include/clang/Parse/LoopHint.h
R clang/include/clang/Parse/ParseDiagnostic.h
A clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Parse/RAIIObjectsForParser.h
M clang/include/clang/Sema/AnalysisBasedWarnings.h
M clang/include/clang/Sema/CMakeLists.txt
M clang/include/clang/Sema/CodeCompleteConsumer.h
M clang/include/clang/Sema/DeclSpec.h
M clang/include/clang/Sema/EnterExpressionEvaluationContext.h
M clang/include/clang/Sema/HLSLExternalSemaSource.h
A clang/include/clang/Sema/HeuristicResolver.h
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/Sema/Lookup.h
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Ownership.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/include/clang/Sema/ParsedTemplate.h
M clang/include/clang/Sema/RISCVIntrinsicManager.h
M clang/include/clang/Sema/Redeclaration.h
M clang/include/clang/Sema/Scope.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaAMDGPU.h
M clang/include/clang/Sema/SemaARM.h
M clang/include/clang/Sema/SemaBase.h
M clang/include/clang/Sema/SemaCUDA.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/include/clang/Sema/SemaConcept.h
A clang/include/clang/Sema/SemaDirectX.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaInternal.h
M clang/include/clang/Sema/SemaLambda.h
M clang/include/clang/Sema/SemaObjC.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Sema/SemaPseudoObject.h
M clang/include/clang/Sema/SemaRISCV.h
A clang/include/clang/Sema/SemaSPIRV.h
M clang/include/clang/Sema/SemaSYCL.h
M clang/include/clang/Sema/SemaWasm.h
M clang/include/clang/Sema/SemaX86.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Sema/TemplateDeduction.h
M clang/include/clang/Sema/TypoCorrection.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTDeserializationListener.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ContinuousRangeMap.h
A clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/include/clang/Serialization/SourceLocationEncoding.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
M clang/include/clang/StaticAnalyzer/Core/Checker.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
A clang/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntPtr.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
A clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h
M clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistry.h
M clang/include/clang/Support/Compiler.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
A clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/include/clang/Tooling/Inclusions/IncludeStyle.h
M clang/include/clang/Tooling/Refactoring/Lookup.h
M clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h
M clang/include/clang/Tooling/Refactoring/RefactoringOptionVisitor.h
M clang/include/clang/Tooling/Tooling.h
M clang/include/clang/Tooling/Transformer/Transformer.h
M clang/include/module.modulemap
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesManager.cpp
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesTypes.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
R clang/lib/ARCMigrate/ARCMT.cpp
R clang/lib/ARCMigrate/ARCMTActions.cpp
R clang/lib/ARCMigrate/CMakeLists.txt
R clang/lib/ARCMigrate/FileRemapper.cpp
R clang/lib/ARCMigrate/Internals.h
R clang/lib/ARCMigrate/ObjCMT.cpp
R clang/lib/ARCMigrate/PlistReporter.cpp
R clang/lib/ARCMigrate/TransAPIUses.cpp
R clang/lib/ARCMigrate/TransARCAssign.cpp
R clang/lib/ARCMigrate/TransAutoreleasePool.cpp
R clang/lib/ARCMigrate/TransBlockObjCVariable.cpp
R clang/lib/ARCMigrate/TransEmptyStatementsAndDealloc.cpp
R clang/lib/ARCMigrate/TransGCAttrs.cpp
R clang/lib/ARCMigrate/TransGCCalls.cpp
R clang/lib/ARCMigrate/TransProperties.cpp
R clang/lib/ARCMigrate/TransProtectedScope.cpp
R clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp
R clang/lib/ARCMigrate/TransUnbridgedCasts.cpp
R clang/lib/ARCMigrate/TransUnusedInitDelegate.cpp
R clang/lib/ARCMigrate/TransZeroOutPropsInDealloc.cpp
R clang/lib/ARCMigrate/TransformActions.cpp
R clang/lib/ARCMigrate/Transforms.cpp
R clang/lib/ARCMigrate/Transforms.h
M clang/lib/AST/APValue.cpp
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTDumper.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTImporterLookupTable.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ASTTypeTraits.cpp
M clang/lib/AST/AttrImpl.cpp
A clang/lib/AST/ByteCode/BitcastBuffer.cpp
A clang/lib/AST/ByteCode/BitcastBuffer.h
M clang/lib/AST/ByteCode/Boolean.h
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/DynamicAllocator.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/lib/AST/ByteCode/EvaluationResult.h
M clang/lib/AST/ByteCode/FixedPoint.h
M clang/lib/AST/ByteCode/Floating.h
R clang/lib/AST/ByteCode/Frame.cpp
M clang/lib/AST/ByteCode/Frame.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/FunctionPointer.cpp
M clang/lib/AST/ByteCode/FunctionPointer.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpShared.cpp
M clang/lib/AST/ByteCode/InterpShared.h
M clang/lib/AST/ByteCode/InterpStack.cpp
M clang/lib/AST/ByteCode/InterpStack.h
M clang/lib/AST/ByteCode/InterpState.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/MemberPointer.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/PrimType.cpp
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/ByteCode/Record.cpp
M clang/lib/AST/ByteCode/Record.h
M clang/lib/AST/ByteCode/Source.cpp
M clang/lib/AST/ByteCode/Source.h
M clang/lib/AST/ByteCode/State.cpp
M clang/lib/AST/ByteCode/State.h
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/CXXInheritance.cpp
M clang/lib/AST/Comment.cpp
M clang/lib/AST/CommentCommandTraits.cpp
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/ComparisonCategories.cpp
M clang/lib/AST/ComputeDependence.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclFriend.cpp
M clang/lib/AST/DeclGroup.cpp
M clang/lib/AST/DeclObjC.cpp
A clang/lib/AST/DeclOpenACC.cpp
M clang/lib/AST/DeclOpenMP.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/DeclarationName.cpp
M clang/lib/AST/DynamicRecursiveASTVisitor.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprClassification.cpp
M clang/lib/AST/ExprConcepts.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ExprObjC.cpp
M clang/lib/AST/ExternalASTMerger.cpp
M clang/lib/AST/ExternalASTSource.cpp
M clang/lib/AST/FormatString.cpp
M clang/lib/AST/InheritViz.cpp
M clang/lib/AST/ItaniumCXXABI.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Linkage.h
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NSAPI.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRDiagsEmitter.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/OSLog.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/ParentMap.cpp
M clang/lib/AST/ParentMapContext.cpp
M clang/lib/AST/PrintfFormatString.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/Randstruct.cpp
M clang/lib/AST/RawCommentList.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/ScanfFormatString.cpp
M clang/lib/AST/Stmt.cpp
M clang/lib/AST/StmtCXX.cpp
M clang/lib/AST/StmtIterator.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TemplateName.cpp
R clang/lib/Driver/ToolChains/CommonArgs.h
R clang/lib/Driver/ToolChains/LazyDetector.h
R clang/test/ARCMT/Inputs/Module.framework/Module
R clang/test/Driver/Inputs/libomptarget/libomptarget-nvptx-sm_52.bc
R clang/www/analyzer/images/example_attribute_nonnull.png
R clang/www/analyzer/images/example_cf_returns_retained.png
R clang/www/analyzer/images/example_custom_assert.png
R clang/www/analyzer/images/example_ns_returns_retained.png
R clang/www/analyzer/images/example_null_pointer.png
R clang/www/analyzer/images/example_use_assert.png
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/7be0b9e05cd1...62eeac6232e3
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