[all-commits] [llvm/llvm-project] b4b89a: [Unifomity] Fix type of ValueRefNull (NFC)
ZhaoQi via All-commits
all-commits at lists.llvm.org
Sun Sep 28 23:04:23 PDT 2025
Branch: refs/heads/users/zhaoqi5/test-isxxxcheap
Home: https://github.com/llvm/llvm-project
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: 1362a744ac76b2df204e0bda1d9ef8b68b98eb87
https://github.com/llvm/llvm-project/commit/1362a744ac76b2df204e0bda1d9ef8b68b98eb87
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-29 (Mon, 29 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/containers/github-action-ci/Dockerfile
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
M bolt/lib/Core/GDBIndex.cpp
M bolt/lib/Target/AArch64/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/throw-keyword-missing.cpp
M clang/CMakeLists.txt
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/ASTContext.h
M clang/include/clang/AST/ExprCXX.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/AST/TypeBase.h
M clang/include/clang/Basic/DiagnosticCommonKinds.td
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/Basic/TargetInfo.h
M clang/include/clang/CodeGen/BackendUtil.h
M clang/include/clang/Driver/CommonArgs.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Frontend/Utils.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/ASTContext.cpp
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/EvalEmitter.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.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/ExprCXX.cpp
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/Basic/TargetInfo.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGExprScalar.cpp
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/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/Targets/Sparc.cpp
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 clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.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
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
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
M clang/test/AST/ByteCode/cxx23.cpp
M clang/test/AST/ByteCode/invalid.cpp
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
M clang/test/CodeGen/atomic-test-and-set.c
M clang/test/CodeGen/complex.c
M clang/test/CodeGen/sparcv9-abi.c
A clang/test/DebugInfo/CXX/lambda-capture-packs.cpp
M clang/test/DebugInfo/KeyInstructions/atomic.c
M clang/test/Driver/Ofast.c
M clang/test/Driver/clang_f_opts.c
M clang/test/Driver/linker-wrapper-image.c
M clang/test/Driver/linker-wrapper.c
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/fuse_ast_print.cpp
A clang/test/OpenMP/fuse_codegen.cpp
A clang/test/OpenMP/fuse_messages.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 clang/test/SemaCXX/ctad.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx2c.cpp
M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp
M compiler-rt/lib/asan/asan_interceptors_memintrinsics.h
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
M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
M flang-rt/cmake/modules/AddFlangRT.cmake
M flang-rt/lib/cuda/memory.cpp
M flang-rt/unittests/CMakeLists.txt
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/OpenMP/Clauses.h
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/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.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
A flang/test/Driver/split-debug.f90
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
A flang/test/Integration/debug-split-dwarf.f90
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/Parser/OpenMP/assumption.f90
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
A flang/test/Parser/OpenMP/requires.f90
M flang/test/Semantics/OpenMP/blank-common-block.f90
M flang/test/Semantics/OpenMP/declare-target-function-name-with-symbols.f90
M flang/test/Transforms/OpenMP/simd-only.mlir
M libc/shared/math.h
A libc/shared/math/exp10m1f.h
M libc/src/__support/CPP/simd.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/src/string/memory_utils/generic/inline_strlen.h
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/__support/CPP/simd_test.cpp
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/__ranges/join_view.h
M libcxx/include/module.modulemap.in
M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/ranges.find.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
M libcxx/utils/compare-benchmarks
M libcxx/utils/libcxx/test/format.py
M libcxx/utils/visualize-historical
M lld/MachO/SyntheticSections.cpp
A lld/test/ELF/eh-frame-relocation.s
A lld/test/MachO/order-file-cstring.s
R lld/test/MachO/ordre-file-cstring.s
M lld/test/wasm/mutable-global-exports.s
M lld/wasm/Writer.cpp
M lldb/packages/Python/lldbsuite/test/cpu_feature.py
M lldb/source/Plugins/ExpressionParser/Clang/ModuleDependencyCollector.h
M lldb/test/Shell/ObjectFile/ELF/elf-no-shdrs-pt-notes.yaml
M llvm/docs/BugLifeCycle.rst
M llvm/docs/BuildingADistribution.rst
M llvm/docs/CommandGuide/lit.rst
M llvm/docs/FuzzingLLVM.rst
M llvm/docs/GettingInvolved.rst
M llvm/docs/ProgrammersManual.rst
M llvm/docs/Reference.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/index.rst
M llvm/include/llvm/ADT/CoalescingBitVector.h
M llvm/include/llvm/ADT/DenseMap.h
M llvm/include/llvm/ADT/DenseSet.h
M llvm/include/llvm/ADT/GenericSSAContext.h
M llvm/include/llvm/ADT/ImmutableMap.h
M llvm/include/llvm/ADT/MapVector.h
M llvm/include/llvm/ADT/PackedVector.h
M llvm/include/llvm/ADT/SetVector.h
M llvm/include/llvm/ADT/SmallPtrSet.h
M llvm/include/llvm/ADT/SmallSet.h
M llvm/include/llvm/ADT/SmallVector.h
M llvm/include/llvm/ADT/SparseSet.h
M llvm/include/llvm/ADT/StringMap.h
M llvm/include/llvm/ADT/StringSet.h
M llvm/include/llvm/ADT/StringTable.h
M llvm/include/llvm/Analysis/InterestingMemoryOperand.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
M llvm/include/llvm/Bitstream/BitstreamWriter.h
M llvm/include/llvm/CodeGen/LiveInterval.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/RDFGraph.h
M llvm/include/llvm/CodeGen/RDFRegisters.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureMetadata.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureValidations.h
M llvm/include/llvm/Frontend/Offloading/OffloadWrapper.h
M llvm/include/llvm/Frontend/Offloading/Utility.h
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/MC/DXContainerRootSignature.h
M llvm/include/llvm/Object/DXContainer.h
M llvm/include/llvm/Object/OffloadBinary.h
M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/include/llvm/Support/Endian.h
M llvm/include/llvm/Support/FileCollector.h
M llvm/include/llvm/Support/ProgramStack.h
M llvm/include/llvm/Support/SMLoc.h
M llvm/include/llvm/TableGen/Record.h
M llvm/include/llvm/Transforms/Scalar/SROA.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/BinaryFormat/DXContainer.cpp
M llvm/lib/CGData/CodeGenDataReader.cpp
M llvm/lib/CGData/CodeGenDataWriter.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveInterval.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/lib/CodeGen/RDFLiveness.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetRegisterInfo.cpp
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
M llvm/lib/Frontend/Offloading/OffloadWrapper.cpp
M llvm/lib/Frontend/Offloading/Utility.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/MC/DXContainerRootSignature.cpp
M llvm/lib/MC/MCSFrame.cpp
M llvm/lib/Object/ArchiveWriter.cpp
M llvm/lib/Object/DXContainer.cpp
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.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/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/Support/DXILABI.cpp
M llvm/lib/Support/FileCollector.cpp
M llvm/lib/Support/Mustache.cpp
M llvm/lib/Support/rpmalloc/rpmalloc.h
M llvm/lib/Support/rpmalloc/rpnew.h
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/DirectX/DXILPostOptimizationValidation.cpp
M llvm/lib/Target/Hexagon/RDFCopy.cpp
M llvm/lib/Target/Hexagon/RDFCopy.h
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/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
M llvm/lib/Target/Mips/MipsCallingConv.td
M llvm/lib/Target/Mips/MipsExpandPseudo.cpp
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsRegisterInfo.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
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
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
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/ldexp.ll
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/av_spill_cross_bb_usage.mir
M llvm/test/CodeGen/AMDGPU/bf16.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/fcanonicalize.bf16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
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/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
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
A llvm/test/CodeGen/AMDGPU/postra-machine-sink-livein-subrange.mir
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
M llvm/test/CodeGen/AMDGPU/waitcnt-vmcnt-loop.mir
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/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
M llvm/test/CodeGen/ARM/build-attributes.ll
M llvm/test/CodeGen/ARM/fnegs.ll
M llvm/test/CodeGen/ARM/fnmscs.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
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/ContainerData/RootSignature-Invalid-Version.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-appending-limits.ll
A llvm/test/CodeGen/DirectX/rootsignature-validation-deny-no-binding.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-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-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
A llvm/test/CodeGen/DirectX/rootsignature-validation-not-dening-shader.ll
A llvm/test/CodeGen/LoongArch/lasx/abs.ll
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/adda.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fdiv.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fix-xvshuf.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvrepl128vei.ll
M llvm/test/CodeGen/LoongArch/lasx/shuffle-as-permute-and-shuffle.ll
M llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-rotate.ll
M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
A llvm/test/CodeGen/LoongArch/lsx/abs.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/adda.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fdiv.ll
M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
A llvm/test/CodeGen/LoongArch/merge-offset-option.ll
M llvm/test/CodeGen/Mips/atomic-min-max.ll
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
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
A llvm/test/CodeGen/NVPTX/machinelicm-no-preheader.mir
M llvm/test/CodeGen/NVPTX/math-intrins.ll
M llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
A llvm/test/CodeGen/PowerPC/vector-all-ones.ll
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
M llvm/test/CodeGen/SPARC/64abi.ll
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
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bindless_images/i32-in-physical64.ll
A llvm/test/CodeGen/SPIRV/image_store.ll
A llvm/test/CodeGen/SPIRV/instructions/insertvalue-undef-ptr.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-comparison.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/debugtrap.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/frexp.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/ignore-llvm-intrinsic.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/memmove.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/signed_arithmetic_overflow.ll
M llvm/test/CodeGen/SPIRV/transcoding/NoSignedUnsignedWrap.ll
A llvm/test/CodeGen/SPIRV/transcoding/OpVariable_Initializer.ll
A llvm/test/CodeGen/SPIRV/transcoding/builtin_pipe.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
M llvm/test/CodeGen/Thumb2/mve-vmulh.ll
M llvm/test/CodeGen/X86/atomic-bit-test.ll
M llvm/test/CodeGen/X86/avx512-mask-op.ll
M llvm/test/CodeGen/X86/fadd-combines.ll
M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
M llvm/test/CodeGen/X86/llvm.frexp.ll
M llvm/test/CodeGen/X86/rematerialize-sub-super-reg.mir
M llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll
M llvm/test/CodeGen/X86/vector-fshl-256.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
M llvm/test/Instrumentation/AddressSanitizer/RISCV/asan-rvv-intrinsics.ll
A llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers1.3.yaml
M llvm/test/TableGen/intrinsic-struct.td
M llvm/test/TableGen/intrinsic-varargs.td
M llvm/test/Transforms/AggressiveInstCombine/inline-strcmp-debugloc.ll
M llvm/test/Transforms/InstCombine/fsh.ll
M llvm/test/Transforms/InstCombine/vector-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/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/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-step.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.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
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
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
M llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll
A llvm/test/tools/llvm-lib/sym64-threshold.test
A llvm/test/tools/llvm-mca/RISCV/SiFive7/vgather-vcompress.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX390/vgather-vcompress.s
M llvm/test/tools/llvm-strings/stdin.test
A llvm/test/tools/llvm-tli-checker/ifuncs.yaml
M llvm/tools/dsymutil/Reproducer.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-offload-wrapper/llvm-offload-wrapper.cpp
M llvm/tools/llvm-tli-checker/llvm-tli-checker.cpp
M llvm/unittests/ADT/APIntTest.cpp
M llvm/unittests/ADT/PackedVectorTest.cpp
M llvm/unittests/CodeGen/TypeTraitsTest.cpp
M llvm/unittests/MC/StringTableBuilderTest.cpp
M llvm/unittests/Object/DXContainerTest.cpp
M llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
M llvm/unittests/Support/EndianTest.cpp
M llvm/unittests/Support/FileCollectorTest.cpp
M llvm/utils/FileCheck/FileCheck.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
M llvm/utils/git/code-format-helper.py
M llvm/utils/gn/secondary/clang/lib/Tooling/DependencyScanning/BUILD.gn
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/Inputs/shtest-shell/valid-shell.txt
M llvm/utils/lit/tests/shtest-shell.py
M mlir/docs/DefiningDialects/Operations.md
M mlir/examples/standalone/include/Standalone/StandalonePasses.td
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
M mlir/include/mlir/TableGen/Class.h
M mlir/include/mlir/Transforms/FoldUtils.h
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/lib/Bindings/Python/DialectLLVM.cpp
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRTypes.cpp
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/lib/Transforms/Utils/FoldUtils.cpp
M mlir/test/CAPI/llvm.c
A mlir/test/Dialect/Arith/constant-fold.mlir
M mlir/test/Dialect/Linalg/convert-conv2d-to-img2col.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/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
A mlir/test/Transforms/remove-dead-values-call-segments.mlir
M mlir/test/Transforms/remove-dead-values.mlir
M mlir/test/lib/Dialect/Test/TestDialect.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Transforms/TestSingleFold.cpp
A mlir/test/mlir-tblgen/attr-duplicated-builder-error.td
A mlir/test/mlir-tblgen/attr-duplicated-custom-builders-error.td
M mlir/test/python/ir/builtin_types.py
M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
M mlir/tools/mlir-tblgen/EnumsGen.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
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
A offload/test/offloading/fortran/target-no-loop.f90
M openmp/device/src/Workshare.cpp
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
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Merge branch 'main' into users/zhaoqi5/test-isxxxcheap
Compare: https://github.com/llvm/llvm-project/compare/ef876268b97d...1362a744ac76
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