[all-commits] [llvm/llvm-project] ec3cb4: [clang] simplify placeholder type deduction for co...
David Rivera via All-commits
all-commits at lists.llvm.org
Wed Oct 1 13:45:07 PDT 2025
Branch: refs/heads/users/riverdave/cir/addrspace-support-for-cir-ptr
Home: https://github.com/llvm/llvm-project
Commit: ec3cb46110a6bb48ee51cd455e932cbdae03494c
https://github.com/llvm/llvm-project/commit/ec3cb46110a6bb48ee51cd455e932cbdae03494c
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: eaa8134eb88565f40656978311c6ba3604ad32dd
https://github.com/llvm/llvm-project/commit/eaa8134eb88565f40656978311c6ba3604ad32dd
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: a400bde6b62f6e80a59615a5d8f551d8e5aeddc9
https://github.com/llvm/llvm-project/commit/a400bde6b62f6e80a59615a5d8f551d8e5aeddc9
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 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: d23a1d634d33f4f640b1a3c0620ad6d7e69a534f
https://github.com/llvm/llvm-project/commit/d23a1d634d33f4f640b1a3c0620ad6d7e69a534f
Author: Davide Mor <39653004+Tazdevil971 at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 1eec25c1c090f56c5338acb68dda4a78060cbc60
https://github.com/llvm/llvm-project/commit/1eec25c1c090f56c5338acb68dda4a78060cbc60
Author: Ruoyu Zhong <zhongruoyu at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 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: afcdd7a290c1cde63d373d7556b740fa345d7ce5
https://github.com/llvm/llvm-project/commit/afcdd7a290c1cde63d373d7556b740fa345d7ce5
Author: Fangrui Song <i at maskray.me>
Date: 2025-10-01 (Wed, 01 Oct 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: 1b6bc211e81d2a3ee2fdd52014f661f28ed1340d
https://github.com/llvm/llvm-project/commit/1b6bc211e81d2a3ee2fdd52014f661f28ed1340d
Author: owenca <owenpiano at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: f4feeba77853cd4b472e62051c1719b6a26fd431
https://github.com/llvm/llvm-project/commit/f4feeba77853cd4b472e62051c1719b6a26fd431
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/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: 2b6d9fbbf36ace07d3b0b38fe984c6a56f9014f7
https://github.com/llvm/llvm-project/commit/2b6d9fbbf36ace07d3b0b38fe984c6a56f9014f7
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 392c9d3dc7ace0b944c9edf236f841e69e71ae82
https://github.com/llvm/llvm-project/commit/392c9d3dc7ace0b944c9edf236f841e69e71ae82
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 7320fb9ce428dcd651c5fb7557898222ec7af52e
https://github.com/llvm/llvm-project/commit/7320fb9ce428dcd651c5fb7557898222ec7af52e
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 9d6709d75e8844c294a6b4b563f0b77099026a9f
https://github.com/llvm/llvm-project/commit/9d6709d75e8844c294a6b4b563f0b77099026a9f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-01 (Wed, 01 Oct 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: e0cbee1f16c48f67c1007f4f50af9718cefb3c51
https://github.com/llvm/llvm-project/commit/e0cbee1f16c48f67c1007f4f50af9718cefb3c51
Author: Iris Shi <0.0 at owo.li>
Date: 2025-10-01 (Wed, 01 Oct 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: 4ff95ba8f7d6e30116958b16d88e6743a996b092
https://github.com/llvm/llvm-project/commit/4ff95ba8f7d6e30116958b16d88e6743a996b092
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-01 (Wed, 01 Oct 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: e6e2639e7eb50118ccca95f67fe737a63de5c7dc
https://github.com/llvm/llvm-project/commit/e6e2639e7eb50118ccca95f67fe737a63de5c7dc
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 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: 8c8ad48ac348f2322bd32c1e746f180e03caad61
https://github.com/llvm/llvm-project/commit/8c8ad48ac348f2322bd32c1e746f180e03caad61
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 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: ed04a74fc23d12016af7d1ea830bee9d924006ed
https://github.com/llvm/llvm-project/commit/ed04a74fc23d12016af7d1ea830bee9d924006ed
Author: Tim Besard <tim.besard at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 1715908888120f63504a0be56a4cc9c93a315d84
https://github.com/llvm/llvm-project/commit/1715908888120f63504a0be56a4cc9c93a315d84
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-10-01 (Wed, 01 Oct 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: d6b804b924ea1a71ea0da67c379d21a93b77089d
https://github.com/llvm/llvm-project/commit/d6b804b924ea1a71ea0da67c379d21a93b77089d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 2372ee8a2b6d7f19772bad93129af50f546f486d
https://github.com/llvm/llvm-project/commit/2372ee8a2b6d7f19772bad93129af50f546f486d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: ae6b373eee11d03dcd2da084051c5781ff998193
https://github.com/llvm/llvm-project/commit/ae6b373eee11d03dcd2da084051c5781ff998193
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: c6a39e48e73f78e529fd88fd97cdc376530e931e
https://github.com/llvm/llvm-project/commit/c6a39e48e73f78e529fd88fd97cdc376530e931e
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 2774c892167c954b45ce58d48866c758f85d7ed3
https://github.com/llvm/llvm-project/commit/2774c892167c954b45ce58d48866c758f85d7ed3
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 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: b78866f9b95c013c64f95dd0007f6295a96d88e3
https://github.com/llvm/llvm-project/commit/b78866f9b95c013c64f95dd0007f6295a96d88e3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 06ed1a379b3386a0e0f852c2df42e9f6336e3f4f
https://github.com/llvm/llvm-project/commit/06ed1a379b3386a0e0f852c2df42e9f6336e3f4f
Author: Justin Kim <jwkimrhkgkr at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 8cfbb3f31d8173671f2b9a714fc9a31b5c8574c7
https://github.com/llvm/llvm-project/commit/8cfbb3f31d8173671f2b9a714fc9a31b5c8574c7
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 3437fe5cc4a0d4ed0dc0c1fca9205f6960a43ef0
https://github.com/llvm/llvm-project/commit/3437fe5cc4a0d4ed0dc0c1fca9205f6960a43ef0
Author: Subash B <subash.boopathi at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 8cf0988a85257d730a5c958e39f7d510e7fe42d1
https://github.com/llvm/llvm-project/commit/8cf0988a85257d730a5c958e39f7d510e7fe42d1
Author: Subash B <subash.boopathi at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 2eea94ecd01408eadc2ca89f05d59302cd4567d7
https://github.com/llvm/llvm-project/commit/2eea94ecd01408eadc2ca89f05d59302cd4567d7
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 2a66ee75d26463ba211728437025efd44edd627a
https://github.com/llvm/llvm-project/commit/2a66ee75d26463ba211728437025efd44edd627a
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: fa348f82fa57ac8e113a8e890137324225dd6e66
https://github.com/llvm/llvm-project/commit/fa348f82fa57ac8e113a8e890137324225dd6e66
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 5a6de15c1ddbe1d7eaf0573bb53931385276d6aa
https://github.com/llvm/llvm-project/commit/5a6de15c1ddbe1d7eaf0573bb53931385276d6aa
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 963267c34f3e4a57cefc1921a680fd6d61a47927
https://github.com/llvm/llvm-project/commit/963267c34f3e4a57cefc1921a680fd6d61a47927
Author: A. Jiang <de34 at live.cn>
Date: 2025-10-01 (Wed, 01 Oct 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: 34292a2a9d52af084259f09ca76032150f86f7eb
https://github.com/llvm/llvm-project/commit/34292a2a9d52af084259f09ca76032150f86f7eb
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 1da4409c76e9b9213a82b1b02f4f704265b7aacc
https://github.com/llvm/llvm-project/commit/1da4409c76e9b9213a82b1b02f4f704265b7aacc
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[VPlan] Remove 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: 9bf7868580746e3a940b852eb5ad278aec3de396
https://github.com/llvm/llvm-project/commit/9bf7868580746e3a940b852eb5ad278aec3de396
Author: Fangrui Song <i at maskray.me>
Date: 2025-10-01 (Wed, 01 Oct 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: aa24e7dcedaa709f3b369ed6a2fdd9529bc839df
https://github.com/llvm/llvm-project/commit/aa24e7dcedaa709f3b369ed6a2fdd9529bc839df
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: fe902b86f1bc08836a00b33e8892d3a4f478f62f
https://github.com/llvm/llvm-project/commit/fe902b86f1bc08836a00b33e8892d3a4f478f62f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: dce0325e3c88f1505572f5e8dc6b0fc1741b57e9
https://github.com/llvm/llvm-project/commit/dce0325e3c88f1505572f5e8dc6b0fc1741b57e9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 241e29e269311f64dbaf5849fa59321067a929d5
https://github.com/llvm/llvm-project/commit/241e29e269311f64dbaf5849fa59321067a929d5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 67008aedacf8ef57ab37040675d59ae0320670fa
https://github.com/llvm/llvm-project/commit/67008aedacf8ef57ab37040675d59ae0320670fa
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/FuzzingLLVM.rst
Log Message:
-----------
[llvm] Proofread FuzzingLLVM.rst (#161046)
Commit: 4e05d533e2694c84f539d5e4a9d8efd079fefc66
https://github.com/llvm/llvm-project/commit/4e05d533e2694c84f539d5e4a9d8efd079fefc66
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 0d753a92437b978691162711ef58b5cf098eb53b
https://github.com/llvm/llvm-project/commit/0d753a92437b978691162711ef58b5cf098eb53b
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-10-01 (Wed, 01 Oct 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: f3400d9d32044c69b6b72836f1f45d303e39e487
https://github.com/llvm/llvm-project/commit/f3400d9d32044c69b6b72836f1f45d303e39e487
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 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: a481d370a6224daea1a9a5287f691cb2a50ea113
https://github.com/llvm/llvm-project/commit/a481d370a6224daea1a9a5287f691cb2a50ea113
Author: Gábor Spaits <gaborspaits1 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 7a5ef815b2876c34150b677d5d2827777dcb0240
https://github.com/llvm/llvm-project/commit/7a5ef815b2876c34150b677d5d2827777dcb0240
Author: Aadesh Premkumar <aadesh.premkumar at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 8fed209ead2aedeba2d73fed623a94b434693d4e
https://github.com/llvm/llvm-project/commit/8fed209ead2aedeba2d73fed623a94b434693d4e
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 2aeedd8fc67e5c572914c3040af99b18c9ba1307
https://github.com/llvm/llvm-project/commit/2aeedd8fc67e5c572914c3040af99b18c9ba1307
Author: wanglei <wanglei at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 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: ea3cb30eddd7d7e232006c62fa9c2f236c5bac11
https://github.com/llvm/llvm-project/commit/ea3cb30eddd7d7e232006c62fa9c2f236c5bac11
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 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: bc90d09b8b5f273fb51d53508230e47877f45871
https://github.com/llvm/llvm-project/commit/bc90d09b8b5f273fb51d53508230e47877f45871
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/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: 8eacd8cdca9658f6cd9df1fd0194292e538dd1e2
https://github.com/llvm/llvm-project/commit/8eacd8cdca9658f6cd9df1fd0194292e538dd1e2
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 920fed835afe2b9c2cd7397816d616b2818eaf63
https://github.com/llvm/llvm-project/commit/920fed835afe2b9c2cd7397816d616b2818eaf63
Author: Mend Renovate <bot at renovateapp.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 01ed0a28f9951e77faa9532fb3c77fb8341987ac
https://github.com/llvm/llvm-project/commit/01ed0a28f9951e77faa9532fb3c77fb8341987ac
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-01 (Wed, 01 Oct 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: 428154cffc3738f458ed3fdb8cf9fc1d9c474c77
https://github.com/llvm/llvm-project/commit/428154cffc3738f458ed3fdb8cf9fc1d9c474c77
Author: Walter J.T.V <81811777+eZWALT at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 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: f65e4d898fde8bbd7ae906a03a93999d98b2f452
https://github.com/llvm/llvm-project/commit/f65e4d898fde8bbd7ae906a03a93999d98b2f452
Author: David Green <david.green at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/bf16-vector-bitcast.ll
Log Message:
-----------
[AArch64] Add missing bitcast patterns for bf16<->f16 converts. (#159816)
This fills in the missing patterns for bicasting v4f16 to/from v4bf16,
and v8f16 to/from v8f16. Clean up some formatting whilst here.
Fixes #159772
Commit: 3be3e07d11e5293b76c49f34c712346631f9f9b3
https://github.com/llvm/llvm-project/commit/3be3e07d11e5293b76c49f34c712346631f9f9b3
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
M llvm/test/CodeGen/AMDGPU/v_mac.ll
M llvm/test/CodeGen/AMDGPU/v_mac_f16.ll
M llvm/test/CodeGen/PowerPC/scalar_cmp.ll
M llvm/test/CodeGen/X86/negative-sin.ll
Log Message:
-----------
[TargetLowering] Remove NoSignedZerosFPMath uses (#160975)
Remove NoSignedZerosFPMath in TargetLowering part, users should always
use instruction level fast math flags.
Commit: cdac8c3aa75528d8e4fc3428fddfb2220795d61f
https://github.com/llvm/llvm-project/commit/cdac8c3aa75528d8e4fc3428fddfb2220795d61f
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[clang] treat deduced-as-dependent as undeduced for constant template parameters (#161099)
The AutoType's deduced-as-dependent mechanism is not really used for
constant template parameters, but this is currently harmless to ignore
because when dealing which such types, they will have been transformed,
turning them back to plain undeduced AutoTypes.
This should be NFC for current main users, but
https://github.com/llvm/llvm-project/pull/141776 will depend on this.
Commit: 49ae10dd03894f449a2f631a858e4b4c8f59b52f
https://github.com/llvm/llvm-project/commit/49ae10dd03894f449a2f631a858e4b4c8f59b52f
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/SemaCXX/invalid-requirement-requires-expr.cpp
M clang/test/SemaTemplate/instantiation-depth-subst-2.cpp
M clang/test/SemaTemplate/instantiation-depth-subst.cpp
Log Message:
-----------
[clang] fix code synthesis context depth limit logic (#161103)
This makes the instantation depth limit be checked whenever the code
synthesis context is pushed, not only when creating a
InstantiatingTemplate RAII object.
Also fix the note suggesting the user increases `-ftemplate-depth` so it
is printed even in a SFINAE context.
Commit: 6d4729ac30ce61d4e6c5d06983d0f226c5617337
https://github.com/llvm/llvm-project/commit/6d4729ac30ce61d4e6c5d06983d0f226c5617337
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Lexer/cxx-features.cpp
Log Message:
-----------
[C++20] [Modules] Set the feature testing macro to 1 (#161034)
See https://github.com/llvm/llvm-project/issues/71364 for details.
Commit: 7db9c464ca85fc6590cb649505572c75284adaad
https://github.com/llvm/llvm-project/commit/7db9c464ca85fc6590cb649505572c75284adaad
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DropUnnecessaryAssumes.cpp
M llvm/test/Transforms/DropUnnecessaryAssumes/basic.ll
Log Message:
-----------
[DropUnnecessaryAssumes] Make the ephemeral value check more precise (#160700)
The initial implementation used a very crude check where a value was
considered ephemeral if it has only one use. This is insufficient if
there are multiple assumes acting on the same value, or in more complex
cases like cyclic phis.
Generalize this to a more typical ephemeral value check, i.e. make sure
that all transitive users are in assumes, while stopping at
side-effecting instructions.
Commit: 4d6bdb6208f1f88ef31b04dba4928cb153c462c6
https://github.com/llvm/llvm-project/commit/4d6bdb6208f1f88ef31b04dba4928cb153c462c6
Author: Jinjie Huang <huangjinjie at bytedance.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
A bolt/test/AArch64/dwarf4-dwp-aarch64.s
A bolt/test/X86/dwarf4-dwp-x86.s
Log Message:
-----------
[BOLT][DWARF] Fix debug info update issue with dwarf4 dwp (#155619)
Fix the crash issue when updating debuginfo via DWARF4 DWP and improve efficiency.
Commit: 0b03d579ddd7270187bdf00b8e4b816309f0c6be
https://github.com/llvm/llvm-project/commit/0b03d579ddd7270187bdf00b8e4b816309f0c6be
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/IR/Verifier.cpp
M llvm/test/Verifier/preallocated-invalid.ll
Log Message:
-----------
[IR] Use immarg for preallocated intrinsics (NFC) (#155835)
Mark the attributes as immarg to indicate that they require a constant
integer. This was previously enforced with a manual verifier check.
Commit: 48eb667ffe22e56de57b9c4cb0bbda7d95e8c065
https://github.com/llvm/llvm-project/commit/48eb667ffe22e56de57b9c4cb0bbda7d95e8c065
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/scalarize-fp.ll
A llvm/test/CodeGen/LoongArch/lsx/scalarize-fp.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit scalarize fp tests for #157824 (#160480)
tests for https://github.com/llvm/llvm-project/pull/157824
Commit: 620961bcc1e51937f1120de20bae2392c2b5ad9f
https://github.com/llvm/llvm-project/commit/620961bcc1e51937f1120de20bae2392c2b5ad9f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-add.ll
M llvm/test/CodeGen/X86/combine-mul.ll
M llvm/test/CodeGen/X86/combine-sdiv.ll
M llvm/test/CodeGen/X86/known-signbits-shl.ll
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
M llvm/test/CodeGen/X86/oddsubvector.ll
M llvm/test/CodeGen/X86/pr62286.ll
M llvm/test/CodeGen/X86/pr74736.ll
M llvm/test/CodeGen/X86/shift-i512.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/vec_shift6.ll
M llvm/test/CodeGen/X86/vector-gep.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-128.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-256.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-512.ll
M llvm/test/CodeGen/X86/vector-mul.ll
M llvm/test/CodeGen/X86/vector-reduce-or-cmp.ll
M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
M llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
Log Message:
-----------
[X86] LowerShiftByScalarImmediate - move shl(x,1) -> add(freeze(x),freeze(x)) to X86FixupInstTunings (#161007)
Avoid the shl(x,1) -> add(freeze(x),freeze(x)) if the shift-imm if
legal, and leave it to X86FixupInstTunings.
Helps avoid missed optimisations due to oneuse limits, avoids
unnecessary freezes and allows AVX512 to fold to mi memory folding
variants.
Fixes #161006
Commit: 6a7f4cf6283ef55a41d29562405aff82dc0feda0
https://github.com/llvm/llvm-project/commit/6a7f4cf6283ef55a41d29562405aff82dc0feda0
Author: Fraser Cormack <frasercrmck at pm.me>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libclc/Maintainers.md
Log Message:
-----------
[libclc] Move myself to the list of inactive maintainers
Change my email address in the process. I will not be able to keep up
maintainership duties on this project in the future.
Adding the wording on the inactive maintainers section myself like this
feels self-aggrandizing but was copied from other LLVM projects.
Commit: 08059e4b6c36b34b8c987a911a23f0184e47057f
https://github.com/llvm/llvm-project/commit/08059e4b6c36b34b8c987a911a23f0184e47057f
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/TrailingObjects.h
Log Message:
-----------
[llvm][NFC] Simplify alignment calculations in `TrailingObjects` (#161134)
Commit: 505db593ae4797f42b3356e20cf982613228a305
https://github.com/llvm/llvm-project/commit/505db593ae4797f42b3356e20cf982613228a305
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/lasx/scalarize-fp.ll
M llvm/test/CodeGen/LoongArch/lsx/scalarize-fp.ll
Log Message:
-----------
[LoongArch] Override cost hooks to expose more DAG combine opportunities (#157824)
Commit: c26f907d15190e503221125598358271dbb990dd
https://github.com/llvm/llvm-project/commit/c26f907d15190e503221125598358271dbb990dd
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sme-za-exceptions.ll
Log Message:
-----------
[AArch64][SME][SDAG] Add basic support for exception handling (#159363)
This patch adds basic support for exception handling to SelectionDAG for
ZT0, ZA, and agnostic ZA state. This works based on the following
assumptions:
- To throw an exception requires calling into the runtime
* The which will be a private ZA call (that commits the lazy save)
- Therefore, as noted in https://github.com/ARM-software/abi-aa/blob/main/aapcs64/aapcs64.rst#exceptions
we will always enter the EH block with PSTATE.ZA=0 and TPIDR2_EL0=null,
so we can emit a restore of ZA/ZT0.
Note: This patch does not handle all cases yet. Currently, there is no
support for committing agnostic ZA state before `invoke`s, regardless of
whether the callee is also agnostic (to ensure ZA state is saved on all
normal returns).
Commit: 2d00378ff9a4fe748007ba672c8642050c3eba44
https://github.com/llvm/llvm-project/commit/2d00378ff9a4fe748007ba672c8642050c3eba44
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Compute cost of more replicating loads/stores in ::computeCost. (#160053)
Update VPReplicateRecipe::computeCost to compute costs of more
replicating loads/stores.
There are 2 cases that require extra checks to match the legacy cost
model:
1. If the pointer is based on an induction, the legacy cost model passes
its SCEV to getAddressComputationCost. In those cases, still fall back
to the legacy cost. SCEV computations will be added as follow-up
2. If a load is used as part of an address of another load, the legacy
cost model skips the scalarization overhead. Those cases are currently
handled by a usedByLoadOrStore helper.
Note that getScalarizationOverhead also needs updating, because when the
legacy cost model computes the scalarization overhead, scalars have not
been collected yet, so we can't each for replicating recipes to skip
their cost, except other loads. This again can be further improved by
modeling inserts/extracts explicitly and consistently, and compute costs
for those operations directly where needed.
PR: https://github.com/llvm/llvm-project/pull/160053
Commit: cabfba7ab5d55ac61aaca95e7cb73cf571f94c82
https://github.com/llvm/llvm-project/commit/cabfba7ab5d55ac61aaca95e7cb73cf571f94c82
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for modernize-use-emplace in LoopEmitter.cpp (NFC)
Commit: b47eb5e11d69cffc8ccd414e12f9cf374906b5ab
https://github.com/llvm/llvm-project/commit/b47eb5e11d69cffc8ccd414e12f9cf374906b5ab
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/ExecutionEngine/JitRunner.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in JitRunner.cpp (NFC)
Commit: 8aa35f31dfd79fe963645d265b3bf1f6de5d96a0
https://github.com/llvm/llvm-project/commit/8aa35f31dfd79fe963645d265b3bf1f6de5d96a0
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in SubgroupReduceLowering.cpp (NFC)
Commit: 7ac9193b515feef098641fef2931b75f09bc3235
https://github.com/llvm/llvm-project/commit/7ac9193b515feef098641fef2931b75f09bc3235
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Conversion/LLVMCommon/PrintCallHelper.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for bugprone-argument-comment in PrintCallHelper.cpp (NFC)
Commit: 456f98b075142a705c7006fe2a5c660f5d9ac5f3
https://github.com/llvm/llvm-project/commit/456f98b075142a705c7006fe2a5c660f5d9ac5f3
Author: benwu25 <soggysocks206 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/test/Lower/OpenMP/infinite-loop-in-construct.f90
M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
M mlir/test/Dialect/ControlFlow/canonicalize.mlir
Log Message:
-----------
[MLIR][CF] Avoid collapsing blocks which participate in cycles (#160783)
Previously, collapseBranch did not return failure for successor blocks which were part of a cycle. mlir-opt --canonicalize would run indefinitely for any N-block cycle which is kicked off with an unconditional jump. The simplifyPassThroughBr transform would continue alternating which block was targeted in ^bb0, resulting in an infinite loop.
collapseBranch will not result in any useful transformation on blocks which participate in cycles, since the block is aliased by a different block. To avoid this, we can check for cycles in collapseBranch and abort when one is detected. Simplification of the cycle is left for other transforms.
Fixes #159743.
Commit: dc8e51d05ae578a7b700d5d99fb165aae4100576
https://github.com/llvm/llvm-project/commit/dc8e51d05ae578a7b700d5d99fb165aae4100576
Author: Keshav Vinayak Jha <31160700+keshavvinayak01 at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[ROCDL][LLVM] Added rocdl.fmed3 -> Intrinsic::amdgcn_fmed3 (#159332)
## Description
Added ROCDL fmed3 op to support rewrite to `amdgcn_fmed3` intrinsic.
## Testing
- ROCDL -> LLVMIR lit tests for new `rocdl.med3` ops in
`/test/Target/LLVMIR/rocdl.mlir`
Addresses [#157052](https://github.com/llvm/llvm-project/issues/157052)
---------
Signed-off-by: keshavvinayak01 <keshavvinayakjha at gmail.com>
Commit: f8e27caad0f57000cb2c8ea2c5dadd7481149dcf
https://github.com/llvm/llvm-project/commit/f8e27caad0f57000cb2c8ea2c5dadd7481149dcf
Author: guan jian <guanjian at stu.cdut.edu.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/check-sign-bit-before-extension.ll
M llvm/test/CodeGen/AArch64/icmp.ll
M llvm/test/CodeGen/AArch64/vecreduce-bool.ll
Log Message:
-----------
[LLVM][AArch64] Optimize sign bit tests with TST instruction for SIGN_EXTEND patterns (#158061)
Hi, I recently found out in some cases LLVM doesn't generate optimal
code like:
```
sxtb w8, w0
cmp w8, #0
csel w0, w1, w2, lt
```
```
tst w0, #0x80
csel w0, w1, w2, mi
```
This optimization is only applied when the following conditions are met:
1. The comparison is setlt (signed less than)
2. The right-hand side is zero
3. The left-hand side is a sign extension operation (SIGN_EXTEND or
SIGN_EXTEND_INREG)
4. The sign-extended value has only one use (hasOneUse())
5. The original type is an integer type
Commit: 403dd068f5b67acfae68b742237df2ab125c5971
https://github.com/llvm/llvm-project/commit/403dd068f5b67acfae68b742237df2ab125c5971
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__algorithm/find.h
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/module.modulemap.in
M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
Log Message:
-----------
[libc++] Vectorize std::find (#156431)
```
Apple M4:
-----------------------------------------------------------------------------
Benchmark old new
-----------------------------------------------------------------------------
std::find(vector<char>) (bail 25%)/8 1.43 ns 1.44 ns
std::find(vector<char>) (bail 25%)/1024 5.54 ns 5.59 ns
std::find(vector<char>) (bail 25%)/8192 38.4 ns 39.1 ns
std::find(vector<char>) (bail 25%)/32768 134 ns 136 ns
std::find(vector<int>) (bail 25%)/8 1.56 ns 1.57 ns
std::find(vector<int>) (bail 25%)/1024 65.3 ns 65.4 ns
std::find(vector<int>) (bail 25%)/8192 465 ns 464 ns
std::find(vector<int>) (bail 25%)/32768 1832 ns 1832 ns
std::find(vector<long long>) (bail 25%)/8 0.920 ns 1.20 ns
std::find(vector<long long>) (bail 25%)/1024 65.2 ns 31.2 ns
std::find(vector<long long>) (bail 25%)/8192 464 ns 255 ns
std::find(vector<long long>) (bail 25%)/32768 1833 ns 992 ns
std::find(vector<char>) (process all)/8 1.21 ns 1.22 ns
std::find(vector<char>) (process all)/50 1.92 ns 1.93 ns
std::find(vector<char>) (process all)/1024 16.6 ns 16.9 ns
std::find(vector<char>) (process all)/8192 134 ns 136 ns
std::find(vector<char>) (process all)/32768 488 ns 503 ns
std::find(vector<int>) (process all)/8 2.45 ns 2.48 ns
std::find(vector<int>) (process all)/50 12.7 ns 12.7 ns
std::find(vector<int>) (process all)/1024 236 ns 236 ns
std::find(vector<int>) (process all)/8192 1830 ns 1834 ns
std::find(vector<int>) (process all)/32768 7351 ns 7346 ns
std::find(vector<long long>) (process all)/8 2.02 ns 1.45 ns
std::find(vector<long long>) (process all)/50 12.0 ns 6.12 ns
std::find(vector<long long>) (process all)/1024 235 ns 123 ns
std::find(vector<long long>) (process all)/8192 1830 ns 983 ns
std::find(vector<long long>) (process all)/32768 7306 ns 3969 ns
std::find(vector<bool>) (process all)/8 1.14 ns 1.15 ns
std::find(vector<bool>) (process all)/50 1.16 ns 1.17 ns
std::find(vector<bool>) (process all)/1024 4.51 ns 4.53 ns
std::find(vector<bool>) (process all)/8192 33.6 ns 33.5 ns
std::find(vector<bool>) (process all)/1048576 3660 ns 3660 ns
```
Commit: a3416594dd5c096bc591d51fbfa15a54dedd4055
https://github.com/llvm/llvm-project/commit/a3416594dd5c096bc591d51fbfa15a54dedd4055
Author: Fraser Cormack <frasercrmck at pm.me>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libclc/Maintainers.md
Log Message:
-----------
[libclc] Propose new libclc maintainer (#161141)
Wenju He has been active on the libclc project for a while now and has
been contributing to the overall health and steering the future of the
project.
Commit: a0b1cafc2ad00438bee736b6172674b5da634bcf
https://github.com/llvm/llvm-project/commit/a0b1cafc2ad00438bee736b6172674b5da634bcf
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/dpbusd.ll
M llvm/test/CodeGen/X86/dpbusd_const.ll
Log Message:
-----------
[X86] createVPDPBUSD - only use 512-bit X86ISD::VPDPBUSD on AVX512VNNI targets (#161152)
Inspired by #160928 - if we have a AVX512 target capable of AVXVNNI but not AVX512VNNI then we must split 512-bit (or larger) types to 256-bits
Commit: 63b191e3d97a4f2c632bfa43a041d9061e7d41a5
https://github.com/llvm/llvm-project/commit/63b191e3d97a4f2c632bfa43a041d9061e7d41a5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/tools/llvm-cov/CoverageExporterJson.cpp
Log Message:
-----------
[llvm-cov] Fix MSVC "not all control paths return a value" warning. NFC. (#161150)
Commit: 44c7ac7608770dd3fe6d978526519eff3ac0f02d
https://github.com/llvm/llvm-project/commit/44c7ac7608770dd3fe6d978526519eff3ac0f02d
Author: DST <danstadelmann at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/test/MachineVerifier/test_g_build_vector.mir
Log Message:
-----------
Fix some typos in machine verifier comments and trace output (#160049)
Stumbled across a typo in the `MachineVerifier` file and since I had it
open, I changed some other comments.
Not important but why not leave it a bit cleaner :slightly_smiling_face:
---------
Signed-off-by: Daniel Stadelmann <dasta_7 at hotmail.com>
Commit: 5b14bacc076fd10033330b6aa3829200a8d3f5d0
https://github.com/llvm/llvm-project/commit/5b14bacc076fd10033330b6aa3829200a8d3f5d0
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/IR/Instructions.cpp
A llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[ConstantFold] Fold inttoptr, ptrtoaddr to bitcast (#161087)
Fixes #157334.
Commit: d5a1a129f351e36b01e9eaf04f8bb9310f8b4a3b
https://github.com/llvm/llvm-project/commit/d5a1a129f351e36b01e9eaf04f8bb9310f8b4a3b
Author: Ye Tian <939808194 at qq.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
Log Message:
-----------
[X86] Remove X86ISD::VSHLDV/VSHRDV and use ISD::FSHL/FSHR opcodes directly (#157616)
Fixes [issue](https://github.com/llvm/llvm-project/issues/155591)
Commit: 2a684d4b78958205c3da960b5c72836714aa6ff8
https://github.com/llvm/llvm-project/commit/2a684d4b78958205c3da960b5c72836714aa6ff8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/Pointer.h
Log Message:
-----------
[clang][bytecode] Pointer::isZero - fix MSVC "not all control paths return a value" warning. NFC. (#161168)
Commit: 8379ee065fdaa3e8609f60c960fcdf2904fce47a
https://github.com/llvm/llvm-project/commit/8379ee065fdaa3e8609f60c960fcdf2904fce47a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/CodeGen/X86/tbm-builtins.c
Log Message:
-----------
[clang][x86] tbm-builtins.c - add i386 test coverage (#161169)
Commit: 5049390529902c23ff1a5551b088490f18b878ad
https://github.com/llvm/llvm-project/commit/5049390529902c23ff1a5551b088490f18b878ad
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
M llvm/test/CodeGen/X86/vec_unsafe-fp-math.ll
Log Message:
-----------
[DAGCombiner] Remove NoSignedZerosFPMath uses in visitFSUB (#160974)
Remove NoSignedZerosFPMath in visitFSUB part, we should always use
instruction level fast math flags.
Commit: a97531b837e26d3b541ad740ec715aa6ecd9a6ad
https://github.com/llvm/llvm-project/commit/a97531b837e26d3b541ad740ec715aa6ecd9a6ad
Author: kper <kevin.per at protonmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/GlobalISel/InstructionSelect.rst
Log Message:
-----------
[DOC][GlobalISel] Add more explanation to InstructionSelect (#160510)
Commit: 3be6ffdb9233fae2a977578bf6f8cf8f3a7d8119
https://github.com/llvm/llvm-project/commit/3be6ffdb9233fae2a977578bf6f8cf8f3a7d8119
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/CodeGen/X86/bmi-builtins.c
Log Message:
-----------
[clang][x86] bmi-builtins.c - add i386 test coverage (#161171)
Commit: 81bcc725f6688001c725e073e9919c729647c23a
https://github.com/llvm/llvm-project/commit/81bcc725f6688001c725e073e9919c729647c23a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/CodeGen/X86/bmi2-builtins.c
Log Message:
-----------
[clang][X86] bmi2-builtins.c - add -fexperimental-new-constant-interpreter bytecode test coverage (#161172)
Part of #155814
Commit: 998d745e3b4b87bf52aaf069c282cd61b05936cd
https://github.com/llvm/llvm-project/commit/998d745e3b4b87bf52aaf069c282cd61b05936cd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/CodeGen/X86/tbm-builtins.c
Log Message:
-----------
[clang][X86] tbm-builtins.c - add -fexperimental-new-constant-interpreter bytecode test coverage (#161174)
Part of #155814
Commit: 7d0c831e6668f7478bbb31bcaaf3ec7435cf7d1a
https://github.com/llvm/llvm-project/commit/7d0c831e6668f7478bbb31bcaaf3ec7435cf7d1a
Author: Piotr Balcer <piotr.balcer at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
Log Message:
-----------
[Offload][NFC] use unique ptrs for platforms (#160888)
Currently, devices store a raw pointer to back to their owning Platform.
Platforms are stored directly inside of a vector. Modifying this vector
risks invalidating all the platform pointers stored in devices.
This patch allocates platforms individually, and changes devices to
store a reference to its platform instead of a pointer. This is safe,
because platforms are guaranteed to outlive the devices they contain.
Commit: a9f426ab547d2f8582e3e9a99bdea4082abda30f
https://github.com/llvm/llvm-project/commit/a9f426ab547d2f8582e3e9a99bdea4082abda30f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/CodeGen/X86/bmi-builtins.c
Log Message:
-----------
[clang][X86] bmi-builtins.c - add -fexperimental-new-constant-interpreter bytecode test coverage (#161182)
Part of #155814
Commit: c2751cc017ed6583c5da161c6d2fd9a76bdbfde7
https://github.com/llvm/llvm-project/commit/c2751cc017ed6583c5da161c6d2fd9a76bdbfde7
Author: Leon Clark <Leon4116 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AMDGPU/narrow-phi-of-shuffles.ll
M llvm/test/Transforms/VectorCombine/X86/narrow-phi-of-shuffles.ll
Log Message:
-----------
[VectorCombine] Fix rotation in phi narrowing. (#160465)
Fix bug in #140188 where incoming vectors are rotated in the wrong
direction.
Co-authored-by: Leon Clark <leoclark at amd.com>
Commit: 802a2ffc21ab88b217857e13e7f5a08c90c2cd53
https://github.com/llvm/llvm-project/commit/802a2ffc21ab88b217857e13e7f5a08c90c2cd53
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll
Log Message:
-----------
[SimplifyCFG] Ensure selects have not been constant folded in `foldSwitchToSelect`
Make sure selects do exist prior to assigning weights to edges.
Fixes: https://github.com/llvm/llvm-project/issues/161137.
Commit: 68298f0ed03d759928dc7c927ccbb50db2488cbc
https://github.com/llvm/llvm-project/commit/68298f0ed03d759928dc7c927ccbb50db2488cbc
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/DebugHandlerBase.h
M llvm/include/llvm/CodeGen/LexicalScopes.h
M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
M llvm/lib/CodeGen/AsmPrinter/DwarfFile.h
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/CodeGen/LexicalScopes.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/test/CodeGen/X86/dbg-distringtype-uint.ll
A llvm/test/DebugInfo/AArch64/abstract-sp-unit.ll
A llvm/test/DebugInfo/AArch64/debug-types.ll
A llvm/test/DebugInfo/AArch64/populate-abstract-sp-once.ll
A llvm/test/DebugInfo/Generic/inlined-static-var.ll
M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
M llvm/unittests/CodeGen/LexicalScopesTest.cpp
M llvm/unittests/CodeGen/MFCommon.inc
Log Message:
-----------
Reland "[DebugInfo][DwarfDebug] Separate creation and population of abstract subprogram DIEs" (#160786)
This is an attempt to reland
https://github.com/llvm/llvm-project/pull/159104 with the fix for
https://github.com/llvm/llvm-project/issues/160197.
The original patch had the following problem: when an abstract
subprogram DIE is constructed from within
`DwarfDebug::endFunctionImpl()`,
`DwarfDebug::constructAbstractSubprogramScopeDIE()` acknowledges `unit:`
field of DISubprogram. But an abstract subprogram DIE constructed from
`DwarfDebug::beginModule()` was put in the same compile unit to which
global variable referencing the subprogram belonged, regardless of
subprogram's `unit:`.
This is fixed by adding `DwarfDebug::getOrCreateAbstractSubprogramCU()`
used by both`DwarfDebug:: constructAbstractSubprogramScopeDIE()` and
`DwarfCompileUnit::getOrCreateSubprogramDIE()` when abstract subprogram
is queried during the creation of DIEs for globals in
`DwarfDebug::beginModule()`.
The fix and the already-reviewed code from
https://github.com/llvm/llvm-project/pull/159104 are two separate
commits in this PR.
=====
The original commit message follows:
With this change, construction of abstract subprogram DIEs is split in
two stages/functions: creation of DIE (in
DwarfCompileUnit::getOrCreateAbstractSubprogramDIE) and its population
with children (in
DwarfCompileUnit::constructAbstractSubprogramScopeDIE).
With that, abstract subprograms can be created/referenced from
DwarfDebug::beginModule, which should solve the issue with static local
variables DIE creation of inlined functons with optimized-out
definitions. It fixes https://github.com/llvm/llvm-project/issues/29985.
LexicalScopes class now stores mapping from DISubprograms to their
corresponding llvm::Function's. It is supposed to be built before
processing of each function (so, now LexicalScopes class has a method
for "module initialization" alongside the method for "function
initialization"). It is used by DwarfCompileUnit to determine whether a
DISubprogram needs an abstract DIE before DwarfDebug::beginFunction is
invoked.
DwarfCompileUnit::getOrCreateSubprogramDIE method is added, which can
create an abstract or a concrete DIE for a subprogram. It accepts
llvm::Function* argument to determine whether a concrete DIE must be
created.
This is a temporary fix for
https://github.com/llvm/llvm-project/issues/29985. Ideally, it will be
fixed by moving global variables and types emission to
DwarfDebug::endModule (https://reviews.llvm.org/D144007,
https://reviews.llvm.org/D144005).
Some code proposed by Ellis Hoag <ellis.sparky.hoag at gmail.com> in
https://github.com/llvm/llvm-project/pull/90523 was taken for this
commit.
Commit: c0bfd71a5cb53d6c15be53b2c83167b3afadc404
https://github.com/llvm/llvm-project/commit/c0bfd71a5cb53d6c15be53b2c83167b3afadc404
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/modules-print-library-module-manifest-path.cpp
Log Message:
-----------
[clang][modules] Ensure -nostdlib causes no manifest to be reported (#161110)
When -nostdlib is specified, Clang should not report any
library‑provided module manifest, even if a manifest for the default
standard library is present.
Commit: 8f13502d55f23cfaf5a6e4cbab441a64e31d86f6
https://github.com/llvm/llvm-project/commit/8f13502d55f23cfaf5a6e4cbab441a64e31d86f6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/ftrunc.ll
Log Message:
-----------
[X86] ftrunc.ll - add nounwind to silence cfi noise (#161186)
Commit: 575390e5caeaf226f72c295538ff38a08c31f327
https://github.com/llvm/llvm-project/commit/575390e5caeaf226f72c295538ff38a08c31f327
Author: A. Jiang <de34 at live.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/unittests/CodeGen/TypeTraitsTest.cpp
Log Message:
-----------
[CodeGen][test] Fix Buildbot failure due to uninitialized variables (#161085)
Under some options used by LLVM Buildbot, an uninitialized variable
(recently added to the test suite) caused constant evaluation failure,
despite the type of that variable is an empty class.
This PR explicitly initializes the variables with `{}` to fix the error.
Follows-up a558d656043734cc4d02e0a0a12e4c308c28f8c7.
Commit: 88c2dcfed14b58c8b43e1255ebb54dea06abf1e9
https://github.com/llvm/llvm-project/commit/88c2dcfed14b58c8b43e1255ebb54dea06abf1e9
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/test/CodeGen/X86/apx/ndd-neg-addr-index.ll
M llvm/test/CodeGen/X86/lea-16bit.ll
M llvm/test/CodeGen/X86/lea-8bit.ll
Log Message:
-----------
[X86][APX] Promote 8/16-bit LEA to 32-bit to avoid partial dependence (#161051)
Commit: 0851faf251affd62473bc9f5e68fcc4eac1bbf58
https://github.com/llvm/llvm-project/commit/0851faf251affd62473bc9f5e68fcc4eac1bbf58
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
Log Message:
-----------
Reland "[clang][DebugInfo][NFC] Simplify CollectRecordLambdaFields"
This reverts commit 99a29f640809f32d1271ed5cac9764b839daeed1.
Original change was reverted because following assertion started firing:
```
clang++: clang/include/clang/AST/LambdaCapture.h:105: ValueDecl
*clang::LambdaCapture::getCapturedVar() const: Assertion
`capturesVariable() && "No variable available for capture"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.Program arguments: ../../prebuilt/third_party/clang/custom/bin/clang++ -MD -MF host_x64/obj/third_party/android/platform/system/libbase/libbase.logging.cpp.o.d -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -I../.. -Ihost_x64/gen -I../../third_party/android/platform/system/libbase/include -I../../third_party/fmtlib/src/include -I../../third_party/android/platfo...com
1.<eof> parser at end of file
2.Per-file LLVM IR generation
clang++: error: clang frontend command failed with exit code 134 (use -v
to see invocation)
Fuchsia clang version 22.0.0git
(https://llvm.googlesource.com/llvm-project
8553bd2b29ad2b17a9a884f14da6c43b606ec776)
********************
```
The relanded patch just adds a `Capture.capturesVariable()` check before calling `getCapturedVar`. That's what the code did before the refactor.
Commit: 4f34487031e947697ff8df80b435213367989c56
https://github.com/llvm/llvm-project/commit/4f34487031e947697ff8df80b435213367989c56
Author: Chaitanya Koparkar <ckoparkar at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AArch64/combine-shuffle-ext.ll
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
Log Message:
-----------
[VectorCombine] foldShuffleOfCastops - handle unary shuffles (#160009)
Fixes #156853.
Commit: 3d229f7cc30e2a90080f844118b8b65898b2201c
https://github.com/llvm/llvm-project/commit/3d229f7cc30e2a90080f844118b8b65898b2201c
Author: jiang1997 <jieke at live.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateMaskedLoadStore.cpp
Log Message:
-----------
[MLIR][MemRef] Change builders with `int` alignment params to `llvm::MaybeAlign` (#159449)
Change remaining OpBuilder methods to use `llvm::MaybeAlign` instead of
`uint64_t` for alignment parameters.
---------
Co-authored-by: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Commit: 9449067ca1316c97ddb5d3beb9fd381dfbd0dcbb
https://github.com/llvm/llvm-project/commit/9449067ca1316c97ddb5d3beb9fd381dfbd0dcbb
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_salu_lit64.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_valu_lit64.txt
Log Message:
-----------
[AMDGPU][Disassembler][NFC] Regenerate check lines of some tests using the update script. (#161190)
Commit: 4d5928b3c48b90d750f62406ee20be10cee7e094
https://github.com/llvm/llvm-project/commit/4d5928b3c48b90d750f62406ee20be10cee7e094
Author: guillem-bartrina-sonarsource <guillem.bartrina at sonarsource.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
A clang/test/Analysis/buffer-overlap-decls.c
M clang/test/Analysis/buffer-overlap.c
Log Message:
-----------
[analyzer] CStringChecker: Fix crash in `CheckOverlap` when arguments are not pointers (#160511)
https://github.com/llvm/llvm-project/blob/main/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp#L675-L678
mistakenly assumes that target expressions are of pointer type.
`CheckOverlap` has multiple call sites, most of which do not verify this
assumption. Therefore, the simplest solution is to verify it just before
that point.
Commit: b6367804fbd2ed8cf9ac3dcc3ee211a637fa9259
https://github.com/llvm/llvm-project/commit/b6367804fbd2ed8cf9ac3dcc3ee211a637fa9259
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate08.f90
M flang/test/Semantics/OpenMP/allocators04.f90
M flang/test/Semantics/OpenMP/allocators05.f90
Log Message:
-----------
[flang][OpenMP] Fix scope checks for ALLOCATE directive (#160948)
Make sure that the ALLOCATE directive adds its source span to the
current scope, and that the scope checks compare scoping units, not the
specific scopes.
Commit: 0790873079b7e055934e9ca2b433a385ec477e96
https://github.com/llvm/llvm-project/commit/0790873079b7e055934e9ca2b433a385ec477e96
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
Log Message:
-----------
[libc++][NFC] In documentation, fix path to benchmark that has now moved
Commit: e2971902c541cc1e59c0dabda32f16d838ae0f60
https://github.com/llvm/llvm-project/commit/e2971902c541cc1e59c0dabda32f16d838ae0f60
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/type-traits.cpp
Log Message:
-----------
[Clang] Fixes __builtin_is_implicit_lifetime for types with deleted ctrs (#161163)
We failed to check that the trivial constructor where eligible (this
implies non deleted).
Fixes #160610
Commit: bdb3dbde6413ad63522a8f0cedb9113615f52c07
https://github.com/llvm/llvm-project/commit/bdb3dbde6413ad63522a8f0cedb9113615f52c07
Author: Marco Elver <elver at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/SipHash.h
M llvm/lib/Support/SipHash.cpp
M llvm/unittests/Support/SipHashTest.cpp
Log Message:
-----------
[Support] Add SipHash-based 64-bit stable hash function (#160945)
Factor out the 64-bit hash calculation in getPointerAuthStableSipHash()
as getStableSipHash(). This allows using the full 64-bit hash where we
require a stable hash.
Similar to getPointerAuthStableSipHash(), the new hash function is meant
to be stable across platforms and compiler versions.
Commit: 858ba8d9858c1a9d3782bd809efd23a574443b8f
https://github.com/llvm/llvm-project/commit/858ba8d9858c1a9d3782bd809efd23a574443b8f
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M offload/test/offloading/fortran/target-no-loop.f90
Log Message:
-----------
[OpenMP][Flang] Fix no-loop test (#161162)
Fortran no-loop test is supported only for GPU.
Commit: 1f69d0d2d9cd25e7d65365eafcb749a64bf853ad
https://github.com/llvm/llvm-project/commit/1f69d0d2d9cd25e7d65365eafcb749a64bf853ad
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/setoeq.ll
Log Message:
-----------
[X86] setoeq.ll - add f<->i64, uint and AVX1/AVX512 test coverage (#161197)
Commit: 048cfaebcb2688a7398c48f20877bd7dd28541f3
https://github.com/llvm/llvm-project/commit/048cfaebcb2688a7398c48f20877bd7dd28541f3
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
Exclude from profcheck some tests (#161207)
- Commit f9c2565
- PR #155349
LoopVectorize ones.
Commit: d147637b4a78ba51e79ab8f3aea64303acd7a20d
https://github.com/llvm/llvm-project/commit/d147637b4a78ba51e79ab8f3aea64303acd7a20d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/isint.ll
Log Message:
-----------
[X86] isint.ll - cleanup prefixes (#161198)
Use X86 for 32-bit targets, and X64 for 64-bit targets
Commit: d36430f4436abba2fad08d0c2f97305505aea438
https://github.com/llvm/llvm-project/commit/d36430f4436abba2fad08d0c2f97305505aea438
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
Add test to profcheck exclusion list (#161209)
Introduced in PR #160443
Commit: d77f452d4959cabfef6f5fdaf15663aae99fd3cf
https://github.com/llvm/llvm-project/commit/d77f452d4959cabfef6f5fdaf15663aae99fd3cf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/EquivalenceClasses.h
Log Message:
-----------
[ADT] Use DenseMap::contains in EquivalenceClasses.h (NFC) (#161120)
While I am at it, this patch adds [[nodiscard]].
Commit: 6f82f6762830d89b54def1a43d17f81e05641bc9
https://github.com/llvm/llvm-project/commit/6f82f6762830d89b54def1a43d17f81e05641bc9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/PackedVector.h
Log Message:
-----------
[ADT] Inline PackedVectorBase into PackedVector (NFC) (#161122)
This patch "inlines" PackedVectorBase into its sole user PackedVector.
The two variants of PackedVectorBase are dispatched with "if
constexpr". getValue and setValue are now non-static methods of
PackedVector.
We could further simplify getValue and setValue by storing signed
integers as two's complement, but that's a change for another day.
This patch focuses on the code organization, like removing the
template trick and inheritance and making the two methods non-static.
Commit: 62814d9c15d6bf42ccfe60d0548d245152184a11
https://github.com/llvm/llvm-project/commit/62814d9c15d6bf42ccfe60d0548d245152184a11
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Remove DenseMapBase::getHashValue (NFC) (#161123)
This patch removes:
static unsigned getHashValue(const KeyT &Val) {
return KeyInfoT::getHashValue(Val);
}
This function is redundant given the templated overload:
template <typename LookupKeyT>
static unsigned getHashValue(const LookupKeyT &Val) {
return KeyInfoT::getHashValue(Val);
}
Note that the callers doFind and LookupBucketFor are themselves
templated on LookupKeyT.
Commit: 5513a79f688290c6f065d064a287e87dbfe1f09e
https://github.com/llvm/llvm-project/commit/5513a79f688290c6f065d064a287e87dbfe1f09e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
[llvm] Proofread GettingInvolved.rst (#161124)
Commit: 39575f199a5e8183d6d93d362f1921d80c00a2f4
https://github.com/llvm/llvm-project/commit/39575f199a5e8183d6d93d362f1921d80c00a2f4
Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Basic/Builtins.def
M clang/lib/AST/ASTContext.cpp
A clang/test/CodeGen/amdgpu-image-rsrc-type-debug-info.c
A clang/test/CodeGenCXX/amdgpu-image-rsrc-typeinfo.cpp
A clang/test/SemaCXX/amdgpu-image-rsrc.cpp
A clang/test/SemaOpenCL/amdgpu-image-rsrc.cl
A clang/test/SemaOpenMP/amdgpu-image-rsrc.cpp
Log Message:
-----------
[AMDGPU] Add a new builtin type for image descriptor rsrc (#160258)
Adding a new builtin type for AMDGPU's image descriptor rsrc data type
This requires for https://github.com/llvm/llvm-project/pull/140210
Commit: eb99f2d8ec1abe0ad4e6e69a42260284c41308ae
https://github.com/llvm/llvm-project/commit/eb99f2d8ec1abe0ad4e6e69a42260284c41308ae
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaOpenACCAtomic.cpp
Log Message:
-----------
[clang][NFC] Remove const_casts from diagnostic emissions (#161211)
This is apparently not necessary anymore. Not sure when exactly it
changed though.
Commit: 0ce2d13a5badead12a313d3de949001597b90deb
https://github.com/llvm/llvm-project/commit/0ce2d13a5badead12a313d3de949001597b90deb
Author: Jan André Reuter <j.reuter at fz-juelich.de>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/include/xray/xray_interface.h
A compiler-rt/test/xray/TestCases/Posix/patching-unpatching.c
Log Message:
-----------
Reapply "[compiler-rt][XRay] Make xray_interface.h C compliant" (#141728)
Changes to initial PR (#140068):
- Mark failing test as unsupported for powerpc64le, as test failure is
unrelated to PR changes. See
https://github.com/llvm/llvm-project/issues/141598
---
Original description (from #140068)
The XRay interface header uses no C++ specific features aside from using
the std namespace and including the C++ variant of C headers. Yet, these
changes prevent using `xray_interface.h` in external tools relying on C
for different reasons. Make this header C compliant by using C headers,
removing the std namespace from std::size_t and guard `extern "C"`.
To make sure that further changes to not break the interface
accidentially, port one test from C++ to C. This requires the C23
standard to officially support the attribute syntax used in this test
case.
Note that this only resolves this issue for `xray_interface.h`.
`xray_records.h` is also not C compliant, but requires more work to
port.
Fixes #139902
Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>
Commit: ae29fb4a3c1e6cdda6ef98b6acf306161d6cd6bb
https://github.com/llvm/llvm-project/commit/ae29fb4a3c1e6cdda6ef98b6acf306161d6cd6bb
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-dead-intrinsics.ll
Log Message:
-----------
[AMDGPU][LowerBufferFatPointers] Erase dead ptr(7) intrinsics (#160798)
Fix a crash that would arise when intrinsics like llvm.masked.load.T.p7
were left in the module when AMDGPULowerBufferFatPointers was applied
and so a captures(none) annotation would be applied to a non-pointer
value, triggering a verifier failure.
---------
Co-authored-by: Shilei Tian <i at tianshilei.me>
Commit: 965b641071ab6938f101abedd88f2cf97a3f95f9
https://github.com/llvm/llvm-project/commit/965b641071ab6938f101abedd88f2cf97a3f95f9
Author: Valery Dmitriev <valeryd at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
A flang/test/HLFIR/simplify-hlfir-intrinsics-index.fir
Log Message:
-----------
[flang] Simplify hlfir.index in a few limited cases. (#157883)
Primarily targeted simplification case of substring being
a singleton by inlining a search loop (with an exception
where runtime function performs better).
Few trivial simplifications also covered.
Commit: cf04ef18f2192f86f1b94360c36b6c1611de600c
https://github.com/llvm/llvm-project/commit/cf04ef18f2192f86f1b94360c36b6c1611de600c
Author: David Green <david.green at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/fp16-v4-instructions.ll
M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/strict-fp-opt.ll
Log Message:
-----------
[AArch64] Add global isel coverage for fp16 tests and strict-fp. NFC
Commit: 505ebece165b65834be5f2f8eb62161de7c451bd
https://github.com/llvm/llvm-project/commit/505ebece165b65834be5f2f8eb62161de7c451bd
Author: michaelselehov <michael.selehov at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
A llvm/test/CodeGen/AMDGPU/lro-phi-samebb-nonlookthrough-store.ll
Log Message:
-----------
[AMDGPU] LRO: allow same-BB non-lookthrough users for PHI (#160909)
Loop headers frequently consume the loop-carried value in the header
block via non-lookthrough ops (e.g. byte-wise vector binops).
LiveRegOptimizer’s same-BB filter currently prunes these users, so the
loop-carried PHI is not coerced to i32 and the intended packed form is
lost.
Relax the filter: when the def is a PHI, allow same-BB non-lookthrough
users. Also fix the check to look at the user (CII) rather than the def
(II) so the walk does not terminate prematurely.
Commit: 71e72eb8eebc0c9f4e90a03e344b1418a24946a4
https://github.com/llvm/llvm-project/commit/71e72eb8eebc0c9f4e90a03e344b1418a24946a4
Author: Marcos Maronas <marcos.maronas at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
Log Message:
-----------
[SPIRV] Fix code quality issues. (#160752)
Address issues reported by a static analysis tool.
Commit: b616a6805c960721c3efb7ebe267ab88de795ff1
https://github.com/llvm/llvm-project/commit/b616a6805c960721c3efb7ebe267ab88de795ff1
Author: Alina Sbirlea <asbirlea at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Analysis/LazyValueInfo.cpp
A llvm/test/Transforms/CorrelatedValuePropagation/track-predecessor-ranges.ll
Log Message:
-----------
Extend LVI to cache ranges per BB predecessor. (#159432)
Currently LVI does the union of value ranges from block predecessors.
When storing the ranges per predecessor, the resulting ranges may be
more restricted and enable additional optimizations.
However this is costly (memory + compile time), so place this under a
flag disabled by default.
See: https://github.com/llvm/llvm-project/issues/158139.
Commit: fa91a05430b3ac80cc58170147128ea5961380bb
https://github.com/llvm/llvm-project/commit/fa91a05430b3ac80cc58170147128ea5961380bb
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/FileCollector.cpp
Log Message:
-----------
[llvm] Use the VFS to get the real path in `FileCollector` (#160943)
This PR starts using the correct VFS for getting file's real path in
`FileCollector` instead of using the real FS directly. This matches
compiler's behavior for other input files.
Commit: 25fe963188251c89abb32b5e5bf2d173642ab5f2
https://github.com/llvm/llvm-project/commit/25fe963188251c89abb32b5e5bf2d173642ab5f2
Author: Billy Zhu <billyzhu at modular.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Bindings/Python/Rewrite.cpp
Log Message:
-----------
[MLIR][Python] Fix PDLResultList bindings (#161102)
Adds argument names to the method stubs for PDLResultList (from
https://github.com/llvm/llvm-project/pull/159926).
Commit: 0e67fefbe59f84a595546affee546c45e5f1a27c
https://github.com/llvm/llvm-project/commit/0e67fefbe59f84a595546affee546c45e5f1a27c
Author: Fangrui Song <i at maskray.me>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/MarkLive.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
ELF: Store EhInputSection relocations to simplify code. NFC
Store relocations directly as `SmallVector<Relocation, 0>` within
EhInputSection to avoid processing different relocation formats
(REL/RELA/CREL) throughout the codebase.
Next: Refactor RelocationScanner to utilize EhInputSection::rels
Pull Request: https://github.com/llvm/llvm-project/pull/161041
Commit: b6dcfd2a41f3c7ef25bc7f74a4444be9f90cfde3
https://github.com/llvm/llvm-project/commit/b6dcfd2a41f3c7ef25bc7f74a4444be9f90cfde3
Author: Ryan Mansfield <ryan_mansfield at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-size.rst
A llvm/test/tools/llvm-size/macho-pagezero.test
M llvm/tools/llvm-size/Opts.td
M llvm/tools/llvm-size/llvm-size.cpp
Log Message:
-----------
[llvm-size] Add --exclude-pagezero option for Mach-O to exclude __PAGEZERO size. (#159574)
Do not include the ``__PAGEZERO`` segment when calculating size information
for Mach-O files when `--exclude-pagezero` is used. The ``__PAGEZERO``
segment is a virtual memory region used for memory protection that does not
contribute to actual size, and excluding can provide a better representation of
actual size.
Fixes #86644
Commit: f9ecb628d520d53810cd5f69e5578b7c3fd722ed
https://github.com/llvm/llvm-project/commit/f9ecb628d520d53810cd5f69e5578b7c3fd722ed
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Frontend/ModuleDependencyCollector.cpp
M llvm/include/llvm/Support/FileCollector.h
Log Message:
-----------
[clang] Use the VFS in `ModuleDependencyCollector` (#160944)
This PR starts using the correct VFS in `ModuleDependencyCollector`
instead of using the real FS directly. This matches compiler's behavior
for other input files.
Commit: a0256700ed56e9024eb0784abc03097885c62a13
https://github.com/llvm/llvm-project/commit/a0256700ed56e9024eb0784abc03097885c62a13
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/EquivalenceClasses.h
M llvm/unittests/ADT/EquivalenceClassesTest.cpp
Log Message:
-----------
[ADT] Fix a bug in EquivalenceClasses::erase (#161121)
This patch fixes a bug in EquivalenceClasses::erase, where we lose a
leader bit in a certain scenario.
Here is some background. In EquivalenceClasses, each equivalence
class is maintained as a singly linked list over its members. When we
join two classes, we concatenate the two singly linked lists. To
support path compression, each member points to the leader (through
lazy updates). This is implemented with the two members:
class ECValue {
mutable const ECValue *Leader, *Next;
:
};
Each member stores its leader in Leader and its sibling in Next. Now,
the leader uses the Leader field to to point the last element of the
singly linked list to accommodate the list concatenation. We use the
LSB of the Next field to indicate whether a given member is a leader
or not.
Now, imagine we have an equivalence class:
Elem 1 -> Elem 2 -> nullptr
Leader
and wish to remove Elem 2. We would like to end up with:
Elem 1 -> nullptr
Leader
but we mistakenly drop the leader bit when we update the Next field of
Elem 1 with:
Pre->Next = nullptr;
This makes Elem 1 the end of the singly linked list, as intended, but
mistakenly clears its leader bit stored in the LSB of Next, so we end
up with an equivalence class with no leader.
This patch fixes the problem by preserving the leader bit:
Pre->Next = reinterpret_cast<const ECValue *>(
static_cast<intptr_t>(Pre->isLeader()));
The unit test closely follows the scenario above.
Commit: ca65b331ad14993a224e9bf7ce8b36ecd70eb0de
https://github.com/llvm/llvm-project/commit/ca65b331ad14993a224e9bf7ce8b36ecd70eb0de
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
Log Message:
-----------
[LV] Add test for more precise no-free checks.
Commit: 905234a87dd7977651ef9809c8cf62367a605caa
https://github.com/llvm/llvm-project/commit/905234a87dd7977651ef9809c8cf62367a605caa
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
R offload/DeviceRTL/CMakeLists.txt
M openmp/device/CMakeLists.txt
Log Message:
-----------
[OpenMP] Fix 'libc' configuration when building OpenMP
Summary:
Forgot to port this option's old handling from offload. It's not way
easier since they're built in the same CMake project. Also delete the
leftover directory that's not used anymore, don't know how that was
still there.
Commit: b6a5f10d6ae402151a03d6bd7230cff602d9c49b
https://github.com/llvm/llvm-project/commit/b6a5f10d6ae402151a03d6bd7230cff602d9c49b
Author: Chaitanya Koparkar <ckoparkar at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Headers/avxintrin.h
M clang/test/CodeGen/X86/avx-builtins.c
Log Message:
-----------
[Headers][X86] Allow AVX1 fixed extraction intrinsics to be used in constexpr (#161218)
Fixes #161204.
Commit: 130d17741f372cc7c2c8fe541c476646f6d0439f
https://github.com/llvm/llvm-project/commit/130d17741f372cc7c2c8fe541c476646f6d0439f
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/VirtualFileSystem.cpp
M llvm/unittests/Support/VirtualFileSystemTest.cpp
Log Message:
-----------
[llvm] Use the underlying VFS when constructing `RedirectingFileSystem` (#160942)
When the root node of the `RedirectingFileSystem` is to be resolved to
the current working directory, we previously consulted the real FS
instead of the provided underlying VFS. This PR fixes that issue.
Commit: 411dfdc212ada3a9dbc42e6825ef2091510d404c
https://github.com/llvm/llvm-project/commit/411dfdc212ada3a9dbc42e6825ef2091510d404c
Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/OpenMP/for_reduction_codegen.cpp
Log Message:
-----------
[clang][OpenMP] Support for reduction clause with array elements as modifier (#160846)
Changes to support for array elements in reduction clause e.g.
"reduction (+:a[1])"
---------
Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>
Commit: 363f8f8df8c43fb333691de57a6c7a6082ef4eac
https://github.com/llvm/llvm-project/commit/363f8f8df8c43fb333691de57a6c7a6082ef4eac
Author: jiang1997 <jieke at live.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][x86][bytecode] Refactor BMI intrinsic wrappers to use interp__builtin_elementwise_int_binop (#160362)
Fixes #160281
Commit: da3935e93884c40f342f5574c0c59d75fcedb07f
https://github.com/llvm/llvm-project/commit/da3935e93884c40f342f5574c0c59d75fcedb07f
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/test/CIR/CodeGen/lang-c-cpp.cpp
A clang/test/CIR/CodeGen/module-filename.cpp
M clang/test/CIR/CodeGen/opt-info-attr.cpp
Log Message:
-----------
[CIR] Set the module name to the input filename (#160934)
This sets the MLIR module name to the main filename (according to the
SourceManager), if one is available. The module name gets used when
creating global init functions, so we will need it to be set.
Commit: 6ad0e3ed06b0271e1797dfba44661df1ae8db226
https://github.com/llvm/llvm-project/commit/6ad0e3ed06b0271e1797dfba44661df1ae8db226
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
A clang/test/CIR/CodeGen/delete.cpp
Log Message:
-----------
[CIR] Add initial support for operator delete (#160574)
This adds basic operator delete handling in CIR. This does not yet
handle destroying delete or array delete, which will be added later. It
also does not insert non-null checks when not optimizing for size.
Commit: 3f1a8070889ebe80e9ac945f95c65bb1120148b1
https://github.com/llvm/llvm-project/commit/3f1a8070889ebe80e9ac945f95c65bb1120148b1
Author: Marcos Maronas <marcos.maronas at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/TextAPI/SymbolSet.h
M llvm/lib/CAS/InMemoryCAS.cpp
Log Message:
-----------
[LLVM][NFC] Fix Rule of Three/Five issues. (#160851)
Fix Rule of Three/Five issues reported by static analysis tool.
Commit: e2d6687c55eb99a06b0ae9b60be2452e8077290e
https://github.com/llvm/llvm-project/commit/e2d6687c55eb99a06b0ae9b60be2452e8077290e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/and-negpow2-cmp.ll
Log Message:
-----------
[RISCV] Teach getIntImmCostInst about (X & -(1 << C1) & 0xffffffff) == C2 << C1 (#160163)
We can rewrite this to (srai(w)/srli X, C1) == C2 so the AND immediate
is free. This transform is done by performSETCCCombine in
RISCVISelLowering.cpp.
This fixes the opaque constant case mentioned in #157416.
Commit: 06497dcb81d24d4c201c8e290e5b8032b956e0e5
https://github.com/llvm/llvm-project/commit/06497dcb81d24d4c201c8e290e5b8032b956e0e5
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/xor-combined-opcode.ll
Log Message:
-----------
[SLP][NFC]Add a test with the incorrect combination of Xor/Mul vector instructions, NFC
Commit: 3b61bb24c0b84c3851f113dc7efe89cf88bf6f5c
https://github.com/llvm/llvm-project/commit/3b61bb24c0b84c3851f113dc7efe89cf88bf6f5c
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/lit.cfg.py
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] Exclude LoopVectorize, temporarily (#161243)
LV is under active development, new tests are added. Bulk-excluding it
from `profcheck`​, for the moment.
Issue #161235 (see also its parent)
Commit: 90421dee0c4b8a1b68b72fadbf73b594fa04dd89
https://github.com/llvm/llvm-project/commit/90421dee0c4b8a1b68b72fadbf73b594fa04dd89
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
Log Message:
-----------
[X86] canCreateUndefOrPoisonForTargetNode/isGuaranteedNotToBeUndefOrPoisonForTargetNode - add X86ISD::INSERTPS handling (#161234)
X86ISD::INSERTPS shuffles can't create undef/poison itself, allowing us to fold freeze(insertps(x,y,i)) -> insertps(freeze(x),freeze(y),i)
Commit: cf1b756fc1b62761613aefc4ed87e0ce21ab98fd
https://github.com/llvm/llvm-project/commit/cf1b756fc1b62761613aefc4ed87e0ce21ab98fd
Author: Joseph Bak <36170953+josephbak at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/docs/Tutorials/Toy/Ch-6.md
Log Message:
-----------
[mlir][doc] Fix typo in Ch6 tutorial: 'toy.cpp' → 'toyc.cpp' (NFC) (#161245)
This patch fixes a documentation typo in the MLIR Toy tutorial (Ch6).
The tutorial currently refers to `examples/toy/Ch6/toy.cpp`, but the
correct
file name is `examples/toy/Ch6/toyc.cpp`.
Commit: b2889f145bd5d997ea45453b1541a5958f0647e7
https://github.com/llvm/llvm-project/commit/b2889f145bd5d997ea45453b1541a5958f0647e7
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
Log Message:
-----------
[llvm][mustache] Align standalone partial indentation with spec (#159185)
The current implementaion did not correctly handle indentation for
standalone partial tags. It was only applied to lines following a
newline, instead of the first line of a partial's content. This was
fixed by updating the AddIndentation implementaion to prepend the
indentation to the first line of the partial.
Commit: 3c71f2a8f5a4545beb8dad60f4f15f6158c17ae1
https://github.com/llvm/llvm-project/commit/3c71f2a8f5a4545beb8dad60f4f15f6158c17ae1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/xor-combined-opcode.ll
Log Message:
-----------
[SLP]Fix mixing xor instructions in the same opcode analysis
Xor with 0 operand should not be compatible with multiplications-based
instructions, only with or/xor/add/sub.
Fixes #161140
Commit: 79d2a62a36aa9944b7f278164a1ae64cddaadede
https://github.com/llvm/llvm-project/commit/79d2a62a36aa9944b7f278164a1ae64cddaadede
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
Log Message:
-----------
[RISCV][NFC] Rename getOppositeBranchCondition (#160972)
Commit: b2e8012f66af26f2bb8edd64726845b8746e7e35
https://github.com/llvm/llvm-project/commit/b2e8012f66af26f2bb8edd64726845b8746e7e35
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
Log Message:
-----------
[LV] Add test for more precise no-free checks w/o nosync attribute.
Also filter out uninteresting parts from check lines.
Commit: 79b83cdbf21dec81e17663b10b8cc163fe2a3f19
https://github.com/llvm/llvm-project/commit/79b83cdbf21dec81e17663b10b8cc163fe2a3f19
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/unittests/Support/MustacheTest.cpp
Log Message:
-----------
[llvm][mustache] Precommit test for Set Delimiter (#159186)
Adds a new unit test for the Mustache Set Delimiter feature.
This test is written with inverted logic (`EXPECT_NE`) so that it
passes with the current implementation, which does not support
the feature. Once the feature is implemented, this test will fail,
signaling that the test logic should be flipped to `EXPECT_EQ`.
Commit: a090b765c53e0649deff09fe0b7aaaa1df89e228
https://github.com/llvm/llvm-project/commit/a090b765c53e0649deff09fe0b7aaaa1df89e228
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-dwarfdump/verify_stmt_seq.yaml
Log Message:
-----------
[DWARFVerifier] Fix test verify_stmt_seq.yaml to write output files to temp directory. (#161247)
Commit: 8339b32c5ecd614f140117b0a1616098dc1b54f9
https://github.com/llvm/llvm-project/commit/8339b32c5ecd614f140117b0a1616098dc1b54f9
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.h
Log Message:
-----------
[clang-tidy][NFC] Make a few `std::string`s into `StringRef`s (#160961)
Following up 12cb540. Also, that commit left behind a few cases where a
temporary `StringRef` was being constructed from those variables just to
use its `.split()` function, so this PR cleans those up too.
Commit: 896d39798b538f481b5f326e9358aedc4f8c5246
https://github.com/llvm/llvm-project/commit/896d39798b538f481b5f326e9358aedc4f8c5246
Author: Abhinav Gaba <abhinav.gaba at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M offload/libomptarget/omptarget.cpp
Log Message:
-----------
[OpenMP][Offload] Support `PRIVATE | ATTACH` maps for corresponding-pointer-initialization. (#160760)
`PRIVATE | ATTACH` maps can be used to represent firstprivate pointers
that should be initialized by doing doing the pointee's device address,
if its lookup succeeds, or retain the original host pointee's address
otherwise.
With this, for a test like the following:
```f90
integer, pointer :: p(:)
!$omp target map(p(1))
... print*, p(1)
!$omp end target
```
The codegen can look like:
```llvm
; maps for p:
; &p(1), &p(1), sizeof(p(1)), TO|FROM //(1)
; &ref_ptr(p), &p(1), sizeof(ref_ptr(p)), ATTACH //(2)
; &ref_ptr(p), &p(1), sizeof(ref_ptr(p)), PRIVATE|ATTACH|PARAM //(3)
call... @__omp_outlined...(ptr %ref_ptr_of_p)
```
* `(1)` maps the pointee `p(1)`.
* `(2)` attaches it to the (previously) mapped `ref_ptr(p)`, if present.
It can be controlled via OpenMP 6.1's `attach(auto/always/never)`
map-type modifiers.
* `(3)` privatizes and initializes the local `ref_ptr(p)`, which gets
passed
in as the kernel argument `%ref_ptr_of_p`. Can be skipped if p is not
referenced directly within the region.
While similar mapping can be used for C/C++, it's more important/useful
for Fortran as we can avoid creating another argument for passing the
descriptor, and use that to initialize the private copy in the body of
the kernel.
Commit: 90290debd77b84977f9fe8ba926721fabbebd08a
https://github.com/llvm/llvm-project/commit/90290debd77b84977f9fe8ba926721fabbebd08a
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Implement UO real on result from imag with type promotion (#160996)
Implement UO real on the result from imag with type promotion
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: 590c250ba7e98e224bcd92123bd98cb02d91ac4e
https://github.com/llvm/llvm-project/commit/590c250ba7e98e224bcd92123bd98cb02d91ac4e
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR] Upstream UnaryExtension for Scalar Expr (#160997)
Upstream UnaryExtension for Scalar Expr
Commit: 19af113e9d470c8c8ae3948565ee0c766e9601e0
https://github.com/llvm/llvm-project/commit/19af113e9d470c8c8ae3948565ee0c766e9601e0
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Fix declarations of builtins in test files (#161222)
Replace `long double` and `long double _Complex` with `fp_t` and
`Qcomplex` in the test files.
This prepares for reapplying 656707086e5f6fccd2eb57f5aaf987c328c0f4f1
and running tests on targets where `fp_t` is not `long double`.
Commit: c539749f8418ec6e34852874db485909ca2effbe
https://github.com/llvm/llvm-project/commit/c539749f8418ec6e34852874db485909ca2effbe
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
A clang/test/CodeGenCXX/gh56652.cpp
M clang/test/SemaCXX/decltype.cpp
Log Message:
-----------
[Clang] Instantiate variables referenced in `decltype` with an undeduced type. (#161231)
Fixes #160497
Fixes #56652
Fixes #116319
Fixes #161196
Commit: f1aefbb858cef3ed0e7d87deea23d09be243a0e2
https://github.com/llvm/llvm-project/commit/f1aefbb858cef3ed0e7d87deea23d09be243a0e2
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M offload/tools/deviceinfo/llvm-offload-device-info.cpp
Log Message:
-----------
[Offload] Fix incorrect size used in llvm-offload-device-info tool
Summary:
This was not using the size previously queried and would fail when the
implementation actually verified it.
Commit: 0db5a35775a4d8e3f28fc962b2144ca7c629cecb
https://github.com/llvm/llvm-project/commit/0db5a35775a4d8e3f28fc962b2144ca7c629cecb
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libc/src/string/memory_utils/op_generic.h
M libc/test/UnitTest/FEnvSafeTest.cpp
Log Message:
-----------
[libc][msvc] fix mathlib build on WoA (#161258)
Fix build errors encountered when building math library on WoA.
1. Skip FEnv equality check for MSVC
2. Provide a placeholder type for vector types.
Commit: 81cbdcbed86b62c76ef4d8bba81b1a9636767fed
https://github.com/llvm/llvm-project/commit/81cbdcbed86b62c76ef4d8bba81b1a9636767fed
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/include/llvm/CAS/FileOffset.h
A llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
M llvm/lib/CAS/CMakeLists.txt
A llvm/lib/CAS/DatabaseFile.cpp
A llvm/lib/CAS/DatabaseFile.h
A llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
M llvm/unittests/CAS/CMakeLists.txt
A llvm/unittests/CAS/OnDiskTrieRawHashMapTest.cpp
Log Message:
-----------
[CAS] Add OnDiskTrieRawHashMap (#114100)
Add OnDiskTrieRawHashMap. This is a on-disk persistent hash map that
uses a Trie data structure that is similar to TrieRawHashMap.
OnDiskTrieRawHashMap is thread safe and process safe. It is mostly lock
free, except it internally coordinates cross process creation and
closing using file lock.
Commit: af76301d3ddf7518fde8963e0067deaecf4af586
https://github.com/llvm/llvm-project/commit/af76301d3ddf7518fde8963e0067deaecf4af586
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
A lldb/test/Shell/SymbolFile/DWARF/incomplete-member-beyond-parent-bounds.yaml
A lldb/test/Shell/SymbolFile/DWARF/member-beyond-parent-bounds.yaml
A lldb/test/Shell/SymbolFile/DWARF/member-on-parent-bounds.yaml
M lldb/test/Shell/SymbolFile/DWARF/union-types-no-member-location.yaml
A lldb/test/Shell/SymbolFile/DWARF/zero-sized-member-in-parent-bounds.yaml
Log Message:
-----------
[lldb][DWARFASTParserClang] Simplify obsolete error condition for malformed array member type offsets (#160132)
First time check was introduced in
`fa3ab4599d717feedbb83e08e7f654913942520b` to work around a debug-info
generation bug in Clang. This bug was fixed in Clang-4. The check has
since been adjusted (first in
`808ff186f6a6ba1fd38cc7e00697cd82f4afe540`, and then most recently in
`370db9c62910195e664e82dde6f0adb3e255a4fd`).
This check is getting quite convoluted, and all it does is turn an
`array[1]` into an `array[0]` type when it is deemed correct. At this
point the workaround probably never fires, apart from actually valid
codegen. This patch removes the special conditions and emits the error
specifically in those cases where we know the DWARF is malformed.
Added some shell tests for the error case.
Commit: 79eef9d522df719f2bd3ed04cbda69a69cdf6d9d
https://github.com/llvm/llvm-project/commit/79eef9d522df719f2bd3ed04cbda69a69cdf6d9d
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/test/CIR/CodeGen/vbase.cpp
Log Message:
-----------
[CIR] Add virtual base support to getAddressOfBaseClass (#159162)
This patch enables calling virtual functions of virtual base classes of
a derived class.
Commit: d17e11f914bc9813cc7adbf4fcd3029e24a2aba6
https://github.com/llvm/llvm-project/commit/d17e11f914bc9813cc7adbf4fcd3029e24a2aba6
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M offload/test/mapping/lambda_by_value.cpp
M offload/test/mapping/map_back_race.cpp
M offload/test/mapping/map_both_pointer_pointee.c
M offload/test/mapping/map_ptr_and_star_local.c
M offload/test/mapping/map_structptr_and_member_global.c
M offload/test/mapping/map_structptr_and_member_local.c
M offload/test/offloading/CUDA/basic_launch_multi_arg.cu
M offload/test/offloading/bug51781.c
M offload/test/offloading/fortran/declare-target-automap.f90
M offload/test/offloading/interop.c
M offload/test/offloading/single_threaded_for_barrier_hang_1.c
M offload/test/offloading/single_threaded_for_barrier_hang_2.c
M offload/test/offloading/spmdization.c
M offload/test/sanitizer/ptr_outside_alloc_1.c
M offload/test/sanitizer/ptr_outside_alloc_2.c
M offload/test/sanitizer/use_after_free_1.c
M offload/test/sanitizer/use_after_free_2.c
Log Message:
-----------
[OpenMP] Mark problematic tests as XFAIL / UNSUPPORTED (#161267)
Summary:
Several of these tests have been failing for literal years. Ideally we
make efforts to fix this, but keeping these broken has had serious
consequences on our testing infrastructure where failures are the norm
so almost all test failures are disregarded. I made a tracking issue for
the ones that have been disabled.
https://github.com/llvm/llvm-project/issues/161265
Commit: cc9981461f95f4f2df074821ff5d9d31d24e7925
https://github.com/llvm/llvm-project/commit/cc9981461f95f4f2df074821ff5d9d31d24e7925
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
Log Message:
-----------
[CAS] Fix a build failure on 32 bit system from #114100 (#161268)
Fix a build failure on 32 bit system that caused by a warning of
narrowing `uint64_t` to `size_t`.
Commit: 204965007c7bb09db732b1ea7e92de52b53499e7
https://github.com/llvm/llvm-project/commit/204965007c7bb09db732b1ea7e92de52b53499e7
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/preserve-profile.ll
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[InstCombine] Set !prof metadata on Selects identified by add.ll test (#158743)
These select instructions are created from non-branching instructions,
so their branch weights are unknown.
Tracking issue: #147390
Commit: 7df5d8f96f8d0ebcbecea78ddc2cd75bb77ad053
https://github.com/llvm/llvm-project/commit/7df5d8f96f8d0ebcbecea78ddc2cd75bb77ad053
Author: David Salinas <dsalinas at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-readelf.rst
M llvm/docs/CommandGuide/llvm-readobj.rst
M llvm/include/llvm/Object/OffloadBundle.h
M llvm/lib/Object/OffloadBundle.cpp
A llvm/test/tools/llvm-readobj/ELF/AMDGPU/offloading-fail.test
A llvm/test/tools/llvm-readobj/ELF/AMDGPU/offloading.test
M llvm/tools/llvm-readobj/ObjDumper.cpp
M llvm/tools/llvm-readobj/ObjDumper.h
M llvm/tools/llvm-readobj/Opts.td
M llvm/tools/llvm-readobj/llvm-readobj.cpp
Log Message:
-----------
Add --offoading option to llvm-readobj (#143342)
Utilize new extensions to LLVM Offloading API to
handle offloading fatbin Bundles.
The tool will output a list of available offload bundles
using URI syntax.
---------
Co-authored-by: dsalinas_amdeng <david.salinas at amd.com>
Commit: 506b68b8a373b2adf28e1cf10eaadeed52bc1eff
https://github.com/llvm/llvm-project/commit/506b68b8a373b2adf28e1cf10eaadeed52bc1eff
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/test/builtins/Unit/fixunstfdi_test.c
M compiler-rt/test/builtins/Unit/multc3_test.c
Log Message:
-----------
[compiler-rt] Disable tests for unavailable builtins (#161275)
The builtins `__fixunstfdi` and `__multc3` may be removed by the
preprocessor depending on configuration flags. When this happens, the
corresponding tests fail at link time due to missing definitions.
Disable these tests when the builtins are not available.
Also remove the XFAILs for aarch64 windows. As this test now became a
no-op on platforms that lack CRT_HAS_128BIT or CRT_HAS_F128 (aarch64
windows lacks the latter), it no longer fails.
This reapplies e9e166e54354330c474457711a8e7a7ca2efd731 and
656707086e5f6fccd2eb57f5aaf987c328c0f4f1 after fixing declarations of
the builtins in the tests in b54250940c2cd70f911386b02239b50c165e5354.
rdar://159705803
rdar://159705705
---------
Co-authored-by: Martin Storsjö <martin at martin.st>
Commit: 307440ad4bf994612894756f56fb91a95c3dd823
https://github.com/llvm/llvm-project/commit/307440ad4bf994612894756f56fb91a95c3dd823
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
Log Message:
-----------
[llvm][clang] Use the VFS in `GCOVProfilerPass` (#161260)
This PR starts using the correct VFS in `GCOVProfilerPass` instead of
using the real FS directly. This matches compiler's behavior for other
input files.
Commit: 3e5549f2e2267f2f352fde3a2e223cd4c241e8f5
https://github.com/llvm/llvm-project/commit/3e5549f2e2267f2f352fde3a2e223cd4c241e8f5
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
Log Message:
-----------
[CIR] fix enumeration value 'OMPFuseDirectiveClass' not handled in switch (#161278)
Commit: cee961179a020bd9920d04d695b6ae103f2833c6
https://github.com/llvm/llvm-project/commit/cee961179a020bd9920d04d695b6ae103f2833c6
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-atomic-inc-dec.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-fence.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
Log Message:
-----------
[AMDGPU][SPIRV] Use SPIR-V syncscopes for some AMDGCN BIs (#154867)
AMDGCN flavoured SPIR-V allows AMDGCN specific builtins, including those
for scoped fences and some specific RMWs. However, at present we don't
map syncscopes to their SPIR-V equivalents, but rather use the AMDGCN
ones. This ends up pessimising the resulting code as system scope is
used instead of device (agent) or subgroup (wavefront), so we correct
the behaviour, to ensure that we do the right thing during reverse
translation.
Commit: 378e4a3a72218b350e8c1abc44840fc20999696e
https://github.com/llvm/llvm-project/commit/378e4a3a72218b350e8c1abc44840fc20999696e
Author: Vladimir Vuksanovic <109677816+vvuksanovic at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp
A clang-tools-extra/test/clang-reorder-fields/FlexibleArrayMember.c
Log Message:
-----------
[clang-reorder-fields] Check for flexible array member (#160262)
A flexible array member must remain the last field in the struct.
Commit: 2945f09d1b365773d94c375ca52b43b04bb65212
https://github.com/llvm/llvm-project/commit/2945f09d1b365773d94c375ca52b43b04bb65212
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CAS/CMakeLists.txt
Log Message:
-----------
[CAS][CMake] Fix rhel bots missing symbol failure from #114100 (#161283)
Link LLVM_PTHREAD_LIB from LLVMCAS library to fix rhel bots.
Commit: 8b47b240b9914c83fb130a5a09f8d4e72f6b449e
https://github.com/llvm/llvm-project/commit/8b47b240b9914c83fb130a5a09f8d4e72f6b449e
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[clang-scan-deps] Remove const from ModuleDeps loop to enable move. (#161109)
This changes the iteration from const to non-const so that std::move
results in a true move rather than a copy.
Commit: 2389a67517d1eab744ae9c037e12106fb7a3ddec
https://github.com/llvm/llvm-project/commit/2389a67517d1eab744ae9c037e12106fb7a3ddec
Author: Renaud Kauffmann <rkauffmann at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
A mlir/test/Dialect/GPU/memref-to-llvm.mlir
Log Message:
-----------
Create function declaration in the proper module (#161281)
Using `memref.dealloc` in the gpu module would add a function definition
for `@free` in the the top level module instead of the gpu module. The
fix is to do what is already done for memref.alloc which is to use
`op->getParentWithTrait<OpTrait::SymbolTable>()` instead of
`op->getParentOfType<ModuleOp>()` to create the call in the proper
module.
Commit: 61a3996d014c8ba8f705063032a1762d507bb0cd
https://github.com/llvm/llvm-project/commit/61a3996d014c8ba8f705063032a1762d507bb0cd
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/test/wasm/archive-export.test
M lld/test/wasm/comdats.ll
M lld/test/wasm/visibility-hidden.ll
M lld/wasm/Driver.cpp
Log Message:
-----------
[lld][WebAssembly] Fix visibility of `__stack_pointer` global (#161284)
The stack pointer should be global, not hidden / dso-local. Marking it
as global allows it to be exported from the main module and imported
into side modules.
Commit: 4e7d7865615ba04c655c5ec040bec4f4c9d2c6c0
https://github.com/llvm/llvm-project/commit/4e7d7865615ba04c655c5ec040bec4f4c9d2c6c0
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
A clang/test/CIR/IR/global-init.cir
Log Message:
-----------
[CIR] Add GlobalOp ctor and dtor regions (#160779)
This adds support for ctor and dtor regions in cir::GlobalOp. These
regions are used to capture the code that initializes and cleans up the
variable, keeping this initialization and cleanup code with the variable
definition.
This change only adds the CIR dialect support for these regions. Support
for generating the code in these regions from source and lowering these
to LLVM IR will be added in a later change, as will LoweringPrepare
support to move the code into the __cxx_global_var_init() function.
Commit: 292f1781125eeda41452b703765a86a2a8995ab6
https://github.com/llvm/llvm-project/commit/292f1781125eeda41452b703765a86a2a8995ab6
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/lib/Parse/ParseExprCXX.cpp
M clang/test/Parser/cxx2b-lambdas-ext-warns.cpp
Log Message:
-----------
[Clang] Avoid null deref in lambda attribute compat warning (#161096)
Fixes #161070
---
This PR addresses the issue in `ext_decl_attrs_on_lambda` by using
`%0`=_attribute name_ and `%1`=_selector_, which prevents a null
`IdentifierInfo*`.
https://github.com/llvm/llvm-project/blob/48a6f2f85c8269d8326c185016801a4eb8d5dfd6/clang/lib/Parse/ParseExprCXX.cpp#L1299-L1302
https://github.com/llvm/llvm-project/blob/48a6f2f85c8269d8326c185016801a4eb8d5dfd6/clang/include/clang/Basic/DiagnosticParseKinds.td#L1143-L1145
https://github.com/llvm/llvm-project/blob/48a6f2f85c8269d8326c185016801a4eb8d5dfd6/clang/include/clang/Basic/DiagnosticParseKinds.td#L1149-L1152
Commit: 013880f27197b18ffed0d603890d10533fcfa4a1
https://github.com/llvm/llvm-project/commit/013880f27197b18ffed0d603890d10533fcfa4a1
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/docs/ReleaseNotes.rst
Log Message:
-----------
[lld][macho][NFC] Add release note for #158720 (#161295)
I forgot to add a release note for
https://github.com/llvm/llvm-project/pull/158720 so I'll add it here.
Commit: 3bcf395db70c7b898100cf3962d6cf71873e783b
https://github.com/llvm/llvm-project/commit/3bcf395db70c7b898100cf3962d6cf71873e783b
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm][mustache] Support setting delimiters in templates (#159187)
The base mustache spec allows setting custom delimiters, which slightly
change parsing of partials. This patch implements that feature by adding
a new token type, and changing the tokenizer's behavior to allow setting
custom delimiters.
Commit: c3b04a06b6cf363bb7eaaeccd32e6d147bb247a4
https://github.com/llvm/llvm-project/commit/c3b04a06b6cf363bb7eaaeccd32e6d147bb247a4
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/memchr.ll
Log Message:
-----------
[profcheck] Add unknown branch weight for inlined memchr calls. (#160964)
The memchr inliner creates new switch branches but was failling to add
profile metada. This patch fixes the issue by explicitly adding unknown
branch weights to these branches.
Issue [#147390](https://github.com/llvm/llvm-project/issues/147390)
Commit: c4ad30ced0196cffa89e0a8bf34ef984559c7a04
https://github.com/llvm/llvm-project/commit/c4ad30ced0196cffa89e0a8bf34ef984559c7a04
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Refactor tokenizer for clarity (#159188)
This patch refactors the Mustache tokenizer by breaking the logic up
with helper functions to improve clarity and simplify the code.
Commit: fde268b34848fba926dcb5521c0e688a897ad673
https://github.com/llvm/llvm-project/commit/fde268b34848fba926dcb5521c0e688a897ad673
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvinsve0.ll
Log Message:
-----------
[LoongArch][NFC] Pre-commit tests for `xvinsve0.{w/d}` (#160829)
Commit: 90a2d0bfc65f663839ecb9fc6016a2cd3071e54e
https://github.com/llvm/llvm-project/commit/90a2d0bfc65f663839ecb9fc6016a2cd3071e54e
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.h
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-hip.mlir
Log Message:
-----------
[mlir][GPU] Generalize gpu.printf to not need gpu.module (#161266)
In order to make the gpu.printf => [various LLVM calls] passes less
order-dependent and to allow downstreams that don't use gpu.module to
use gpu.printf, allow the flowerings for such prints to target the
nearest `SymbolTable` instead.
Commit: 721bd0e4178f956394bfebfdfafb3cdb9dba1293
https://github.com/llvm/llvm-project/commit/721bd0e4178f956394bfebfdfafb3cdb9dba1293
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Refactor template rendering (#159189)
Move the rendering logic into the ASTNode, and break the logic down into
individual methods.
Commit: ff06ca7156d866fc994c8e82563834283361ea5f
https://github.com/llvm/llvm-project/commit/ff06ca7156d866fc994c8e82563834283361ea5f
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvinsve0.ll
Log Message:
-----------
[LoongArch] Custom legalize vector_shuffle to `xvinsve0.{w/d}` when possible (#161156)
Commit: 76dc20a8798b0dd45a330d2c1d5df86e4fc8a319
https://github.com/llvm/llvm-project/commit/76dc20a8798b0dd45a330d2c1d5df86e4fc8a319
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-file-diagnostics.c.sarif
M clang/test/Analysis/lit.local.cfg
Log Message:
-----------
[analyzer] Use sed from the ToolBox on AIX (NFC) (#161242)
The change in commit 30402c7 breaks the tests on AIX. This patch
is to change to use the `sed` from AIX Toolbox instead of the default
one which does not support `-r` and `-E`.
Commit: dfb427dbe6aa140618b97a387afba2893bdb462c
https://github.com/llvm/llvm-project/commit/dfb427dbe6aa140618b97a387afba2893bdb462c
Author: wanglei <wanglei at loongson.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/test/MC/LoongArch/Macros/macros-la.s
Log Message:
-----------
[LoongArch] Add R_LARCH_MARK_LA relocation for la.abs
Match gas behavior: generate `R_LARCH_MARK_LA` relocation for `la.abs`.
Reviewers: heiher, SixWeining
Reviewed By: SixWeining, heiher
Pull Request: https://github.com/llvm/llvm-project/pull/161062
Commit: d38c784cb131d9f684a017d4bdb41d587561f5ea
https://github.com/llvm/llvm-project/commit/d38c784cb131d9f684a017d4bdb41d587561f5ea
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Remove out parameters from processTags() (#159190)
We can construct the return values directly and simplify the interface.
Commit: e54a6899d193dade601e90e6af31753e27593a68
https://github.com/llvm/llvm-project/commit/e54a6899d193dade601e90e6af31753e27593a68
Author: woruyu <1214539920 at qq.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp
Log Message:
-----------
[sanitizer] Handle nullptr name in prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME) (#160824)
### Summary
This PR resolves https://github.com/llvm/llvm-project/issues/160562
Commit: c3ccae8d68ea6f24e4408d33f162498838fa3f2c
https://github.com/llvm/llvm-project/commit/c3ccae8d68ea6f24e4408d33f162498838fa3f2c
Author: Luo, Yuanke <lyk_03 at hotmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCUDA/vararg.cu
Log Message:
-----------
[CUDA] Enable variadic argument support in front-end (#161305)
Variadice argument for NVPTX as been support in
https://github.com/llvm/llvm-project/commit/486d00eca6b6ab470e8324b52cdf9f32023c1c9a
We can enable it in front-end.
Co-authored-by: Yuanke Luo <ykluo at birentech.com>
Commit: 49b84e210a4552550aa0056314cc733a193d6765
https://github.com/llvm/llvm-project/commit/49b84e210a4552550aa0056314cc733a193d6765
Author: Fangrui Song <i at maskray.me>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/ELF/Relocations.cpp
Log Message:
-----------
ELF: Rename Relocations.cpp functions and rewrite the file-level comment. NFC
Pull Request: https://github.com/llvm/llvm-project/pull/161229
Commit: 75553caaf38dc7aa7fe6e987084496e6598f27df
https://github.com/llvm/llvm-project/commit/75553caaf38dc7aa7fe6e987084496e6598f27df
Author: Fangrui Song <i at maskray.me>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.cpp
Log Message:
-----------
ELF: Use preprocessed relocations for EhInputSection scanning
.eh_frame sections require special sub-section processing, specifically,
CIEs are de-duplicated and FDEs are garbage collected. Create a
specialized scanEhSection() function utilizing the just-added
EhInputSection::rels. OffsetGetter is moved to scanEhSection.
This improves separation of concerns between InputSection and
EhInputSection processing.
This removes another `relsOrRelas` call using `supportsCrel=false`.
DWARF.cpp now has the last call.
Pull Request: https://github.com/llvm/llvm-project/pull/161091
Commit: e440ef33da498e5d3122aec14eab9856d3496eb5
https://github.com/llvm/llvm-project/commit/e440ef33da498e5d3122aec14eab9856d3496eb5
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/Mustache.h
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Introduce MustacheContext to simplify mustache APIs (#159191)
Commit: 7e649ec87fbd2267ee2acd060ccfc3cdc2ae3d93
https://github.com/llvm/llvm-project/commit/7e649ec87fbd2267ee2acd060ccfc3cdc2ae3d93
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmax_legacy.ll
M llvm/test/CodeGen/AMDGPU/fmin_fmax_legacy.amdgcn.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.ll
M llvm/test/CodeGen/NVPTX/bug22322.ll
M llvm/test/CodeGen/PowerPC/scalar-min-max.ll
M llvm/test/CodeGen/VE/Scalar/max.ll
M llvm/test/CodeGen/VE/Scalar/min.ll
Log Message:
-----------
[DAGCombiner] Remove most `NoSignedZerosFPMath` uses (#161180)
Remained two uses are related to fneg and foldFPToIntToFP, some AMDGPU
tests are duplicated and regenerated.
Commit: 4a438b8a2d99bb783aa837107a7eb2da5f6bc2c2
https://github.com/llvm/llvm-project/commit/4a438b8a2d99bb783aa837107a7eb2da5f6bc2c2
Author: owenca <owenpiano at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in wrapping { after else (#161048)
Fixes #160775
Commit: 0b81eab7d45943b86592ab77bc719eaa22b99141
https://github.com/llvm/llvm-project/commit/0b81eab7d45943b86592ab77bc719eaa22b99141
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/bitfield-layout.cpp
Log Message:
-----------
[clang][Diags] Automatically format AP(S)Int values with separators (#161047)
This adds an `operator<<` overload for `StreamingDiagnostic` that takes
an `APInt`/`APSInt` and formats it with default options, including
adding separators.
This is still an opt-in mechanism since all callers that want to use
this feature need to be changed from
```c++
Diag() << toString(MyInt, 10);
```
to
```c++
Diag() << MyInt;
```
This patch contains one example of a diagnostic making use of this.
Commit: 11cc47ac6682cc666c986b2800379b7be0fd1a10
https://github.com/llvm/llvm-project/commit/11cc47ac6682cc666c986b2800379b7be0fd1a10
Author: quic_hchandel <hchandel at qti.qualcomm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/select-bare.ll
M llvm/test/CodeGen/RISCV/select-cc.ll
M llvm/test/CodeGen/RISCV/select-cond.ll
M llvm/test/CodeGen/RISCV/select.ll
M llvm/test/CodeGen/RISCV/xqcicm.ll
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Add commutative support for Qualcomm uC Xqcicm extension (#160653)
This is a follow-up to #145643. See
https://github.com/llvm/llvm-project/pull/145643#issuecomment-3009300419.
Commit: 2a55fd55eb6efe99cbd7e7cfc0ef0de044029d0d
https://github.com/llvm/llvm-project/commit/2a55fd55eb6efe99cbd7e7cfc0ef0de044029d0d
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
Log Message:
-----------
[MLIR][Python] Fix stubgen/PYTHONPATH collision/bug (#161307)
If `PYTHONPATH` is set and points to the build location of the python
bindings package then when stubgen runs, `_mlir` will get imported twice
and bad things will happen (e.g., `Assertion !instance && “PyGlobals
already constructed”’`). This happens because `mlir` is a namespace
package and the importer/loader can't distinguish between
`mlir._mlir_libs._mlir` and `_mlir_libs._mlir` imported from `CWD`. Or
something like that. The fix is to filter out any entries in
`PYTHONPATH` that end in `MLIR_BINDINGS_PYTHON_INSTALL_PREFIX/..` (e.g.,
`python_packages/mlir_core/`).
Commit: 0499e9d85659917b819ff2990c3c80041c2bd9c6
https://github.com/llvm/llvm-project/commit/0499e9d85659917b819ff2990c3c80041c2bd9c6
Author: halbi2 <hehiralbi at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/TokenKinds.def
M clang/lib/Sema/SemaTypeTraits.cpp
R clang/test/SemaCXX/type-trait-synthesises-from-spaceship.cpp
A clang/test/SemaCXX/type-trait-synthesizes-from-spaceship.cpp
M libcxx/include/__utility/default_three_way_comparator.h
M libcxx/include/string
M libcxx/test/libcxx/utilities/utility/has_default_three_way.compile.pass.cpp
Log Message:
-----------
[clang][libc++] Fix spelling of "synthesize" (#158523)
There is a tradition to use U.S. English spellings for APIs. For
example, it's uninitialized_fill and not uninitialised_fill,
specialization not specialisation, etcetera.
Commit: 935cb9f5cd05d774b3d80304eb631d88d7867ef1
https://github.com/llvm/llvm-project/commit/935cb9f5cd05d774b3d80304eb631d88d7867ef1
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
Log Message:
-----------
[clangd] Fix off-by-one error in CommandMangler (#160029)
SawInput() is intended to be called for every argument after a `--`, but
it was mistakenly being called for the `--` itself.
Partially fixes https://github.com/clangd/clangd/issues/1850
Commit: 9ffb321b5777d5af52dd2f665c40489568e96e82
https://github.com/llvm/llvm-project/commit/9ffb321b5777d5af52dd2f665c40489568e96e82
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/partial-reduce-accumulate.ll
Log Message:
-----------
[WebAssembly] Use partial_reduce_mla ISD nodes (#161184)
Addresssing issue #160847.
Move away from combining the intrinsic call and instead lower the ISD
nodes, using tablegen for pattern matching.
Commit: 7da1d39c8bccfa278fda9416f3a44e146a121997
https://github.com/llvm/llvm-project/commit/7da1d39c8bccfa278fda9416f3a44e146a121997
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
Log Message:
-----------
[clang][Tooling] Support 'c++latest' in InterpolatingCompilationDatabase (#160030)
Fixes https://github.com/clangd/clangd/issues/527
Fixes https://github.com/clangd/clangd/issues/1850
Commit: ab6188def673348778a5ff710f22bb621fa8df34
https://github.com/llvm/llvm-project/commit/ab6188def673348778a5ff710f22bb621fa8df34
Author: Hans Wennborg <hans at hanshq.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/Frontend/FrontendActions.cpp
M clang/test/Modules/cxx20-module-file-info-macros.cpp
Log Message:
-----------
[Modules] Make -module-file-info print macro names in deterministic order (#161332)
Developers reported non-deterministic output from `-module-file-info`,
thinking this reflected non-determinism in the .pcm files themselves.
However, it turned out it was the printing that was non-deterministic:
```
$ cat /tmp/a.h
#define FOO 1
#define BAR 2
$ build/bin/clang -cc1 -std=c++20 -x c++ -emit-header-unit /tmp/a.h -o /tmp/a.pcm
$ build/bin/clang -cc1 -module-file-info /tmp/a.pcm | grep -A2 Definitions
Macro Definitions:
FOO
BAR
$ build/bin/clang -cc1 -module-file-info /tmp/a.pcm | grep -A2 Definitions
Macro Definitions:
BAR
FOO
```
Making the output deterministic also simplifies the test.
This is a follow-up to 360c5fe54c0758c73bf85453fd2913f371adc7d5
Commit: b915704e00ac458939c71c78a4bfd1a047ac0341
https://github.com/llvm/llvm-project/commit/b915704e00ac458939c71c78a4bfd1a047ac0341
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/ExecutionEngine/LevelZeroRuntimeWrappers.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in LevelZeroRuntimeWrappers.cpp (NFC)
Commit: 6ca14656e771f260b5f35c9ac7e848577266b929
https://github.com/llvm/llvm-project/commit/6ca14656e771f260b5f35c9ac7e848577266b929
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-container-size-empty in Vectorization.cpp (NFC)
Commit: a4320d14d87e97eaa4abae6a4da9ce06a07131b0
https://github.com/llvm/llvm-project/commit/a4320d14d87e97eaa4abae6a4da9ce06a07131b0
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/X86/bitop-of-castops.ll
Log Message:
-----------
[VectorCombine] Preserve cast flags in foldBitOpOfCastConstant (#161237)
Follow-up of #157822.
Commit: 3fb680d343bdd4ead4d4e567a944173b9d3a957c
https://github.com/llvm/llvm-project/commit/3fb680d343bdd4ead4d4e567a944173b9d3a957c
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/GenericUniformityImpl.h
Log Message:
-----------
[Unifomity] Remove unused PhiInput definition (NFC) (#161116)
This appears to have no users.
Commit: 44e31d35f813c0e8c9bbdd225d8c1cee5f41d3cd
https://github.com/llvm/llvm-project/commit/44e31d35f813c0e8c9bbdd225d8c1cee5f41d3cd
Author: Jack Frankland <jack.frankland at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
Log Message:
-----------
[mlir][memref-to-spirv]: Remap Image Load Coordinates (#160495)
When converting a `memref.load` from the image address space to a
`spirv.ImageFetch` ensure that we correctly map the load indices to
width, height and depth.
The lowering currently assumes a linear image tiling, that is row-major
memory layout. This allows us to support any memref layout that is a
permutation of the dimensions, more complex layouts are not currently
supported. Because the ordering of the dimensions in the vector passed
to image fetch is the opposite to that in the memref directions a final
reversal of the mapped dimensions is always required.
---------
Signed-off-by: Jack Frankland <jack.frankland at arm.com>
Commit: c9e50689c748afabffa7c594fbf4b54e4970ae0c
https://github.com/llvm/llvm-project/commit/c9e50689c748afabffa7c594fbf4b54e4970ae0c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/Transforms/Transforms.h
M mlir/lib/Dialect/Arith/Transforms/ReifyValueBounds.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in ReifyValueBounds.cpp (NFC)
Commit: badd72f7e498351f1f4c11edfb847a3c5a112c51
https://github.com/llvm/llvm-project/commit/badd72f7e498351f1f4c11edfb847a3c5a112c51
Author: Sam Tebbs <samuel.tebbs at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
Log Message:
-----------
[LV] Add ExtNegatedMulAccReduction expression type (#160154)
This PR adds the ExtNegatedMulAccReduction expression type for
VPExpressionRecipe so that extend-multiply-accumulate reductions with a
negated multiply can be bundled.
Stacked PRs:
1. https://github.com/llvm/llvm-project/pull/156976
2. -> https://github.com/llvm/llvm-project/pull/160154
3. https://github.com/llvm/llvm-project/pull/147302
Commit: f5446319a7631469d66a5391a192d9cebab753f6
https://github.com/llvm/llvm-project/commit/f5446319a7631469d66a5391a192d9cebab753f6
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/isinf.ll
A llvm/test/CodeGen/AArch64/masked-integer-compare.ll
Log Message:
-----------
[AArch64] Simplify some masked integer comparisons. (#153783)
Specifically, `X & M ?= C --> (C << clz(M)) ?= (X << clz(M))` where M is
a non-empty sequence of ones starting at the least significant bit with
the remainder zero and C is a constant subset of M that cannot be
materialised into a SUBS (immediate). Proof:
https://alive2.llvm.org/ce/z/haqdJ4.
This improves the comparison in isinf, for example:
```cpp
int isinf(float x) {
return __builtin_isinf(x);
}
```
Before:
```
isinf:
fmov w9, s0
mov w8, #2139095040
and w9, w9, #0x7fffffff
cmp w9, w8
cset w0, eq
ret
```
After:
```
isinf:
fmov w9, s0
mov w8, #-16777216
cmp w8, w9, lsl #1
cset w0, eq
ret
```
Commit: bfa04e355d698f7e77b1d1c656cc273ac37a5d59
https://github.com/llvm/llvm-project/commit/bfa04e355d698f7e77b1d1c656cc273ac37a5d59
Author: BaiXilin <x53bai at uwaterloo.ca>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/Headers/avx10_2_512niintrin.h
M clang/lib/Headers/avxvnniint8intrin.h
M clang/test/CodeGen/X86/avxvnniint8-builtins.c
M llvm/include/llvm/IR/IntrinsicsX86.td
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
A llvm/test/CodeGen/X86/avx10.2-intrinsic-upgrade.ll
M llvm/test/CodeGen/X86/avx10_2_512ni-intrinsics.ll
M llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
A llvm/test/CodeGen/X86/avxvnniint8-intrinsics-upgrade.ll
M llvm/test/CodeGen/X86/avxvnniint8-intrinsics.ll
M llvm/test/CodeGen/X86/stack-folding-int-avxvnniint8.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx10_2_512ni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx10_2ni-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avxvnniint8-intrinsics.ll
M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
Log Message:
-----------
[x86][AVX-VNNI] Fix VPDPBXXD Argument Type (#159222)
Fixed intrinsic VPDP[SS,SU,UU]D[,S]_128/256/512's argument types to match with the ISA.
Fixes part of #97271.
Commit: d3f6749aca0de26081f5ed92b6c490ea19851dc4
https://github.com/llvm/llvm-project/commit/d3f6749aca0de26081f5ed92b6c490ea19851dc4
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A bolt/include/bolt/Core/MCInstUtils.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Core/CMakeLists.txt
A bolt/lib/Core/MCInstUtils.cpp
M bolt/lib/Passes/PAuthGadgetScanner.cpp
Log Message:
-----------
[BOLT] Refactor MCInstReference and move it to Core (NFC) (#155846)
Refactor MCInstReference class and move it from PAuth gadget scanner to
Core.
MCInstReference is a class representing a reference to a constant
instruction inside a parent entity - either inside a basic block (which
has a reference to its parent function) or directly inside a function
(when CFG information is not available).
This patch reapplies #138655 with a fix for iterator usage and multiple
minor issues fixed during the second round of review.
Commit: f2a588a943c33f8de831b1ef07d79497f3094dc7
https://github.com/llvm/llvm-project/commit/f2a588a943c33f8de831b1ef07d79497f3094dc7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/X86/cleanup-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/pr45259.ll
M llvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
Log Message:
-----------
[LV] Don't preserve LCSSA in SCEVExpander for runtime checks. (#159556)
LV does not preserve LCSSA, it constructs it just before processing a
loop to vectorize. Runtime check expressions are invariant to that loop,
so expanding them should not break LCSSA form for the loop we are about
to vectorize.
This fixes a crash when discarding instructions generated when expanding
runtime checks, if the expansion introduces LCSSA phis for values from
other loops which are not in LCSSA form: we would introduce new LCSSA
phis and update all outside users, some of which are not created by the
expander and cannot be cleaned up.
Fixes https://github.com/llvm/llvm-project/issues/158259.
PR: https://github.com/llvm/llvm-project/pull/159556
Commit: 2620ce76095a08c90e66e09e91bbe8897f901f5a
https://github.com/llvm/llvm-project/commit/2620ce76095a08c90e66e09e91bbe8897f901f5a
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do13.f90
A flang/test/Semantics/OpenMP/do22.f90
Log Message:
-----------
[Flang] Add perfect-nest and rectangular-loop semantic tests (#160283)
Add semantic tests of currently unsupported OpenMP canonical loops:
* non-perfectly nested canonical loop nests
* non-rectangular canonical loop nests
Both were introduced in OpenMP 5.0 and are not yet supported by Flang.
The message "Trip count must be computable and invariant" is the same
that OpenACC emits for non-rectangular loops in
`AccAttributeVisitor::CheckAssociatedLoop`. I considered reusing the
code, but calls OpenACC-only methods and has different behavior (e.g.
symbol resolution and does not check the step operand)
Commit: de930c7b132cc73fff991ff79e7aed7dc6f7197b
https://github.com/llvm/llvm-project/commit/de930c7b132cc73fff991ff79e7aed7dc6f7197b
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/reverse-induction-gep-nowrap-flags.ll
Log Message:
-----------
[LV] Preserve GEP nusw when widening memory (#160885)
Commit: c4609185c696533253699de70b6bab906c32c798
https://github.com/llvm/llvm-project/commit/c4609185c696533253699de70b6bab906c32c798
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
Log Message:
-----------
AMDGPU: Fix s_barrier_leave to write to scc (#161221)
s_barrier_leave implicitly defines $scc
and does not use imm that represents type of barrier,
isel pattern ignores imm operand from llvm intrinsic.
Test if SIInsertWaitcnts tracks this scc write.
Commit: f8f16325ac5a95fe395e60b7ef0574b86ab468f1
https://github.com/llvm/llvm-project/commit/f8f16325ac5a95fe395e60b7ef0574b86ab468f1
Author: Jeaye Wilkerson <contact at jeaye.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/Interpreter/IncrementalAction.cpp
M clang/lib/Interpreter/IncrementalParser.cpp
M clang/lib/Interpreter/Interpreter.cpp
A clang/test/Interpreter/execute-pch.cpp
M clang/test/lit.cfg.py
M clang/tools/clang-repl/ClangRepl.cpp
Log Message:
-----------
[clang-repl] Teach clang-repl how to load PCHs (reprise) (#157359)
This is an updated version of @vgvassilev's PR from last year here:
https://github.com/llvm/llvm-project/pull/94166
In short, it includes:
1. The fix for a blocking issue where `clang::Interpreter` (and thus
`clang-repl`) cannot resolve symbols defined in a PCH
2. A test to prove this is working
3. A new hidden flag for `clang-repl` so that `llvm-lit` can match the
host JIT triple between the PCH and `clang-repl`; previously, they may
differ in some cases
4. Everything based on the latest LLVM main
Shout out to @kylc for finding a logic issue which had us stumped for a
while (and securing the
[bounty](https://github.com/jank-lang/jank/issues/446)).
---------
Co-authored-by: Vassil Vassilev <v.g.vassilev at gmail.com>
Co-authored-by: Kyle Cesare <kcesare at gmail.com>
Commit: 5ce90bf8194b1ae1ae9a54c7f05366d12ad3be30
https://github.com/llvm/llvm-project/commit/5ce90bf8194b1ae1ae9a54c7f05366d12ad3be30
Author: Liao Chunyu <chunyu at iscas.ac.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/RISCVUsage.rst
Log Message:
-----------
[Docs][RISCV]Remove experimental from Smctr, Ssctr,Sdext and Sdtrig (#161058)
Commit: 8bb46476a3685ff2c2205a01a93162b8d72af486
https://github.com/llvm/llvm-project/commit/8bb46476a3685ff2c2205a01a93162b8d72af486
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
Log Message:
-----------
AMDGPU: Fix gcc build break (#161354)
Commit: 4f49dc4c8cb4d76aa9b829cdd390ee5ef78fc30b
https://github.com/llvm/llvm-project/commit/4f49dc4c8cb4d76aa9b829cdd390ee5ef78fc30b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/unittests/IR/IntrinsicsTest.cpp
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[LLVM] Fix a bug in `Intrinsic::getFnAttributes` (#161248)
Commit: 4185ac9bfa8d7054aa49ab8f43399aecd5efa152
https://github.com/llvm/llvm-project/commit/4185ac9bfa8d7054aa49ab8f43399aecd5efa152
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
Log Message:
-----------
[OpenACC][CIR] Generate private recipe pointer/array 'alloca's (#160911)
As a next step to generating pointer/array recipes, this patch generates
just the 'alloca' lines that are necessary. Copying pointers over to
restore the structure is held off to the next patch.
In the case of a pointer, we need to allocate the level 'below' it (if
we index into it), then copy the values into the pointers. In the case
of an array, we skip the alloca (since the array's alloca contains the
value).
After this, we'll need a patch that copies the pointers into place, and
finally one that does the initialization of these values.
Commit: 67df70ca651a7ff62b62553b49e558e5518ce9cf
https://github.com/llvm/llvm-project/commit/67df70ca651a7ff62b62553b49e558e5518ce9cf
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/PPCTypes.def
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/test/AST/ast-dump-ppc-types.c
M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
M clang/test/CodeGen/PowerPC/ppc-dmf-mma-builtin-err.c
M clang/test/CodeGen/PowerPC/ppc-dmf-types.c
M clang/test/CodeGenCXX/ppc-mangle-mma-types.cpp
M clang/test/Sema/ppc-dmf-types.c
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[Clang][PowerPC] Add __dmr2048 type and DMF crypto builtins (#157152)
Define the __dmr2048 type to represent the DMR pair introduced by the
Dense Math Facility on PowerPC, and add three Clang builtins
corresponding to DMF cryptography:
__builtin_mma_dmsha2hash
__builtin_mma_dmsha3hash
__builtin_mma_dmxxshapad
The __dmr2048 type is required for the dmsha3hash crypto builtin, and,
as withother PPC MMA and DMR types, its use is strongly restricted.
Commit: 0aec913711a2e8a47c1d0b29b27a566902780fa4
https://github.com/llvm/llvm-project/commit/0aec913711a2e8a47c1d0b29b27a566902780fa4
Author: Liao Chunyu <chunyu at iscas.ac.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
Log Message:
-----------
[RISCV][NFC] Update ratified extensions list in riscv-target-features.c
Commit: 055cc4f11cac8dc4bd3c368d12d11d12a1018c81
https://github.com/llvm/llvm-project/commit/055cc4f11cac8dc4bd3c368d12d11d12a1018c81
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/RISCV/basic-strided-loads.ll
Log Message:
-----------
[SLPVectorizer] Remove `align 16` in a test. (#161251)
It is not necessary.
Commit: ca64ad95a48b05f8d392ceb95e8fe666dd350a49
https://github.com/llvm/llvm-project/commit/ca64ad95a48b05f8d392ceb95e8fe666dd350a49
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/allocate-align01.f90
M flang/test/Semantics/OpenMP/allocate01.f90
Log Message:
-----------
[flang][OpenMP] Move semantic checks for ALLOCATE to check-omp-structure (#161249)
The checks were previously in resolve-directives, which is mostly
intended for determining symbol properties, not performing semantic
checks.
Commit: 7eaa6b41077547e0ea8a08779eb79f3c47f41398
https://github.com/llvm/llvm-project/commit/7eaa6b41077547e0ea8a08779eb79f3c47f41398
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/test-delete-tree.ll
Log Message:
-----------
[SLPVectorizer] Clear `TreeEntryToStridedPtrInfoMap`. (#160544)
We need to clear `TreeEntryToStridedPtrInfoMap` in `deleteTree`.
Commit: 695413d1dd4957a8aa812b2baf78d157c9f15258
https://github.com/llvm/llvm-project/commit/695413d1dd4957a8aa812b2baf78d157c9f15258
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/test/Integration/debug-split-dwarf.f90
A flang/test/Transforms/debug-split-dwarf.fir
Log Message:
-----------
[flang][debug] Generate splitDebugFilename field in DICompileUnitAttr. (#161214)
This PR builds on https://github.com/llvm/llvm-project/pull/160540 and
allows us to set the `splitDebugFilename` field in `DICompileUnitAttr`.
The changes are mostly mechanical.
I saw some spurious white space in a test that I have cleaned up.
Commit: 7b38e71ead8c78e2f437f7d9cb49e51a0be60358
https://github.com/llvm/llvm-project/commit/7b38e71ead8c78e2f437f7d9cb49e51a0be60358
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-container-size-empty in LinalgTransformOps.cpp (NFC)
Commit: 28b27aa578e1bae31bcfedc44ca2e6237c09c10b
https://github.com/llvm/llvm-project/commit/28b27aa578e1bae31bcfedc44ca2e6237c09c10b
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/TypeSize.h
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll
M llvm/unittests/Support/TypeSizeTest.cpp
Log Message:
-----------
[AArch64][SVE2p1] Allow more uses of mask in performActiveLaneMaskCombine (#159360)
The combine replaces a get_active_lane_mask used by two extract
subvectors with a single paired whilelo intrinsic. When the instruction
is used for control flow in a vector loop, an additional extract of element
0 may introduce other uses of the intrinsic such as ptest and reinterpret
cast, which is currently not supported.
This patch changes performActiveLaneMaskCombine to count the number
of extract subvectors using the mask instead of the total number of uses,
and returns the concatenated results of get_active_lane_mask.
Commit: 89c5863a5d494431364d2af823588dbe5d963b8e
https://github.com/llvm/llvm-project/commit/89c5863a5d494431364d2af823588dbe5d963b8e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/IR/Value.cpp
Log Message:
-----------
[IR] Don't create ptrtoint expression to determine alignment (NFCI) (#161364)
We try to determine the alignment of a constant by creating a ptrtoint
expression and seeing if it folds. I believe the only case this can
actually handle is where the constant is an inttoptr expression. Handle
that directly instead of going through another ptrtoint expression.
I ran into this while trying to clean up our isEliminableCastPair()
mess, which is going to disable ptrtoint(inttoptr) folding without
DataLayout, breaking this code.
Commit: a5885c1ec25897e2df5e0b5ef7d91c566ff48237
https://github.com/llvm/llvm-project/commit/a5885c1ec25897e2df5e0b5ef7d91c566ff48237
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
Log Message:
-----------
AMDGPU: Use srcvalue and delete Ignore complex pattern (#161359)
Commit: e1ba8543afee169da18022ed4cab3a25b0c7331a
https://github.com/llvm/llvm-project/commit/e1ba8543afee169da18022ed4cab3a25b0c7331a
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Math/IR/MathOps.td
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
M mlir/lib/Dialect/Math/IR/MathOps.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/MathToLLVM/math-to-llvm.mlir
M mlir/test/Dialect/Math/ops.mlir
Log Message:
-----------
[MLIR] Add sincos op to math dialect (#160772)
Now that `sincos` is a supported intrinsic in the LLVM dialect
(#160561) we are able to add the corresponding operation in
the math dialect and add conversion patterns for LLVM and NVVM.
We have several benchmarks that use sine and cosine in hot-loops, and
saving some calculations by performing them together can benefit
performance. We would like to have a way to represent sincos in the math
dialect.
Commit: 06c1b37c9f5013f27a599bafaa02095c120c1611
https://github.com/llvm/llvm-project/commit/06c1b37c9f5013f27a599bafaa02095c120c1611
Author: Balázs Benics <108414871+balazs-benics-sonarsource at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/test/Analysis/cxxctr-evalcall-analysis-order.cpp
Log Message:
-----------
[analyzer][NFC] Explain why operator new/delete should never be eval-called (#161370)
Downstream, some change triggered an investigation if we could move a
checker callback from check::PostCall to eval::Call. After a lengthy
investigation that lead to ExprEngine::VisitCXXNewExpr we realized that
CXXNewExprs only trigger a PreCall and PostCall, but never an EvalCall.
It also had a FIXME that maybe it should trigger it.
Remember, it called `defaultEvalCall` which either inlines or
conservatively evaluates aka. invalidates the call. But never probes the
checker eval-calls to see if any would step in.
After implementing the changes to trigger the eval call for the
checkers, I realized that it doesn't really make sense because we are
eval-calling user-provided functions, that we can't be really sure about
their semantics, thus there is no generic way to properly implement the
eval call callback.
This touches on an important point. It only ever makes sense to eval
call functions that has a clear spec. such as standard functions, as
implementing the callback would prevent the inlining of that function,
risking regressing analysis quality if the implemented model is not
complete/correct enough.
As a conclusion, I opted for not exposing the eval call event to
checkers, in other words, keep everything as-is, but document my
journey.
CPP-6585
Commit: de4a9d00d993f5ce6bff0f565ae298a5b26200e5
https://github.com/llvm/llvm-project/commit/de4a9d00d993f5ce6bff0f565ae298a5b26200e5
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[NFC][LV] Fix warning of unused SubConst variable
https://github.com/llvm/llvm-project/pull/160154 added an assertion
using a new variable, which caused a warning in builds without asserts.
This patch adds [[maybe_unused]] to prevent that warning.
Commit: 78feea97b3a5caa48a1bd63f75a390b3cfb25833
https://github.com/llvm/llvm-project/commit/78feea97b3a5caa48a1bd63f75a390b3cfb25833
Author: Valery Dmitriev <valeryd at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
R flang/test/HLFIR/simplify-hlfir-intrinsics-index.fir
Log Message:
-----------
Revert "[flang] Simplify hlfir.index in a few limited cases. (#157883)" (#161387)
This reverts commit edca510555fd6c2adfe15dba6993f4e64575e647 due to reported failures.
Commit: 7e73f37ec9328986f3f62cc6cdd36291e48c26f7
https://github.com/llvm/llvm-project/commit/7e73f37ec9328986f3f62cc6cdd36291e48c26f7
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
Log Message:
-----------
[AArch64][SME] Fix typo in docs "block" -> "bundle" (NFC) (#161383)
Commit: ab59ca1a7c25e902b4e6b4f413ac445ed43fef18
https://github.com/llvm/llvm-project/commit/ab59ca1a7c25e902b4e6b4f413ac445ed43fef18
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add RegBankLegalize support for buffer loads with formats (#161291)
Commit: 0a1c19b2e0a47659e5df7ed0112b86acbbd94f91
https://github.com/llvm/llvm-project/commit/0a1c19b2e0a47659e5df7ed0112b86acbbd94f91
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Integration/debug-complex-1.f90
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-1.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-ref-type.fir
M flang/test/Transforms/debug-tuple-type.fir
M flang/test/Transforms/debug-vector-type.fir
Log Message:
-----------
[flang][debug] Improve name generation for basic types. (#161361)
For basic types, currently, we use the type name (e.g., `integer`,
`real`) as the debug name. This results in types of different sizes
having the same name. This patch improves the naming by appending the
size in bytes to the type name (e.g., `integer*8`, `real*8`).
Fixes https://github.com/llvm/llvm-project/issues/160890
Commit: 3df71ddf99b65ce9746971a9b5b9c239ef2b0623
https://github.com/llvm/llvm-project/commit/3df71ddf99b65ce9746971a9b5b9c239ef2b0623
Author: Marcos Maronas <marcos.maronas at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/test/CodeGen/SPIRV/capability-FloatControl2.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/decoration.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/exec_mode.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/exec_mode2.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/exec_mode3.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/replacements.ll
Log Message:
-----------
[SPIR-V] Implement SPV_KHR_float_controls2 (#146941)
Implementation of
[SPV_KHR_float_controls2](https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_float_controls2.html)
extension, and corresponding tests.
Some of the tests make use of `!spirv.ExecutionMode` LLVM named
metadata. This is because some SPIR-V instructions don't have a direct
equivalent in LLVM IR, so the SPIR-V Target uses different LLVM named
metadata to convey the necessary information. Below, you will find an
example from one of the newly added tests:
```
!spirv.ExecutionMode = !{!19, !20, !21, !22, !23, !24, !25, !26, !27}
!19 = !{ptr @k_float_controls_float, i32 6028, float poison, i32 131079}
!20 = !{ptr @k_float_controls_all, i32 6028, float poison, i32 131079}
!21 = !{ptr @k_float_controls_float, i32 31}
!22 = !{ptr @k_float_controls_all, i32 31}
!23 = !{ptr @k_float_controls_float, i32 4461, i32 32}
!24 = !{ptr @k_float_controls_all, i32 4461, i32 16}
!25 = !{ptr @k_float_controls_all, i32 4461, i32 32}
!26 = !{ptr @k_float_controls_all, i32 4461, i32 64}
!27 = !{ptr @k_float_controls_all, i32 4461, i32 128}
```
`!spirv.ExecutionMode` contains a list of metadata nodes, and each of
them specifies the required operands for expressing a particular
`OpExecutionMode` instruction in SPIR-V. For example, `!19 = !{ptr
@k_float_controls_float, i32 6028, float poison, i32 131079}` will be
lowered to `OpExecutionMode [[k_float_controls_float_ID]]
FPFastMathDefault [[float_type_ID]] 131079`.
---------
Co-authored-by: Dmitry Sidorov <dmitry.sidorov at intel.com>
Commit: c89faf6ae3353e8a4d03514e0a182930b64ed75b
https://github.com/llvm/llvm-project/commit/c89faf6ae3353e8a4d03514e0a182930b64ed75b
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
Log Message:
-----------
[CodeGen] Fix performance regression introduced in b05101b
The isNormalValueType = false flag was not set for this pseudo value
type, which caused significant size increases for some classes: the
size of the TargetLoweringBase class to 1.5 MB, because the size of
that class is quadratic in MVT::VALUETYPE_SIZE, and this commit
increased that from 256 to 504.
Reported by: abadams
Fixes: b05101b ("[TableGen, CodeGen, CHERI] Add support for the cPTR wildcard value type.")
Reviewed By: nikic
Pull Request: https://github.com/llvm/llvm-project/pull/161313
Commit: a9ea793a934c0e9e17d42ae82ba7bf6af72b36d0
https://github.com/llvm/llvm-project/commit/a9ea793a934c0e9e17d42ae82ba7bf6af72b36d0
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
A llvm/test/CodeGen/AArch64/seh-minimal-prologue-epilogue.ll
A llvm/test/CodeGen/AArch64/wincfi-minimal-seh-prologue.ll
R llvm/test/CodeGen/AArch64/wincfi-seh-only-in-epilogue.ll
Log Message:
-----------
Aarch64: Emit a minimal SEH prologue when needed (#158173)
In some cases, with very simple thunks, it is possible that the
`.seh_endprologue` is not emitted. This causes issues in the assembler
because the epilogue ends up starting before the prologue has ended.
Bug: swiftlang/llvm-project#11377
Commit: ad3e915a38e291b17bad23cd34983be13504e0b0
https://github.com/llvm/llvm-project/commit/ad3e915a38e291b17bad23cd34983be13504e0b0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
A llvm/test/CodeGen/ARM/issue159343.ll
A llvm/test/CodeGen/ARM/pr159343.mir
M llvm/test/CodeGen/ARM/shouldRewriteCopySrc.ll
Log Message:
-----------
PeepholeOpt: Try to constrain uses to support subregister (#161338)
This allows removing a special case hack in ARM. ARM's implementation
of getExtractSubregLikeInputs has the strange property that it reports
a register with a class that does not support the reported subregister
index. We can however reconstrain the register to support this usage.
This is an alternative to #159600. I've included the test, but
the output is different. In this case version the VMOVSR is
replaced with an ordinary subregister extract copy.
Commit: 142cf9d65b28e9f12c3a5c9ea5618b2fadf71e0c
https://github.com/llvm/llvm-project/commit/142cf9d65b28e9f12c3a5c9ea5618b2fadf71e0c
Author: Martin Storsjö <martin at martin.st>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libcxx/test/std/containers/sequences/vector/common.h
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.append.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.concat.pass.cpp
M libcxx/test/support/count_new.h
Log Message:
-----------
[libc++][test] Use ASSERT_WITH_LIBRARY_INTERNAL_ALLOCATIONS in more places (#144339)
ASSERT_WITH_LIBRARY_INTERNAL_ALLOCATIONS allows waiving asserts, for
cases when we can't count allocations that happen within the libc++
shared library.
When compiling with optimization, it is possible that some calls end up
generated inline, where the overridden operator new/delete do get called
(counting those calls), whereas the compiler may decide to leave some
calls to the external definition (inside the shared library, where we
can't count the calls).
In particular, in one case, a non-optimized build calls
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev from
the DLL, while it gets inlined (including direct calls to operator
delete) when built with optimization.
Therefore; for the cases where we can't count allocations internally
within the library, waive these asserts.
This fixes all testcases in mingw mode, when built with optimization
enabled.
Commit: 33abc746db098a546025c2af59c1514aa149b551
https://github.com/llvm/llvm-project/commit/33abc746db098a546025c2af59c1514aa149b551
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/array_types.ll
M llvm/test/Instrumentation/MemorySanitizer/bmi.ll
M llvm/test/Instrumentation/MemorySanitizer/byval.ll
Log Message:
-----------
[MemorySanitizer] Generate some test checks (NFC)
Commit: 09f14881c14a50f7f3a0a2b424cafbc32f8ca8af
https://github.com/llvm/llvm-project/commit/09f14881c14a50f7f3a0a2b424cafbc32f8ca8af
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/istream
A libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/ignore.char_type.pass.cpp
Log Message:
-----------
[libc++][istream] P3223R2: Making `std::istream::ignore` less surprising (#147007)
Implements https://wg21.link/P3223R2 as a DR as, as recommended in
https://github.com/cplusplus/papers/issues/1871#issuecomment-2993018698.
Resolves -1L ambiguity.
Closes #148178
Commit: 07d1a09553adfb3f7a85c61389492c248a15bee8
https://github.com/llvm/llvm-project/commit/07d1a09553adfb3f7a85c61389492c248a15bee8
Author: Félix-Antoine Constantin <felix-antoine.constantin at comact.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/invalid-enum-default-initialization.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
Log Message:
-----------
[clang-tidy]Â New Option Invalid Enum Default Initialization (#159220)
Added a new Option IgnoredEnums to bugprone invalid enum default
initialization to limit the scope of the analysis. This is needed to
remove warnings on enums like std::errc where the enum doesn't define a
value of 0, but is still used to check if some function calls like
std::from_chars are executed correctly.
The C++ Standard section 22.13.2 mentions the following : "[...] If the
member ec of the return value is such that the value is equal to the
value of a value-initialized errc, the conversion was successful [...]"
This means that a call to `std::errc{}` is clearly defined by the
standard and should not raise any warning under this check.
Commit: 1528ca2d24b93a6d93e551e45192808e385a1418
https://github.com/llvm/llvm-project/commit/1528ca2d24b93a6d93e551e45192808e385a1418
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
Log Message:
-----------
[flang][OpenMP] Remove unused DECLARE REDUCTION from openmp-utils.h, NFC (#161390)
DECLARE REDUCTION is now handled by the generic code, and the special
handling no longer applies.
Commit: 2785659aa535456f2a25a79dee28d0f886dc4fe9
https://github.com/llvm/llvm-project/commit/2785659aa535456f2a25a79dee28d0f886dc4fe9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/AllocatorList.h
Log Message:
-----------
[ADT] Add const to AllocatorList::{empty,size} (#161320)
While I am at it, this patch adds [[nodiscard]].
Commit: 72b3537b9761e6b28e090796f79b078086575183
https://github.com/llvm/llvm-project/commit/72b3537b9761e6b28e090796f79b078086575183
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/ArrayRef.h
Log Message:
-----------
[ADT] Add const to operator== in ArrayRef.h (#161321)
While I am at it, this patch adds [[nodiscard]].
Commit: 3df4721949f504b7f56d08b91df8726853b22032
https://github.com/llvm/llvm-project/commit/3df4721949f504b7f56d08b91df8726853b22032
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/TrailingObjects.h
Log Message:
-----------
[ADT] Make non-const functions forward to const versions (NFC) (#161323)
These functions all correspond to their respective const versions.
This patch uses the "const_cast" trick to forward to the const
versions.
Commit: e85d7d0fab1729979d7dfb5d80c2222ba26b6017
https://github.com/llvm/llvm-project/commit/e85d7d0fab1729979d7dfb5d80c2222ba26b6017
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/CIBestPractices.rst
Log Message:
-----------
[llvm] Proofread CIBestPractices.rst (#161324)
Commit: d358bbc1cd1209b48f5369d33c4117f8be48901a
https://github.com/llvm/llvm-project/commit/d358bbc1cd1209b48f5369d33c4117f8be48901a
Author: YixingZhang007 <yixing.zhang at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/CodeGen/SPIRV/instructions/integer-casts.ll
A llvm/test/CodeGen/SPIRV/instructions/quantizeto16.ll
Log Message:
-----------
[SPIRV] Avoid OpQuantizeToF16 in SPIR-V kernel test (#158086)
This PR resolves the current failure in the `integer-casts.ll` SPIR-V
test during CI runs in `llvm-project`.
The failure occurs because the SPIR-V instruction `OpQuantizeToF16`
requires the `Capability::Shader`. However, the function in
`integer-casts.ll` is written as a kernel function and executed in a
kernel environment. Therefore, `Capability::Kernel` is emitted instead
of `Capability::Shader`. To fix this, we remove the `QuantizeToF16` test
from`integer-casts.ll` in this PR.
Commit: 2366fd3d6ee0cf2b6e2d5acd812100a4222abf48
https://github.com/llvm/llvm-project/commit/2366fd3d6ee0cf2b6e2d5acd812100a4222abf48
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Make blockNeedsPredication arguments const (NFC).
The arguments aren't modified, mark them as const. This prepares for new
users in a follow-up, which only have access to const versions of the
arguments.
Commit: 1ccec2756b4e7143da557a0b21e5acabb57affa8
https://github.com/llvm/llvm-project/commit/1ccec2756b4e7143da557a0b21e5acabb57affa8
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
Log Message:
-----------
[PowerPC] Implement Elliptic Curve Cryptography (ECC) Instructions (#158362)
New instructions added:
* xxmulmul
* xxmulmulhiadd
* xxmulmulloadd
* xxssumudm
* xxssumudmc
* xxssumudmcext
* xsaddadduqm
* xsaddaddsuqm
* xsaddsubuqm
* xsaddsubsuqm
* xsmerge2t1uqm
* xsmerge2t2uqm
* xsmerge2t3uqm
* xsmerge3t1uqm
* xsrebase2t1uqm
* xsrebase2t2uqm
* xsrebase2t3uqm
* xsrebase2t4uqm
* xsrebase3t1uqm
* xsrebase3t2uqm
* xsrebase3t3uqm
Commit: 247ee58e7da507f484ac51bad7b3b8f10a9d1bf7
https://github.com/llvm/llvm-project/commit/247ee58e7da507f484ac51bad7b3b8f10a9d1bf7
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/MachO/SyntheticSections.cpp
Log Message:
-----------
[lld][macho][NFC] Factor count zeros into helper function (#161241)
Move `llvm::countr_zero()` into a helper function to reduce code
duplication between `CStringSection` and `DeduplicatedCStringSection`.
More importantly, this moves a giant comment to that helper function
since it pertains to both classes.
Commit: 36c16f48d2bf6d02fd34866671c8f9046ae2b5e5
https://github.com/llvm/llvm-project/commit/36c16f48d2bf6d02fd34866671c8f9046ae2b5e5
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/test/CIR/CodeGen/struct.cpp
Log Message:
-----------
[CIR] Upstream ParenExpr for AggregateExpr (#160998)
Upstream ParenExpr support for AggregateExpr
Commit: 20d3be28a5bc3ec506ca3eab1894d52d4194c860
https://github.com/llvm/llvm-project/commit/20d3be28a5bc3ec506ca3eab1894d52d4194c860
Author: sebvince <115461989+sebvince at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
Log Message:
-----------
[MLIR][SCF] Add loops as parameter to LoopTerminator callback when using CustomOp. (#161386)
This PR adds to the generateLoopTerminatorFn callback the loops
generated by GenerateLoopHeaderFn. This is needed to correctly set the
insertion point with scf.forall ops.
Commit: 54a7b152b51d3aa6346b07cd1798b863c725aaae
https://github.com/llvm/llvm-project/commit/54a7b152b51d3aa6346b07cd1798b863c725aaae
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
A llvm/test/CodeGen/AArch64/and-mask-variable.ll
M llvm/test/CodeGen/AArch64/extract-bits.ll
M llvm/test/CodeGen/AArch64/extract-lowbits.ll
Log Message:
-----------
[AArch64] shouldFoldMaskToVariableShiftPair should be true for scalars up to the biggest legal type (#158069)
For AArch64, we want to do this up to 64-bits. Otherwise this results in
bloated code.
Commit: 5f3f6fedd8d7201d363c762d9ee5ed1226f050a0
https://github.com/llvm/llvm-project/commit/5f3f6fedd8d7201d363c762d9ee5ed1226f050a0
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[llvm-readobj][NFC] Restore and disable clang-format for machine type list (#160122)
The original code was more readable, just disable `clang-format` for
this code.
See https://github.com/llvm/llvm-project/pull/159793
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 01a0a9383d78025223702f9889b7825452fc97a6
https://github.com/llvm/llvm-project/commit/01a0a9383d78025223702f9889b7825452fc97a6
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lld/MachO/SyntheticSections.cpp
M lld/MachO/SyntheticSections.h
Log Message:
-----------
[lld][MachO] Use llvm::Align and remove StringOffset type (#161253)
Use `llvm::Align` instead of directly storing the shift amount for
clarity. Also remove the `DeduplicatedCStringSection::StringOffset` in
favor of simply storing the `uint64_t` offset since `trailingZeros` is
not used outside of `finalizeContents()`. These two changes allow us to
refactor `finalizeContents()`.
No function change intended.
Depends on https://github.com/llvm/llvm-project/pull/161241.
Commit: 137f11c7cab22dd44ea1698fc1f9a334ec3bad2a
https://github.com/llvm/llvm-project/commit/137f11c7cab22dd44ea1698fc1f9a334ec3bad2a
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/XeVMOps.td
M mlir/test/Dialect/LLVMIR/xevm.mlir
Log Message:
-----------
[MLIR][XeVM] Add XeVM special id ops. (#160735)
Add special GPU id, index ops.
Commit: 85c007832c8507c16e8ce850e6d2cf29c4dac441
https://github.com/llvm/llvm-project/commit/85c007832c8507c16e8ce850e6d2cf29c4dac441
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/test/CIR/CodeGen/struct.cpp
Log Message:
-----------
[CIR] Implement ChooseExpr for AggregateExpr (#160999)
Implement the ChooseExpr for aggregate expr
Commit: 70c5430a5458c9860c0464f988a8066287144feb
https://github.com/llvm/llvm-project/commit/70c5430a5458c9860c0464f988a8066287144feb
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/docs/Extensions.md
M flang/lib/Semantics/assignment.cpp
A flang/test/Semantics/bug133669.f90
Log Message:
-----------
[flang] Emit error on impossible-to-implement construct (#160384)
An assignment to a whole polymorphic allocatable changes its dynamic
type to the type of the right-hand side expression. But when the
assignment is under control of a WHERE statement, or a FORALL / DO
CONCURRENT with a mask expression, there is no interpretation of the
assignment, as the type of a variable must be the same for all of its
elements.
There is no restriction in the standard against this usage, and no other
Fortran compiler complains about it. But it is not possible to implement
it in general, and the behavior produced by other compilers is not
reasonable, much less worthy of emulating. It's best to simply disallow
it with an error message.
Fixes https://github.com/llvm/llvm-project/issues/133669, or more
accurately, resolves it.
Commit: 5ada7cbdc5ac0eff618880c33b5435ae9e8a6465
https://github.com/llvm/llvm-project/commit/5ada7cbdc5ac0eff618880c33b5435ae9e8a6465
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/io-error.h
M flang-rt/include/flang-rt/runtime/io-stmt.h
M flang-rt/lib/runtime/descriptor-io.cpp
M flang-rt/lib/runtime/edit-input.cpp
M flang-rt/lib/runtime/io-stmt.cpp
M flang/docs/Extensions.md
Log Message:
-----------
[flang][runtime] Let more list-directed child input advance (#160590)
Whether list-directed child READ statements should be allowed to advance
to further records is neither explicit in the standard nor consistent in
existing Fortran implementations. We allow child namelist READ
statements to advance, but not other list- directed child input.
This patch refines our interpretation of this case. Child namelist READ
statements continue to be able to advance; in addition, non-namelist
child READ statements can now advance if their parent READ statement is
a list-directed input statement at the top level, or a child that could.
But non-namelist list-directed child input taking place in a context
with explicit format control won't advance to following records, so that
the format-controlled parent READ statement can retain control over
record advancement.
Also corrects two cases of record repositioning in numeric input
editing, which were failing under child input because they weren't
allowing for left tab limits.
Fixes https://github.com/llvm/llvm-project/issues/160351.
Commit: d4059b55b61a700caddec0f028ae92034a7fa7f4
https://github.com/llvm/llvm-project/commit/d4059b55b61a700caddec0f028ae92034a7fa7f4
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/format-implementation.h
M flang-rt/include/flang-rt/runtime/format.h
M flang-rt/include/flang-rt/runtime/io-stmt.h
M flang-rt/lib/runtime/descriptor-io.cpp
M flang-rt/unittests/Runtime/Format.cpp
Log Message:
-----------
[flang][runtime] Expand IOTYPE and V_LIST (#160744)
The IOTYPE and V_LIST dummy arguments to a defined formatted I/O
subroutine are extracted from a DT edit descriptor in a FORMAT. They are
currently stored in the DataEdit structure, and their maximum sizes are
rather small since DataEdits are sometimes returned or passed by value.
This patch moves their storage into the FormattedIoStatementState
structure and enlarges them a bit.
Fixes https://github.com/llvm/llvm-project/issues/154954.
Commit: e23294bb18ad55a9279043ba18f697f4c19c0257
https://github.com/llvm/llvm-project/commit/e23294bb18ad55a9279043ba18f697f4c19c0257
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Evaluate/constant.cpp
A flang/test/Evaluate/Inputs/comporder1.mod
A flang/test/Evaluate/Inputs/comporder2.mod
A flang/test/Evaluate/comporder.f90
Log Message:
-----------
[flang] Fix crash in structure constructor lowering (#160769)
MLIR types created by lowering for structure constructors appear to be
sensitive to the ordering of their components in the typed expression
representation used for structure constructors and derived type constant
values.
At present, the components appear in source position order. When some
ancestral types are defined in modules, this ordering can cause their
components to be ordered after components defined in extended derived
types. This can lead to crashes from incompatible MLIR types.
To avoid this issue, sort structure constructor components first in
ascending order of derived type extension depth; retain source position
ordering for components in the same derived type and for error recovery
situations.
Fixes https://github.com/llvm/llvm-project/issues/143740.
Commit: 45a4e1f0c48d1e36be21f00af8f0c920b5344e19
https://github.com/llvm/llvm-project/commit/45a4e1f0c48d1e36be21f00af8f0c920b5344e19
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/VirtualFileSystem.cpp
M llvm/unittests/Support/VirtualFileSystemTest.cpp
Log Message:
-----------
[llvm] Use the VFS to make path absolute (#161271)
For the redirecting VFS, the `'overlay-relative'` option controls
whether external paths should be appended to the overlay directory. This
didn't always work as expected: when the overlay file path itself was
relative, its absolute path was decided by the real FS, not the
underlying VFS, and the resulting external path didn't exist in the
underlying VFS. This PR fixes this issue.
Commit: 68f71c0b777d87a90a51c745bf371eeb1ba1f137
https://github.com/llvm/llvm-project/commit/68f71c0b777d87a90a51c745bf371eeb1ba1f137
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/prescan.h
A flang/test/Preprocessing/fixed-free.f
Log Message:
-----------
[flang] Don't retain FIXED/FREE compiler directives (#160780)
Some old code in the prescanner, antedating the current -E output
mechanisms, retains the !DIR$ FIXED and !DIR$ FREE directives in the
input, and will even generate them to append to the scanned source from
source and include files to restore the fixed/free source form
distinction. But these directives have not been needed since the -E
output generator began generating source form insensitive output, and
they can confuse the parser's error recovery when the appended
directives follow the END statement. Change their handling so that
they're read and respected by the prescanner but no longer retained in
either the -E output or the cooked character stream passed on to the
parser.
Fixes a regression reported by @danielcchen after PR 159834.
Commit: 3e192af309b16edd0f04f42604a342fffd148944
https://github.com/llvm/llvm-project/commit/3e192af309b16edd0f04f42604a342fffd148944
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Evaluate/intrinsics.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/bug157124.f90
Log Message:
-----------
[flang] Catch calls to impure intrinsics from PURE subprograms (#160947)
The code in expression semantics that catches a call to an impure
procedure in a PURE context misses calls to impure intrinsics, since
their designators have a SpecificIntrinsic rather than a Symbol. Replace
the current check with a new one that uses the characteristics of the
called procedure, which works for both intrinsic and non-intrinsic
cases.
Testing this change revealed that an explicit INTRINSIC statement wasn't
doing the right thing for extension "dual" intrinsics that can be called
as either a function or as a subroutine; the use of an INTRINSIC
statement would disallow its use as a subroutine. I've fixed that here
as well.
Fixes https://github.com/llvm/llvm-project/issues/157124.
Commit: 832559b6e5820512a0c8136cbf2ed4fddbe28b90
https://github.com/llvm/llvm-project/commit/832559b6e5820512a0c8136cbf2ed4fddbe28b90
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Parser/message.h
M flang/lib/Parser/basic-parsers.h
M flang/lib/Parser/message.cpp
A flang/test/Parser/recovery08.f90
Log Message:
-----------
[flang] Improve presentation of errors after last source line (#161391)
We don't emit source file names or line numbers for error messages at
EOF. Detect these and handle them a little better, pointing at the
newline at the end of the last source line instead.
Commit: b402fbd8e46ddc24adc7ba2edf5391062a6b6862
https://github.com/llvm/llvm-project/commit/b402fbd8e46ddc24adc7ba2edf5391062a6b6862
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h
Log Message:
-----------
[llvm] Fix build after #161260
The modular build was failing due to a missing include.
Commit: 304e4d9fcafcf700bc759d27451d8d5fe5ddc697
https://github.com/llvm/llvm-project/commit/304e4d9fcafcf700bc759d27451d8d5fe5ddc697
Author: Marco Elver <elver at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/TableGen/CPtrWildcard.td
Log Message:
-----------
[TableGen, CHERI] Make CPtrWildcard test tolerant to unrelated changes (#161406)
Changes to llvm/include/llvm/IR/Intrinsics.td may change the constants
that are embedded in this test. Use wildcards, so that unrelated changes
do not trip over this test failing.
Fixes: https://github.com/llvm/llvm-project/pull/158426
Commit: bdfd2c915b9b3985d44757ff9688008849dabf65
https://github.com/llvm/llvm-project/commit/bdfd2c915b9b3985d44757ff9688008849dabf65
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Serialization/ModuleCache.h
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
Log Message:
-----------
[clang][modules] Virtualize module cache pruning (#149113)
This PR virtualizes module cache pruning via the new `ModuleCache`
interface. Currently this is an NFC, but I left a FIXME in
`InProcessModuleCache` to make this more efficient for the dependency
scanner.
Commit: be71e5adbe688159498e246bd465740faceb2d7b
https://github.com/llvm/llvm-project/commit/be71e5adbe688159498e246bd465740faceb2d7b
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/test/Dialect/GPU/ops.mlir
Log Message:
-----------
[MLIR] Fix gpu.launch attribution argument printing (#161408)
This was broken and never tested.
Not only this could crash for stack-use-after-scope, but it also would
have printed something like:
```
value <block argument> of type 'memref<7x8xf64, #gpu.address_space<workgroup>>' at index: 12
```
insted of the SSA value.
It turns out the gpu.func already have a very similar helper that we can
reuse here.
Fixes #161394
Commit: c20c003ab91f579c63bc2d8f90e427e816224198
https://github.com/llvm/llvm-project/commit/c20c003ab91f579c63bc2d8f90e427e816224198
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/Driver/riscv-cpus.c
Log Message:
-----------
[RISCV] Add missing CHECK lines for Zkt to sifive-p450/p470/p670 test. NFC (#161393)
Commit: 0ab71fcb0e027f262d78c8b9e6ead4900fd7d570
https://github.com/llvm/llvm-project/commit/0ab71fcb0e027f262d78c8b9e6ead4900fd7d570
Author: Yury Plyakhin <yury.plyakhin at intel.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
Log Message:
-----------
[clang-sycl-linker] Generate SymbolTable for each image (#161287)
This PR adds extraction of kernel names for each image and stores them
to the Image's StringData field.
Commit: a9c696cd26db6bd6db3d042c356a3ecf26706a9f
https://github.com/llvm/llvm-project/commit/a9c696cd26db6bd6db3d042c356a3ecf26706a9f
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
Log Message:
-----------
[clang] Cleanup docs and code for legacy no_sanitize attributes (NFC). (#161311)
Update generated docs for legacy attributes:
* no_sanitize_(address|thread|memory)
* no_address_safety_analysis
Those are older forms of no_sanitize("list", "of", "sanitizers")
attribute. They were previously as various spellings of the same
attribute, which made the auto-generated documentation confusing.
Fix this by explicitly making them three different attributes. This
would also allow to simplify the delegation to the new no_sanitize form
slightly, as we can instead rely on auto-generated code to check that
TSan and MSan can't be disabled for globals.
**HTML docs before:**
<img width="1004" height="1175" alt="rendered-docs-before"
src="https://github.com/user-attachments/assets/407b5fc1-799c-4882-8ff8-44a5ef3cf4f1"
/>
**HTML docs after:**
<img width="1098" height="1118" alt="rendered-docs-after"
src="https://github.com/user-attachments/assets/236ca93f-25f8-4d58-95ac-ede95ce18d01"
/>
---------
Co-authored-by: Erich Keane <ekeane at nvidia.com>
Commit: aaad5dff895324b83d01de55316247f63bc57fcf
https://github.com/llvm/llvm-project/commit/aaad5dff895324b83d01de55316247f63bc57fcf
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/vtt.cpp
Log Message:
-----------
[CIR] Upstream RTTI Builder & RTTI for VTable Definitions (#160002)
Upstream the RTTI builder with helpers and used them in the VTable
Definitions
Issue https://github.com/llvm/llvm-project/issues/154992
Commit: 18cd8e2cd790da4dcd60be4d4a177aae92d7796a
https://github.com/llvm/llvm-project/commit/18cd8e2cd790da4dcd60be4d4a177aae92d7796a
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M bolt/include/bolt/Core/MCInstUtils.h
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
Log Message:
-----------
[BOLT] Introduce helpers to match `MCInst`s one at a time (NFC) (#138883)
Introduce a low-level instruction matching DSL to capture and/or match
the operands of MCInst, single instruction at a time. Unlike the
existing `MCPlusBuilder::MCInstMatcher` machinery, this DSL is intended
for the use cases when the precise control over the instruction order is
required. For example, when validating PtrAuth hardening, all registers
are usually considered unsafe after a function call, even though
callee-saved registers should preserve their old
values _under normal operation_.
Usage example:
// Bring the short names into the local scope:
using namespace LowLevelInstMatcherDSL;
// Declare the registers to capture:
Reg Xn, Xm;
// Capture the 0th and 1st operands, match the 2nd operand against the
// just captured Xm register, match the 3rd operand against literal 0:
if (!matchInst(MaybeAdd, AArch64::ADDXrs, Xm, Xn, Xm, Imm(0))
return AArch64::NoRegister;
// Match the 0th operand against Xm:
if (!matchInst(MaybeBr, AArch64::BR, Xm))
return AArch64::NoRegister;
// Manually check that Xm and Xn did not match the same register:
if (Xm.get() == Xn.get())
return AArch64::NoRegister;
// Return the matched register:
return Xm.get();
Commit: 2a29faf13fa4b04f1d3ce1bd78ff56fc96746795
https://github.com/llvm/llvm-project/commit/2a29faf13fa4b04f1d3ce1bd78ff56fc96746795
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/Casting.h
Log Message:
-----------
[llvm][NFC] Simplify implementation of `isa` (#161403)
Using a fold instead of template recursion.
Commit: b554387a11215bd6e96db947b30bc008f15dd57c
https://github.com/llvm/llvm-project/commit/b554387a11215bd6e96db947b30bc008f15dd57c
Author: Julian Lettner <yln at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/tools/debugserver/source/MacOSX/MachTask.mm
Log Message:
-----------
[lldb][NFC] Fix spelling of function in log message (#161261)
Fix spelling of `GetMemoryRegionInfo` function in
log message and comment and reformat code.
Commit: d9e1084679b012b38c64d177f0d3e7cffe1ac812
https://github.com/llvm/llvm-project/commit/d9e1084679b012b38c64d177f0d3e7cffe1ac812
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Handle scalar-VF in transforms (NFC) (#161365)
Commit: e0a3b10297fff663b04a946366a67b455a75f797
https://github.com/llvm/llvm-project/commit/e0a3b10297fff663b04a946366a67b455a75f797
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/fold-logical.cpp
A flang/test/Semantics/contiguous-warn.f90
Log Message:
-----------
[flang] Implemented a warning about contiguity of compile time constant values (#161084)
Implemented `common::UsageWarning::ConstantIsContiguous` to warn about
the
following case:
```
integer, parameter :: num = 3
integer, parameter :: arr(num)=[(i, i=1,num)]
logical, parameter :: result=is_contiguous(arr(num:1:-1))
end
```
Here, while array section is discontiguous, `arr` is a compile time
constant,
so array section created at compile time will end up being contiguous
and
`result` will be "true". If `arr` wasn't a constant, the result at
runtime
would have been "false".
Commit: 254f0f07c9c1532f7a2d5d295e7957f5fd113869
https://github.com/llvm/llvm-project/commit/254f0f07c9c1532f7a2d5d295e7957f5fd113869
Author: Jeaye Wilkerson <contact at jeaye.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/lit.cfg.py
Log Message:
-----------
Fix `run_clang_repl` output when not present (#161412)
On the happy path, when `clang-repl` is present, we will invoke it in
order to determine if the host supports JIT features. That will return a
string containing "true". However, in cases where `clang-repl` is not
present or we fail to invoke it, we previously returned `False`, which
would then trigger a failure with our substring check. This PR updates
the function to return `""` instead, so the substring check is still
valid.
This is related to https://github.com/llvm/llvm-project/pull/157359,
where the original change was introduced.
Commit: ddfc54c77cc709975cb05a4b4544d08dd27da1d1
https://github.com/llvm/llvm-project/commit/ddfc54c77cc709975cb05a4b4544d08dd27da1d1
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Evaluate/constant.cpp
Log Message:
-----------
[flang] Add #include to fix MSVC build (#161415)
flang/lib/Evaluate/constant.cpp apparently needs this #include for MSVC
builds but somehow not for others.
Commit: 44a15812c9d808ee0bb4fd789721c13b09cc4d95
https://github.com/llvm/llvm-project/commit/44a15812c9d808ee0bb4fd789721c13b09cc4d95
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
Log Message:
-----------
[NFC] Remove trailing whitespaces from `clang/include/clang/Basic/Attr.td`
Commit: 22ebee7ffba69bcfcf467049a9527dafb650ca29
https://github.com/llvm/llvm-project/commit/22ebee7ffba69bcfcf467049a9527dafb650ca29
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/early-exit-runtime-checks.ll
Log Message:
-----------
[LAA] Fix picking context instr in evaluatePtrAddRec for multiple preds.
A loop may have more than one predecessor out of the loop. In that case,
just pick the first non-phi instruction in the loop header.
Commit: 0a5f82303b5b00623cb33fb48789c32838dfaa1d
https://github.com/llvm/llvm-project/commit/0a5f82303b5b00623cb33fb48789c32838dfaa1d
Author: Yixuan Cao <caoyixuan2019 at email.szu.edu.cn>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/asan/asan_interceptors.h
M compiler-rt/lib/asan/asan_win_static_runtime_thunk.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
A compiler-rt/test/asan/TestCases/wcscat.cpp
A compiler-rt/test/asan/TestCases/wcscpy.cpp
A compiler-rt/test/asan/TestCases/wcsncat.cpp
A compiler-rt/test/asan/TestCases/wcsncpy.cpp
Log Message:
-----------
[compiler-rt][asan] Add wcscpy/wcsncpy; enable wcscat/wcsncat on Windows (#160493)
Summary
- Add ASan interceptors for wcscpy/wcsncpy on all platforms.
- Enable wcscat/wcsncat on Windows (already enabled on POSIX via
sanitizer_common).
Motivation
- Use of wchar string APIs is common on Windows; improve parity with
char* string checks.
Changes
- Implement wcscpy/wcsncpy in asan_interceptors.cpp; check overlap and
mark read/write ranges in bytes.
- wcsncpy: compute write size in bytes (size * sizeof(wchar_t)) to avoid
missed overflows when sizeof(wchar_t) != 1.
- Use MaybeRealWcsnlen when available to bound reads.
- Register Windows static thunk for wcscpy/wcsncpy/wcscat/wcsncat; rely
on sanitizer_common interceptors for wcscat/wcsncat.
- Tests: add wcscpy/wcsncpy/wcscat/wcsncat; flush stdout before crash;
use resilient FileCheck patterns (reuse [[ADDR]], wildcard for function
suffixes and paths, flexible line numbers).
Testing
- AArch64 Linux: new tests pass with check-asan locally.
Follow-up to and based on prior work in PR #90909 (author: branh,
Microsoft); builds on that work and addresses review feedback. Thanks!
---------
Signed-off-by: Yixuan Cao <caoyixuan2019 at email.szu.edu.cn>
Commit: 3a47ab18effe44d8323b7559ac3dd51860668731
https://github.com/llvm/llvm-project/commit/3a47ab18effe44d8323b7559ac3dd51860668731
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang-tools-extra/test/clang-doc/long-name.cpp
Log Message:
-----------
[clang-doc] Suppress long-name test on windows (#161424)
This seems to have broken some buildbots for a long time, so just
suppress it for now until we determine how/why.
Commit: 4648d8af10a238c5da563cbca56b4dea511a251d
https://github.com/llvm/llvm-project/commit/4648d8af10a238c5da563cbca56b4dea511a251d
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/constant.cpp
M flang/lib/Evaluate/tools.cpp
Log Message:
-----------
[flang] Attempt to work around MSVC build problem (#161426)
Move a function that seems to be running into an MSVC problem from the
source file where I created it to another one (tools.cpp) that is
already known to be able to access the semantics::Scope type.
Commit: 8ff9ea831033833a21966502a07f3eb9dfabdb88
https://github.com/llvm/llvm-project/commit/8ff9ea831033833a21966502a07f3eb9dfabdb88
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/test/Examples/standalone/lit.local.cfg
M mlir/test/Examples/standalone/test.wheel.toy
Log Message:
-----------
[MLIR][Standalone] gate wheel build behind MLIR_ENABLE_BINDINGS_PYTHON=ON (#161427)
If MLIR_ENABLE_BINDINGS_PYTHON=ON then
[StandalonePythonModules](https://github.com/llvm/llvm-project/blob/main/mlir/examples/standalone/pyproject.toml#L38)
isn't a valid target.
Commit: cc4d1407df451128d05ff1de29b4137d51773ef7
https://github.com/llvm/llvm-project/commit/cc4d1407df451128d05ff1de29b4137d51773ef7
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
Log Message:
-----------
[AMDGPU] Introduce and use NotUseRealTrue16Insts. NFC. (#161373)
This removes ~2000 lines from both AMDGPUGenDAGISel.inc and
AMDGPUGenGlobalISel.inc.
Commit: b20b94f1e96f5c80c1bcb99d755e0a5027a3da75
https://github.com/llvm/llvm-project/commit/b20b94f1e96f5c80c1bcb99d755e0a5027a3da75
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
Log Message:
-----------
[OpenACC][CIR] Fix transform inclusive scan init parameter (#161428)
This fixes macos build, where otherwise the compilation yields an error: `no viable conversion from 'bool' to 'typename iterator_traits<const QualType *>::value_type`
Commit: 2873ae29185df7b9041a34c466de1156f17685e2
https://github.com/llvm/llvm-project/commit/2873ae29185df7b9041a34c466de1156f17685e2
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
Log Message:
-----------
[LAA] Add tests for using inbounds flags only used in predicated blocks.
Test for https://github.com/llvm/llvm-project/issues/160912.
Commit: d6316db7ea367b0ab01e4885e087c95cd3c3d11f
https://github.com/llvm/llvm-project/commit/d6316db7ea367b0ab01e4885e087c95cd3c3d11f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
Revert "[VPlan] Compute cost of more replicating loads/stores in ::computeCost. (#160053)"
This reverts commit b4be7ecaf06bfcb4aa8d47c4fda1eed9bbe4ae77.
See https://github.com/llvm/llvm-project/issues/161404 for a crash
exposed by the change. Revert while I investigate.
Commit: 9af2686658388134d95504bc1e94fa51850b977f
https://github.com/llvm/llvm-project/commit/9af2686658388134d95504bc1e94fa51850b977f
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
A clang/lib/CIR/CodeGen/CIRGenDeclCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGen/global-init.cpp
Log Message:
-----------
[CIR] Upstream support for generating global ctor regions (#161298)
This adds support for handling global variables with non-trivial
constructors. The constructor call is emitted in CIR as a 'ctor' region
associated with the global definition. This form of global definition
cannot be lowered to LLVM IR yet.
A later change will add support in LoweringPrepare to move the ctor code
into a __cxx_global_var_init() function and add that function to the
list of global global ctors, but for now we must stop at the initial CIR
generation.
Commit: b71db6a6be9245e81c89873d5a074b7b9faa9f88
https://github.com/llvm/llvm-project/commit/b71db6a6be9245e81c89873d5a074b7b9faa9f88
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A clang/include/clang/AST/HLSLResource.h
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Sema/SemaHLSL.cpp
Log Message:
-----------
[HLSL][NFC] Add helper struct to simplify dealing with resource binding attributes (#161254)
Add new `ResourceBindingAttrs` struct that holds resource binding attributes `HLSLResourceBindingAttr` and `HLSLVkBindingAttr` and provides helper methods to simplify dealing with resource bindings. This code is placed in the AST library to be shared between Sema and CodeGen.
This change has been done in preparation of a third binding attribute coming soon to represent `[[vk::counter_binding()]]`. This new attribute and more helper member functions will be added to `ResourceBindingAttrs` and will be used in both Sema and in CodeGen to implement resource counter initialization.
Commit: 155e50aa468613b74ff0625de085ebfb66107f95
https://github.com/llvm/llvm-project/commit/155e50aa468613b74ff0625de085ebfb66107f95
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/constant.cpp
M flang/lib/Evaluate/tools.cpp
Log Message:
-----------
[flang] Add missing #include for MSVC (#161437)
I moved a function to Evaluate/tools.cpp in an attempt to dodge some
MSVC compiler issue but didn't add an include directive for
Evaluate/tools.h to Evaluate/constant.cpp.
Commit: c3e12b6b65a2dbd1ce2a680de370ae439261e6f6
https://github.com/llvm/llvm-project/commit/c3e12b6b65a2dbd1ce2a680de370ae439261e6f6
Author: CatherineMoore <catmoore at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
[OpenMP] Update 6.1 implementation status. (#161449)
@jhuber6: Please review
Commit: f9e390783d735d641a47c824f69c66c33acedefe
https://github.com/llvm/llvm-project/commit/f9e390783d735d641a47c824f69c66c33acedefe
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/IR/AsmWriter.cpp
Log Message:
-----------
[NFC][LLVM] Use ListSeparator in AsmWriter (#161422)
Use `ListSeparator` instead of manual code when generating comma
separated lists. Also replace `FieldSeparator` with `ListSeparator` as
they both provide identical functionality.
Commit: 19dc75bf5936cdd087b6c3605755cf7941bc1325
https://github.com/llvm/llvm-project/commit/19dc75bf5936cdd087b6c3605755cf7941bc1325
Author: Florian Mayer <fmayer at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Transforms/IndVarSimplify/X86/overflow-intrinsics.ll
Log Message:
-----------
[NFC] [IndVarSimplify] add overflowing tests (#159877)
Also use UTC for test instead.
Commit: a9b47b852b88389c6167a3994c1913877fdff8ef
https://github.com/llvm/llvm-project/commit/a9b47b852b88389c6167a3994c1913877fdff8ef
Author: David Salinas <dsalinas at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Object/OffloadBundle.cpp
Log Message:
-----------
Fix memory leak in Offloading API (#161430)
Fix or the failing Sanitizer buildbots from PR:
https://github.com/llvm/llvm-project/pull/143342
Commit: cf2e7a1180cd8b8a1261c710f66888be55a34a9e
https://github.com/llvm/llvm-project/commit/cf2e7a1180cd8b8a1261c710f66888be55a34a9e
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/CodingStandards.rst
Log Message:
-----------
[CodingStandard] Require Unix line endings for all files (#161228)
Require all files to use Unix line endings, formalizing an already
followed convention.
Commit: 7d16523783cd5529ef715b28bcffadae85534f1d
https://github.com/llvm/llvm-project/commit/7d16523783cd5529ef715b28bcffadae85534f1d
Author: Jon Chesterfield <jon at spectralcompute.co.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/lower-module-lds-precise-allocate-to-module-struct.ll
Log Message:
-----------
[AMDGPU] Precommit test for 160181
Commit: f99d79292c6e1eca5d00ca8bfa6e74a9f45b7c7f
https://github.com/llvm/llvm-project/commit/f99d79292c6e1eca5d00ca8bfa6e74a9f45b7c7f
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm][mustache] Fix failing StandaloneIndentation test (#159192)
When rendering partials, we need to use an indentation stream,
but when part of the partial is a unescaped sequence, we cannot
indent those. To address this, we build a common MustacheStream
interface for all the output streams to use. This allows us to
further customize the AddIndentationStream implementation
and opt it out of indenting the UnescapeSequence.
Commit: 698e8d92d36fd4fa6ec27ab550b169a4936e3c8b
https://github.com/llvm/llvm-project/commit/698e8d92d36fd4fa6ec27ab550b169a4936e3c8b
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Simplify debug logging (#159193)
The existing logging was inconsistent, and we logged too many things.
This PR introduces a more principled schema, and eliminates many,
redundant log lines.
Commit: 973de4c4c1f50b078f7b7ee0ce572b7d1c351dad
https://github.com/llvm/llvm-project/commit/973de4c4c1f50b078f7b7ee0ce572b7d1c351dad
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
Log Message:
-----------
[JITLink][MachO] Use Triple::isArm64e consistently.
Commit: 8cc635df6622bae65b26d94f1bbf069a14e29336
https://github.com/llvm/llvm-project/commit/8cc635df6622bae65b26d94f1bbf069a14e29336
Author: ronlieb <ron.lieberman at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Object/OffloadBundle.cpp
Log Message:
-----------
Revert "Fix memory leak in Offloading API" (#161465)
Reverts llvm/llvm-project#161430
Commit: e74805cdf6d86623bf9c075130462a32298d99ce
https://github.com/llvm/llvm-project/commit/e74805cdf6d86623bf9c075130462a32298d99ce
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/test/Driver/riscv-cpus.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Remove Zicntr from sifive-p450/p470/p670. (#161444)
These cores don't implement the `time` CSR. They require SBI to trap and
emulate it which is allowed by RVA20U.
Commit: dd83e9d9ac490f12100231d5cf11d947f03ecc25
https://github.com/llvm/llvm-project/commit/dd83e9d9ac490f12100231d5cf11d947f03ecc25
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
Log Message:
-----------
[RISCV] Rename BFloatVectors -> BF16Vectors in tablegen. NFC (#161469)
Part of this rename is taken from #161158, but applies it more
consistently to more variables.
I think using BF16 makes it easier to not confuse BFloat and Float when
reading.
Commit: f680ec01c8c9fd546b08caf582d278d403af5530
https://github.com/llvm/llvm-project/commit/f680ec01c8c9fd546b08caf582d278d403af5530
Author: Shunsuke Watanabe <watanabe.shu-06 at fujitsu.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/Driver/CommonArgs.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/docs/ComplexOperations.md
M flang/docs/FlangDriver.md
M flang/test/Driver/complex-range.f90
Log Message:
-----------
[flang][driver] Accelerate complex division when `-ffast-math` is specified (#159689)
This patch accelerates complex division by passing
`-complex-range=basic` to the frontend when the `-ffast-math` option is
specified. This behavior is the same as `-fcomplex-arithmetic=basic`. A
warning is issued if a different value is specified for
`-fcomplex-arithmetic=`. The warning conditions will be unified with
clang.
Commit: 7fff93ff84981252ef89f12bea9db6be0926ce16
https://github.com/llvm/llvm-project/commit/7fff93ff84981252ef89f12bea9db6be0926ce16
Author: Un1q32 <joey.t.reinhart at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/test/CodeGen/ARM/inline-asm-clobber.ll
Log Message:
-----------
Reserve R9 on armv6 iOS 2.x (#150835)
The iOS 2.x ABI had R9 as a reserved register, 3.0 made it available,
but support for the 2.x ABI was never added to LLVM. We only use the 2.x
ABI on armv6 since before 3.0 armv6 was the only architecture supported
by iOS.
Commit: 0ee563a09dc36d6b685c73ab59056f325def1e53
https://github.com/llvm/llvm-project/commit/0ee563a09dc36d6b685c73ab59056f325def1e53
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/AST/HLSLResource.h
Log Message:
-----------
[HLSL][NFC] Add missing includes for standalone header compilation (#161473)
HLSLResource.h added by #161254 builds in the context of a .cpp file
(e.g. CGHLSLRuntime.cpp) but not when doing a header compilation, e.g.:
```
clang/include/clang/AST/Attrs.inc:12:45: error: unknown type name 'raw_ostream'; did you mean 'clang::raw_ostream'?
12 | static inline void DelimitAttributeArgument(raw_ostream& OS, bool& IsFirst) {
```
Commit: 9663745c9e0d7d4ad92cfa6f7feffcc48465271a
https://github.com/llvm/llvm-project/commit/9663745c9e0d7d4ad92cfa6f7feffcc48465271a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[Support] Fix warnings
This patch fixes:
llvm/lib/Support/Mustache.cpp:332:20: error: unused function
'tagKindToString' [-Werror,-Wunused-function]
llvm/lib/Support/Mustache.cpp:344:20: error: unused function
'jsonKindToString' [-Werror,-Wunused-function]
Commit: 752d2e8eec5b8b1f8518567b84b140623fba1af0
https://github.com/llvm/llvm-project/commit/752d2e8eec5b8b1f8518567b84b140623fba1af0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/SmallVector.h
Log Message:
-----------
[ADT] Consolidate uninitialized_copy in SmallVector (NFC) (#161043)
This patch consolidates two implementations of uninitialized_copy into
a single template function.
Commit: 82dc67d778f7d8e874df7076b0e0365cec3a81ad
https://github.com/llvm/llvm-project/commit/82dc67d778f7d8e874df7076b0e0365cec3a81ad
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Analysis/LazyValueInfo.cpp
A llvm/test/Transforms/CorrelatedValuePropagation/pr161367.ll
Log Message:
-----------
[LVI] Handle constant value lattice in `getEdgeValueLocal` (#161410)
Closes https://github.com/llvm/llvm-project/issues/161367.
In https://github.com/llvm/llvm-project/pull/157614, we ignored cases
where OpLatticeVal might be a constant or notconstant. Directly
returning the result causes a type mismatch. I apologize for the
oversight in the previous code review.
This patch applies the cast op to constants. For notconstant value
lattices, I'd leave it as a todo (it is similar to the constant case,
except for trunc without nsw/nuw).
Commit: de8ba8b1a2f25aee91092c18a24f252071fdb2be
https://github.com/llvm/llvm-project/commit/de8ba8b1a2f25aee91092c18a24f252071fdb2be
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/Metadata.h
M llvm/lib/Analysis/CaptureTracking.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
A llvm/test/Verifier/captures-metadata.ll
Log Message:
-----------
[IR] Introduce !captures metadata (#160913)
This introduces `!captures` metadata on stores, which looks like this:
```
store ptr %x, ptr %y, !captures !{!"address", !"read_provenance"}
```
The semantics are the same as replacing the store with a call like this:
```
call void @llvm.store(ptr captures(address, read_provenance) %x, ptr %y)
```
This metadata is intended for annotation by frontends -- it's not
something we can feasibly infer at this point, as it would require
analyzing uses of the pointer stored in memory.
The motivating use case for this is Rust's `println!()` machinery, which
involves storing a reference to the value inside a structure. This means
that printing code (including conditional debugging code), can inhibit
optimizations because the pointer escapes. With the new metadata we can
annotate this as a read-only capture, which has less impact on
optimizations.
Commit: 80a656f4b00921a426a0a782effe19a60346aa32
https://github.com/llvm/llvm-project/commit/80a656f4b00921a426a0a782effe19a60346aa32
Author: quic_hchandel <hchandel at qti.qualcomm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Add commutative support for Qualcomm uC Xqcics extension (#161328)
This is a follow-up to #160653 doing similar changes for Xqcics.
Commit: 9312b14474fccc61a8d3e8034bb34122877a50f9
https://github.com/llvm/llvm-project/commit/9312b14474fccc61a8d3e8034bb34122877a50f9
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/unittests/Optimizer/Builder/FIRBuilderTest.cpp
Log Message:
-----------
[flang] add helper to create descriptor with new base address (#161347)
There is currently no helper to create a descriptor for a copy of a
Fortran entity based on the descriptor of the original entity and the
base address of the copy (most places that are doing this currently are
also doing allocation of the copy at the same time or using the
runtime).
Add a helper for this with a unit test.
Commit: 82fd139bdb797c7906ff2f45c4405bda197315c9
https://github.com/llvm/llvm-project/commit/82fd139bdb797c7906ff2f45c4405bda197315c9
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Expression/IRExecutionUnit.cpp
A lldb/test/API/lang/cpp/function-call-from-object-file/Makefile
A lldb/test/API/lang/cpp/function-call-from-object-file/TestFunctionCallFromObjectFile.py
A lldb/test/API/lang/cpp/function-call-from-object-file/common.h
A lldb/test/API/lang/cpp/function-call-from-object-file/lib1.cpp
A lldb/test/API/lang/cpp/function-call-from-object-file/lib2.cpp
A lldb/test/API/lang/cpp/function-call-from-object-file/main.cpp
Log Message:
-----------
[lldb][IRExecutionUnit] Return error on failure to resolve function address (#161363)
Starting with https://github.com/llvm/llvm-project/pull/148877 we
started encoding the module ID of the function DIE we are currently
parsing into its `AsmLabel` in the AST. When the JIT asks LLDB to
resolve our special mangled name, we would locate the module and resolve
the function/symbol we found in it.
If we are debugging with a `SymbolFileDWARFDebugMap`, the module ID we
encode is that of the `.o` file that is tracked by the debug-map. To
resolve the address of the DIE in that `.o` file, we have to ask
`SymbolFileDWARFDebugMap::LinkOSOAddress` to turn the address of the
`.o` DIE into a real address in the linked executable. This will only
work if the `.o` address was actually tracked by the debug-map. However,
if the function definition appears in multiple `.o` files (which is the
case for functions defined in headers), the linker will most likely
de-deuplicate that definition. So most `.o`'s definition DIEs for that
function won't have a contribution in the debug-map, and thus we fail to
resolve the address.
When debugging Clang on Darwin, e.g., you'd see:
```
(lldb) expr CXXDecl->getName()
error: Couldn't look up symbols:
$__lldb_func::0x1:0x4000d000002359da:_ZNK5clang9NamedDecl7getNameEv
Hint: The expression tried to call a function that is not present in the target, perhaps because it was optimized out by the compiler.
```
unless you were stopped in the `.o` file whose definition of `getName`
made it into the final executable.
The fix here is to error out if we fail to resolve the address, causing
us to fall back on the old flow which did a lookup by mangled name,
which the `SymbolFileDWARFDebugMap` will handle correctly.
An alternative fix to this would be to encode the
`SymbolFileDWARFDebugMap`'s module-id. And implement
`SymbolFileDWARFDebugMap::ResolveFunctionCallLabel` by doing a mangled
name lookup. The proposed approach doesn't stop us from implementing
that, so we could choose to do it in a follow-up.
rdar://161393045
Commit: d9da0dd1583fc4a10e05a934c245c8fe8cc1fad5
https://github.com/llvm/llvm-project/commit/d9da0dd1583fc4a10e05a934c245c8fe8cc1fad5
Author: Hendrik_Klug <43926224+Jimmy2027 at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/python/mlir/dialects/transform/structured.py
A mlir/test/Dialect/Transform/test-promote-tensors.mlir
Log Message:
-----------
[mlir][transform] Add PromoteTensorOp (#158318)
Transform op to request a tensor value to live in a specific memory
space after bufferization
Co-authored-by: Nicolas Vasilache <Nico.Vasilache at amd.com>
Co-authored-by: Alex Zinenko <ftynse at gmail.com>
Commit: 891b466b6c3ee78e0d758927842604b2e5e8ad07
https://github.com/llvm/llvm-project/commit/891b466b6c3ee78e0d758927842604b2e5e8ad07
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/LoongArch/vararg-loongarch64.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64.ll
M llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64el.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64.ll
M llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64le.ll
Log Message:
-----------
[MemorySanitizer] Generate check lines for some vararg tests (NFC)
Use UTC_ARGS: --disable to skip the tests with many arguments.
Commit: 041dc4d57cc1ad8b7e463ae441e8a74b4f287fcf
https://github.com/llvm/llvm-project/commit/041dc4d57cc1ad8b7e463ae441e8a74b4f287fcf
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Integration/debug-complex-1.f90
M flang/test/Integration/debug-local-var-2.f90
M flang/test/Transforms/debug-complex-1.fir
M flang/test/Transforms/debug-derived-type-1.fir
M flang/test/Transforms/debug-fn-info.fir
M flang/test/Transforms/debug-local-var.fir
M flang/test/Transforms/debug-ref-type.fir
M flang/test/Transforms/debug-tuple-type.fir
M flang/test/Transforms/debug-vector-type.fir
Log Message:
-----------
[flang][debug] Change type*N to type(kind=N). (#161432)
It was discussed in https://github.com/llvm/llvm-project/pull/161361.
Commit: ba6786ca0a732d9d3aa0fe9ec054e8b7d782daad
https://github.com/llvm/llvm-project/commit/ba6786ca0a732d9d3aa0fe9ec054e8b7d782daad
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/msan_kernel_basic.ll
Log Message:
-----------
[MemorySanitizer] Generate test checks for kmsan test (NFC)
Commit: ce4f657d2f300addf6180bb177424fb73a6ed6f7
https://github.com/llvm/llvm-project/commit/ce4f657d2f300addf6180bb177424fb73a6ed6f7
Author: mikael-nilsson-arm <mikael.nilsson at arm.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
A llvm/test/Transforms/InstCombine/in-freeze-phi.ll
Log Message:
-----------
[InstCombine] Opt phi(freeze(undef), C) -> phi(C, C) (#161181)
Try to choose a value for freeze that enables the PHI to be replaced
with its input constants if they are equal.
Commit: c1a24f51f7b5b74209f61f8598b9acbf57bea937
https://github.com/llvm/llvm-project/commit/c1a24f51f7b5b74209f61f8598b9acbf57bea937
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/exp10m1f16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp10m1f16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp10m1f16.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor exp10m1f16 implementation to header-only in src/__support/math folder. (#161119)
Part of #147386
in preparation for: https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: c0640996e12745cfbfcfa92f897c394d17b558eb
https://github.com/llvm/llvm-project/commit/c0640996e12745cfbfcfa92f897c394d17b558eb
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/aapcs-volatile-bitfields.c
M clang/test/CIR/CodeGen/array-ctor.cpp
M clang/test/CIR/CodeGen/array-dtor.cpp
M clang/test/CIR/CodeGen/array.cpp
M clang/test/CIR/CodeGen/assign-operator.cpp
M clang/test/CIR/CodeGen/basic.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/binassign.c
M clang/test/CIR/CodeGen/binop.c
M clang/test/CIR/CodeGen/binop.cpp
M clang/test/CIR/CodeGen/builtin_bit.cpp
M clang/test/CIR/CodeGen/builtin_call.cpp
M clang/test/CIR/CodeGen/builtin_printf.cpp
M clang/test/CIR/CodeGen/cast.cpp
M clang/test/CIR/CodeGen/cmp.cpp
M clang/test/CIR/CodeGen/comma.c
M clang/test/CIR/CodeGen/complex-cast.cpp
M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
M clang/test/CIR/CodeGen/complex-mul-div.cpp
M clang/test/CIR/CodeGen/complex-unary.cpp
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/cxx-default-init.cpp
M clang/test/CIR/CodeGen/delegating-ctor.cpp
M clang/test/CIR/CodeGen/delete.cpp
M clang/test/CIR/CodeGen/destructors.cpp
M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
M clang/test/CIR/CodeGen/if.cpp
M clang/test/CIR/CodeGen/int-to-bool.cpp
M clang/test/CIR/CodeGen/loop.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-prototype.c
M clang/test/CIR/CodeGen/opaque.c
M clang/test/CIR/CodeGen/opaque.cpp
M clang/test/CIR/CodeGen/pointers.cpp
M clang/test/CIR/CodeGen/ternary.cpp
M clang/test/CIR/CodeGen/unary.cpp
M clang/test/CIR/CodeGen/union.c
M clang/test/CIR/CodeGen/var_arg.c
M clang/test/CIR/CodeGen/variable-decomposition.cpp
M clang/test/CIR/CodeGen/vbase.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
M clang/test/CIR/CodeGen/vtt.cpp
M clang/test/CIR/CodeGenOpenACC/combined-copy.c
M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/IR/alloca.cir
M clang/test/CIR/IR/binassign.cir
M clang/test/CIR/IR/cast.cir
M clang/test/CIR/IR/cmp.cir
M clang/test/CIR/IR/vtable-addrpt.cir
M clang/test/CIR/IR/vtt-addrpoint.cir
M clang/test/CIR/Lowering/cast.cir
M clang/test/CIR/Lowering/if.cir
M clang/test/CIR/Lowering/vtt-addrpoint.cir
M clang/test/CIR/Transforms/canonicalize.cir
M clang/test/CIR/Transforms/if.cir
M clang/test/CIR/Transforms/switch.cir
Log Message:
-----------
[CIR] Refactor cir.cast to use uniform assembly form w/o parens, commas (#161431)
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1922
Commit: dd39ed4732002cffc1d6cf80aea9caaa7eb074f1
https://github.com/llvm/llvm-project/commit/dd39ed4732002cffc1d6cf80aea9caaa7eb074f1
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/test/Transforms/GlobalOpt/fastcc.ll
Log Message:
-----------
[GlobalOpt] Check if users are CallBase when changing CC (#161399)
Fixes https://github.com/llvm/llvm-project/issues/156656
`hasChangeableCCImpl` guarantees the address of the function is not
taken, but it ignores assume-like calls.
This patch ignores assume-like calls when changing CC.
Commit: 542ea47aa109dcff1289445a8e6ac75a3d96ea16
https://github.com/llvm/llvm-project/commit/542ea47aa109dcff1289445a8e6ac75a3d96ea16
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU][InsertWaitCnts] Refactor some helper functions, NFC (#161160)
- Remove one-line wrappers around a simple function call when they're
only used once or twice.
- Move very generic helpers into SIInstrInfo
- Delete unused functions
The goal is simply to reduce the noise in SIInsertWaitCnts without
hiding functionality. I focused on moving trivial helpers, or helpers
with very descriptive/verbose names (so it doesn't hide too much logic
away from the pass), and that have some reusability potential.
I'm also trying to make the code style more consistent. It doesn't make
sense to see a function call `TII->isXXX` then suddenly call a random
`isY` method that just wraps around `TII->isY`.
The context of this work is that I'm trying to learn how this pass
works, and while going through the code I noticed some little things
here and there that I thought would be good to fix.
Commit: f16f8a1009f423a4f0ed04021dd2af15ef09fc82
https://github.com/llvm/llvm-project/commit/f16f8a1009f423a4f0ed04021dd2af15ef09fc82
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU][SIInsertWaitCnts] De-duplicate code (NFC) (#161161)
I'm reading through the pass over and over again to try and learn how it works. I noticed some code duplication here and there while doing that.
Commit: 0d17ce9615402de91a5d1f57294bb7a7bdac5de9
https://github.com/llvm/llvm-project/commit/0d17ce9615402de91a5d1f57294bb7a7bdac5de9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
Log Message:
-----------
[DAGCombine] Support (shl %x, constant) in foldPartialReduceMLAMulOp. (#160663)
Support shifts in foldPartialReduceMLAMulOp by treating (shl %x, %c) as
(mul %x, (shl 1, %c)).
PR: https://github.com/llvm/llvm-project/pull/160663
Commit: 03d8bf565f274ed6e7ae2a97eee747caff0dca02
https://github.com/llvm/llvm-project/commit/03d8bf565f274ed6e7ae2a97eee747caff0dca02
Author: pvanhout <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU] Remove duplicate definition of isGFX12CacheInvOrWBInst
Commit: d8ebb4b63656d19fb84df6f5db5c4a5fe81082cd
https://github.com/llvm/llvm-project/commit/d8ebb4b63656d19fb84df6f5db5c4a5fe81082cd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
Log Message:
-----------
Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC. (#161496)
Commit: 60f5e7c19c0ad74d3f0b731c84506de1a6384811
https://github.com/llvm/llvm-project/commit/60f5e7c19c0ad74d3f0b731c84506de1a6384811
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/include/lldb/Core/Mangled.h
M lldb/source/Core/Mangled.cpp
Log Message:
-----------
[lldb][Mangled][NFC] Remove redundant const-qualifier on llvm::StringRef argument
Commit: e55e06a2c255dd3d03bd395128ed939422eda087
https://github.com/llvm/llvm-project/commit/e55e06a2c255dd3d03bd395128ed939422eda087
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitCnts] Remove redundant TII/TRI/MRI arguments (NFC) (#161357)
WaitCntBrackets already has a pointer to its SIInsertWaitCnt instance.
With a small change, it can directly access TII/TRI/MRI that way.
This simplifies a lot of call sites which make the code easier to
follow.
Commit: 6f18371fb663439abbb8d5c3c12f294904312b67
https://github.com/llvm/llvm-project/commit/6f18371fb663439abbb8d5c3c12f294904312b67
Author: Timur Golubovich <timur.golubovich at syntacore.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
A lldb/test/API/lang/cpp/floating-types-specialization/Makefile
A lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
A lldb/test/API/lang/cpp/floating-types-specialization/main.cpp
M lldb/test/API/lang/cpp/template-arguments/TestCppTemplateArguments.py
Log Message:
-----------
[lldb][TypeSystemClang] Added unique builtins types for __bf16 and _Float16 (#157674)
During debugging applization with __bf16 and _Float16 float types it was
discovered that lldb creates the same CompilerType for them. This can
cause an infinite recursion error, if one tries to create two struct
specializations with these types and then inherit one specialization
from another.
Commit: 8990423001cfc61bddf1c513548dfdf0486af5bf
https://github.com/llvm/llvm-project/commit/8990423001cfc61bddf1c513548dfdf0486af5bf
Author: David Rivera <davidriverg at gmail.com>
Date: 2025-10-01 (Wed, 01 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
M clang/lib/CIR/CodeGen/TargetInfo.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/address-space.c
M clang/test/CIR/IR/invalid-addrspace.cir
Log Message:
-----------
Refactor address space handling to use TargetAddressSpaceAttr and update related functionality
Compare: https://github.com/llvm/llvm-project/compare/9d568e636eab...8990423001cf
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